NumPy中最重要的一个特点就是其N维数组对象,即ndarray(别名array)对象,该对象可以执行一些科学计算。
一.创建numpy数组
1.一维、二维数组
#data1=np.array([1,2,3]) #data2=np.array([[1,2,3],[4,5,6]])
2.元素值全为0、1的数组
#data3=np.zeros(3,4)) #data4=np.ones((3,4))
3.元素值全为随机数的数组
#data5=np.empty((5,2))
4.使用arange创建一个等差数列的数组
#np.arange(1,20,5)
二.转换数据类型
#ndarray对象的数据类型可以通过astype()方法进行转换 data = np,array([[1,2,3],[4,5,6]]) data.dtype #数据类型转换为float64 float_data=data.astype(np.float64) float_data.dtype
三.nbarray的索引和切片
#二维数组的索引 arr1=np.([1,2,3],[4,5,6,],[7,8,9]]) #获取索引为1的元素 arr1[1] #获取位于第0行第1列的元素 arr[0,1]
#多维数组的切片是沿着行或列的方向选取元素的,我们可以传入一个切片,也可以传入多个切片,还可以将切片与整数索引混合使用#一个切片 arr1[:2] #arr1=array([[1, 2, 3],[4, 5, 6]]) #两个切片 arr1[0:2, 0:2] #array([[1, 2],[4, 5]]) #切片与整数索引混合使用的示例 arr1[1, :2] #array([[1, 2],[4, 5]])
四.利用numpy进行数据处理
1.将条件逻辑转化为数组运算
arr_x = np.array([1, 5, 7])
arr_y = np.array([2, 6, 8])
arr_con = np.array([True, False, True])
result = np.where(arr_con, arr_x, arr_y)
2数组排序(sort())方法
arr = np.array([[6, 2, 7], [3, 6, 2],[4, 3, 2]])
arr.sort()
#array([[2, 6, 7],[2, 3, 6],[2, 3, 4]])
3.检索数组元素
all()函数用于判断整个数组中的元素的值是否全部满足条件,如果满足条件返回True,否则返回False。
#arr = np.array([[1, -2, -7],[-3, 6, 2],[-4, 3, 2]]) # arr的所有元素是否都大于0 np.all(arr > 0) False
any()函数用于判断整个数组中的元素至少有一个满足条件就返回True,否则就返回False。
#arr = np.array([[1, -2, -7],[-3, 6, 2],[-4, 3, 2]]) # arr的所有元素是否有一个大于0 np.any(arr > 0 True
4.数组唯一化
arr = np.array([12, 11, 34, 23, 12, 8, 11]) np.unique(arr)
array([ 8, 11, 12, 23, 34])



