Python_09_numpy内置方法

本文详细介绍NumPy库中数组的创建方法,包括使用arange和linspace生成数组,以及特殊数组如zeros、ones和随机数组的生成。此外,还介绍了数组的统计学方法,如求最大值、最小值、求和、均值、中位数、方差和标准差,以及数学方法如pi、e、sin等函数的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

- 创建数组方法

  • 方法1
array=np.arange(0,10,2) #第3个参数为步长
print(array)
print(type(array))
print(array.shape)

结果

[0 2 4 6 8]
<class 'numpy.ndarray'>
(5,)
  • 方法2
array=np.linspace(0,10,3)
#第3个参数为生成数组的个数,根据第3个参数计算步长,包含末尾
#若不想包含10,则array=np.linspace(0,10,3,endpoint=False)
print(array)

结果

[ 0.  5. 10.]

- 特殊数组生成方法

#empty
#不要使用empty生成矩阵,因为这些值不确定
array=np.empty((3,3))
print(array)
#zeros
array=np.zeros((3,3))
print(array)
#ones
array=np.ones((3,3))
print(array)
#eye-单位矩阵
array=np.eye((3))
print(array)
#随机数组
#np.random
array=np.random.random(3)
print(array)
array=np.random.random((3,3))
print(array)
#标准正态分布
array=np.random.randn(3,3)
print(array

结果

[[1. 0. 0.]
 [0. 1. 0.]
 [0. 0. 1.]]
[[0. 0. 0.]
 [0. 0. 0.]
 [0. 0. 0.]]
[[1. 1. 1.]
 [1. 1. 1.]
 [1. 1. 1.]]
[[1. 0. 0.]
 [0. 1. 0.]
 [0. 0. 1.]]
[0.81243568 0.80049374 0.88590814]
[[0.96833161 0.62156136 0.97778755]
 [0.58508969 0.95868783 0.54912343]
 [0.67625543 0.42730804 0.62890241]]
[[ 1.09668361  0.33349527  0.9635504 ]
 [ 1.40231994  0.16818112 -0.1195861 ]
 [-0.07497057  0.29868512 -0.75542806]]

- 数组统计学方法

  • 比较
array=np.array([1,2,3,4,5,6,7,8,9]).reshape(3,3)
print(array)
a=np.amax(array)#所有元素的最值
print(a)
a=np.amin(array)
print(a)
a=np.amin(array,axis=0)#沿纵轴比较
print(a)
a=np.amin(array,axis=1)#沿横轴比较
print(a)

结果

[[1 2 3]
 [4 5 6]
 [7 8 9]]
9
1
[1 2 3]
[1 4 7]
  • 求和
array=np.array([1,2,3,4,5,6,7,8,9]).reshape(3,3)
print(array)
a=np.sum(array)
print(a)
a=np.sum(array,axis=0)#沿纵轴求和
print(a)
a=np.sum(array,axis=1)#沿横轴求和
print(a)

结果

[[1 2 3]
 [4 5 6]
 [7 8 9]]
45
[12 15 18]
[ 6 15 24]
  • 统计数据
###
np.mean #求均值
np.median #求中位数
np.average #带权重求平均值
np.var #方差
np.std #标准差,就是方差的开方
###
a=np.mean(array)
print(a)
a=np.average(array)
print(a)
array1=np.array([1,2,3,4,5,6])
array2=np.array([6,5,4,3,2,1])
a=np.average(array1,weights=array2)
#等效于 np.sum(array1*array2)/np.sum(array2)
print(a)

结果

5.0
5.0
2.6666666666666665
  • 数学方法
np.pi
np.e
np.sin
np.sin(np.linspace(0,np.pi,100)) #生成一个正弦数列
np.around #对数列每个值进行四舍五入
np.floor #向下取整
np.ceil #向上取整
np.dot #矩阵点积
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值