numpy重排,重复,操作,维度不变取,维度变化取
import numpy as np
b=np.array([[1, 2, 3],
[4, 5, 6],
[7, 8, 9]])
print(b,"\n")
c=b[[0,2,1,1],:] #编号1的行[4,5,6] 重复2次排到后面
print(c,"\n")
print(b[:,[0]],"\n") #维度保持不变
print(b[:,0]) #维度将会减1
执行后:
b为:
[[1 2 3]
[4 5 6] 源码: c=b[[0,2,1,1],: ] 该行排到后面并重复
[7 8 9]]
c为:
[[1 2 3]
[7 8 9]
[4 5 6]
[4 5 6]]
列表取维度不变 b[ : , [0] ]
[[1]
[4]
[7]]
非列表取维度减少 b[ : , 0 ]
[1 4 7]