将一维数组转换为二维数组



如何在python中从1-d数组创建2-d数组?

Example :
i/p 1-D array : [3,4,6]
Result :
o/p 2-D array : [[3,], [4,], [6,]]

或者假设一个数据帧列,其中values = [3,4,6]作为上面提到的 2-d 数组。

提前谢谢。

您可以使用 reshape 来处理 numpy 数组。(文档(

前任:

a = [1,2,3]
#reshaping a into 1 column and 3 rows
b = np.reshape(a,(3,1))
print(b)

为了更通用,你可以只使用 a 的长度作为行数的参数:

b = np.reshape(a,(len(a),1))

注意:据我所知(如果我错了,有人纠正我(,使用 numpy 来处理 numpy 数组更快。在其他情况下,我认为列表理解示例将是更快的选择。

您可以为每个元素创建一个数组:

array = [3,4,6]
array2 = [[x] for x in array]
print(array2)

在线试用!

或使用map()

array = [3,4,6]
array2 = list(map(lambda x: [x], array))
print(array2)

在线试用!

最新更新