2 回答
TA贡献1799条经验 获得超6个赞
您可以像这样使用 numpy hsplit() 函数:
>>> a=np.array([[0, 0, 0],
... [1, 1, 1]])
>>> b,c,d = np.hsplit(a,3)
>>> b
array([[0],
[1]])
>>> c
array([[0],
[1]])
>>> d
array([[0],
[1]])
使其成为三个数组的单个列表:
>>> myList = [*np.hsplit(a,3)]
>>> myList
[array([[0],
[1]]), array([[0],
[1]]), array([[0],
[1]])]
TA贡献1859条经验 获得超6个赞
使用列表推导,您有 2 个选项:
import numpy as np
a = np.array([[0, 0, 0],
[1, 1, 1]])
[c for c in a.T]
[array([0, 1]), array([0, 1]), array([0, 1])]
[a[:,i] for i in range(a.shape[1])]
[array([0, 1]), array([0, 1]), array([0, 1])]
#or as hpaulj suggested in the comment
[a[:,[i]] for i in range(a.shape[1])]
[array([[0],[1]]),
array([[0],[1]]),
array([[0],[1]])]
添加回答
举报