用于修改维度
已有一个一维矩阵nparr=[0 1 2 3 4 5 6 7 8 9],将其转换为2行5列的二维矩阵
arr9 = nparr.reshape(2,5) print(arr9)
[[0 1 2 3 4]
[5 6 7 8 9]]
或转换为两行均等元素的矩阵
arr9 = nparr.reshape(2,-1)
多层连用
x = np.arange(15).reshape(-1,5) print(x)
[[ 0 1 2 3 4]
[ 5 6 7 8 9]
[10 11 12 13 14]]
x1= x[1][3] print(x1)
8
以上取法不推荐,多维矩阵切片会出现错误
x2=x[1,3] print(x2)
8
p=np.arange(10) p1=p[0:3] #0-2切片 print(p) print(p1)
或
p1=p[:3] #0-2切片
[0 1 2 3 4 5 6 7 8 9]
[0 1 2]
p1=p[3:] #3-最后切片 print(p)
[3 4 5 6 7 8 9]
p1=p[:8:2] #0-7切片,步径为2 print(p1)
[0 2 4 6]
p1=p[::2] print(p1)
[0 2 4 6 8]
x=[[ 0 1 2 3 4]
[ 5 6 7 8 9]
[10 11 12 13 14]]
取前2行前3列
p3=x[0:2,0:3] print(p3)
或
p3=x[:2,:3] print(p3)
[[0 1 2]
[5 6 7]]
反置矩阵
p4=x[::-1,::-1] print(p4)
[[14 13 12 11 10]
[ 9 8 7 6 5]
[ 4 3 2 1 0]]
行列转置
p5=x.T print(p5)
[[ 0 5 10]
[ 1 6 11]
[ 2 7 12]
[ 3 8 13]
[ 4 9 14]]