我有一种感觉,这很容易,但我不知道该怎么做。假设我有一个 Numpy 数组
[1,2,3,4]
我如何将其转换为
[[1],[2],[3],[4]]
以一种简单的方式?
谢谢
您可以使用np.newaxis
:
>>> a = np.array([1,2,3,4]
array([1, 2, 3, 4])
>>> a[:,np.newaxis]
array([[1],
[2],
[3],
[4]])
您可以使用numpy.reshape:
>>> import numpy as np
>>> a = np.array([1,2,3,4])
>>> np.reshape(a, (-1, 1))
array([[1],
[2],
[3],
[4]])
如果您想要正常的 python 列表,请使用list comprehension
:
>>> a = np.array([1,2,3,4])
>>> [[x] for x in a]
[[1], [2], [3], [4]]
想到的最明显的方法是:
>>> new = []
>>> for m in a:
new.append([m])
但这会创建普通 Python 的列表列表,我不确定这是否是您想要的...
>>> A = [1,2,3,4]
>>> B = [[x] for x in A]
>>> print B
[[1], [2], [3], [4]]