导入numpy库
使用语句
import numpy as np
导入numpy库
使用np.array()创建数组
np.array()语句
np.array()语句可以直接创建一维数组
array=np.array([i for i in range(10)])
得到结果
[0 1 2 3 4 5 6 7 8 9]
np.ones() np.zeros()语句
使用np.ones() np.zeros() np.ones_like() np.zeroes_like()语句可以直接创建含1或者0的一维数组
array1=np.ones(5)
array2=np.ones_like(array1)
array3=np.zeros(6)
array4=np.zeros_like(array3)
得到结果
[1. 1. 1. 1. 1.]
[1. 1. 1. 1. 1.]
[0. 0. 0. 0. 0. 0.]
[0. 0. 0. 0. 0. 0.]
其中np.ones_like() np.zeros_like()语句可以仿照已有的数组创造含1或者0的数组
创建多维数组
使用np.array() np.ones() np.ones_like() np.zeros() np.zeros_like()语句也可创建多维数组
array1=np.arange(12).reshape(2,6)
array2=np.ones_like(array1)
得到结果
[[ 0 1 2 3 4 5]
[ 6 7 8 9 10 11]]
[[1 1 1 1 1 1]
[1 1 1 1 1 1]]
数组的运算
直接将使用np.array()语句创建的数组之间进行加减乘除运算即可
数组中的数据一一对应进行计算 所以数据数量需要一致
array1=np.array([i for i in range(3)])
array2=np.ones_like(array1)
array3=np.array([i for i in range(5,10,2)])
print(array1+array2)
print(array1*array3)
得到结果
[1 2 3]
[ 0 7 18]
数组索引
基础索引与切片
array1=np.array([i for i in range(10)])
array2=array1[3]
array3=array1[2:9]
print(array2)
print(array3)
得到结果
3
[2 3 4 5 6 7 8]
与python内置语句的索引与切片相同
布尔索引
使用布尔索引即可筛选出符合条件的数据(True)
array1=np.array([i for i in range(10)])
array2=array1[array1>5]
print(array2)
得到结果
[6 7 8 9]
神奇索引
使用神奇索引即可选出多维数组指定的行或列的数据
array1=np.arange(12).reshape(3,4)
array2=array1[[1,2]]
print(array2)
得到结果
[[ 4 5 6 7]
[ 8 9 10 11]]