1.安装Numpy
pip install numpy
2.基本操作
import numpy as np
# 查看数组的维度和形状
a = np.array([0,1,2,3,4,5])
a
a.ndim # 返回一个数组的维度
a.shape # 返回一个数组的形状
结果为:
array([0,1,2,3,4,5])
1
(6,)
# 更改数组的形状
b = a.reshape((3.2)) # 更改a数组的形状到二维
b
b.ndim
b.shape
结果为:
array([0,1], [2,3], [4,5])
2
(3,2)
# b的数值发生改变,a的数值也会改变
b[1][0] = 77
b
a
结果为:
array([0,1], [77,3], [4,5])
array([0,1,77,3,4,5])
# 对数组直接进行乘法
d = np.array([1,2,3,4,5])
d*2
d**2
[1,2,3,4,5]*2
结果为:
array([2,4,6,8,10)
array([1,4,9,16,25])
[1,2,3,4,5,1,2,3,4,5]
# 遍历
a[np.array(2,3,4)]
a>4 # 用布尔值的方式表示
a[a>4] # 求出a>4的数值
a[a>4] = 4 # 整理孤立点
a
a.clip(1,4) # 将数据修改到括号内的间隔范围内
a
结果为:
array([77,3,4])
array([False,False,True,False,False,True],dtype=bool)
array([77,5])
array([1,1,4,3,4,4])
# 处理不存在的值
c = np.array([1,2,np.NAN,3,4])
np.isnan(c)
c[~np.isnan(c)]
np.mean(c[~np.isnan(c)]) #求取均值
结果为:
array([False,False,True,False,False])
array([1.,2.,3.,4.])
2.5
3.NumPy和list列表
(1)NumPy的运算速度比list列表的快
(2)NumPy的灵活性不如list列表,NumPy只支持一种数据类型;list列表支持多种数据类型。
a = np.array([1,2,3])
a.dtype
结果为:
dtype('int64') # 也有可能为dtype('int32')
(3)如果的确需要使用不同的数据类型,python会强制它们使用最合理的公有的数据类型。
np.array([1, 'stringy'])
np.array([1, 'stringy', set([1,2,3])])
结果为:
array([1, 'stringy'], dtype='<U11')
array([1, 'stringy', {1,2,3}], dtype=object)