如何将数组的列拆分为三个数组x,y,z,而无需单独手动编写每个[:,0],[:,1],[:,2]
?
# Create example np array
import numpy as np
data = np.array([[1,2,3],[4,5,6],[7,8,9]])
现在data
是
[[1 2 3]
[4 5 6]
[7 8 9]]
我想做什么:
x, y, z = data[:,0], data[:,1], data[:,2] ## Help me here!
print(x)
通缉输出:
array([1, 4, 7])
答案 0 :(得分:9)
转置,然后解压缩:
>>> x, y, z = data.T
>>> x
array([1, 4, 7])
答案 1 :(得分:3)
您无需对其进行切片。
>>> import numpy as np
>>> data = np.array([[1,2,3],[4,5,6],[7,8,9]])
>>> x, y, z = data.T
>>> x
array([1, 4, 7])
>>> y
array([2, 5, 8])
>>> z
array([3, 6, 9])