numpy学习二
import numpy as np
a=np.arange(2,14).reshape((3,4))
a
array([[ 2, 3, 4, 5],
[ 6, 7, 8, 9],
[10, 11, 12, 13]])
#最小值的下标
np.argmin(a)
0
#最大值索引
np.argmax(a)
11
#平均值
np.mean(a)
7.5
#中位数
np.median(a)
7.5
#累加
np.cumsum(a) #有点类似斐波那契
array([ 2, 5, 9, 14, 20, 27, 35, 44, 54, 65, 77, 90], dtype=int32)
#累差
np.diff(a)
array([[1, 1, 1],
[1, 1, 1],
[1, 1, 1]])
#非零数
np.nonzero(a)
#返回两个数组,第一个数组的内容是非零元素的行,第二个数组内容是非零元素的列
(array([0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2], dtype=int64),
array([0, 1, 2, 3, 0, 1, 2, 3, 0, 1, 2, 3], dtype=int64))
a!=0
array([[ True, True, True, True],
[ True, True, True, True],
[ True, True, True, True]])
#排序
np.sort(a)
array([[ 2, 3, 4, 5],
[ 6, 7, 8, 9],
[10, 11, 12, 13]])
#矩阵转置
np.transpose(a)
array([[ 2, 6, 10],
[ 3, 7, 11],
[ 4, 8, 12],
[ 5, 9, 13]])
#或者
a.T
array([[ 2, 6, 10],
[ 3, 7, 11],
[ 4, 8, 12],
[ 5, 9, 13]])
#(矩阵,下届,上届) 使矩阵中小于下届的值变成下届,大于上届的值变成上届
np.clip(a,5,9)
array([[5, 5, 5, 5],
[6, 7, 8, 9],
[9, 9, 9, 9]])
#每行计算一次平均值
np.mean(a,axis=1)
array([ 3.5, 7.5, 11.5])
#输出矩阵第二行
a[1]
array([6, 7, 8, 9])
a[:,1]#输出第二列
array([ 3, 7, 11])
#将矩阵a变成一维的
a.flatten()
array([ 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13])
#同上
for i in a.flat:
print(i)
2
3
4
5
6
7
8
9
10
11
12
13
转载:https://blog.csdn.net/qq_42696455/article/details/104418504
查看评论