天天看点

numpy 拼接_numpy回顾小结(二)

numpy 拼接_numpy回顾小结(二)

上一篇:

橘猫吃不胖:numpy回顾小结(一)​zhuanlan.zhihu.com

numpy 拼接_numpy回顾小结(二)

函数

numpy中,定义了很多的函数,常用的数学函数,比如:

np.sin(a)
np.sqrt(a)
           
numpy 拼接_numpy回顾小结(二)

聚合函数

除了数学函数,还有聚合函数

numpy 拼接_numpy回顾小结(二)

数组的索引机制

数组的每个元素都有索引,索引分为正向索引和负向索引

b = np.arange(15,21)
b[0]
b[1]
b[-1]
b[-2]
           
numpy 拼接_numpy回顾小结(二)

切片

切片,是指抽取数组的一部分元素,生成新的数组

切片操作也是基于索引

c = np.arange(10,16)
c[2:4]
c[::3]
           
numpy 拼接_numpy回顾小结(二)

这里,相当于传入3个参数,第3个可以省略,默认是1

第一个省略,默认从0开始;第二个省略,默认是最大索引

numpy 拼接_numpy回顾小结(二)

数组遍历

直接使用for循环遍历:

for i in c:
    print('i:',i)
           
numpy 拼接_numpy回顾小结(二)

还可以使用

numpy.apply_along_axis

( func1d, axis, arr, *args, **kwargs)

Apply a function to 1-D slices along the given axis.

axis=0,表示按列进行处理;axis=1,表示按照行进行处理

可以按照某个轴,对每个元素进行处理

np.apply_along_axis(lambda x : x+1, axis=0, arr=c)
           
numpy 拼接_numpy回顾小结(二)
a = np.arange(10,19).reshape((3,3))
np.apply_along_axis(np.sum, axis=0, arr=a)
np.apply_along_axis(np.sum, axis=1, arr=a)
           
numpy 拼接_numpy回顾小结(二)

布尔数组

在对数组进行筛选或者选取元素的时候,前面说过切片,索引,还可以使用布尔数组

a
a>14
a[a>14]
           
numpy 拼接_numpy回顾小结(二)

数组连接

将多个数组进行连接,按行或者按列进行拼接

a = np.zeros((3,3))
b = np.ones((3,3))

np.vstack((a,b))
np.hstack((a,b))
           
numpy 拼接_numpy回顾小结(二)

多个数组之间的操作,使用column_stack()、row_stack()

数组切分

有拼接,也就有分割

a = np.arange(16).reshape((4,4))

np.hsplit(a,2)
np.vsplit(a,2)
           
numpy 拼接_numpy回顾小结(二)