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

时间:2018-10-19 11:00:35

标签: python arrays python-3.x

如何从python中的一维数组创建二维数组?

Example :

     i/p 1-D array : [3,4,6]

Result :

     o/p 2-D array : [[3,], [4,], [6,]]

或者说一个values = [3,4,6]作为上述数组的二维数组的数据框列。

谢谢。

3 个答案:

答案 0 :(得分:-1)

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

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

Try it online!

或使用map()

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

Try it online!

答案 1 :(得分:-1)

您可以使用reshape处理numpy数组。 (Documentation

例如:

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

print(b)

更笼统地说,您可以使用as的长度作为行数:

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

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

答案 2 :(得分:-1)

如果是numpy数组,则可以重新调整形状:

array.reshape(<no of rows>,<no of columns>)

其中

array = np.arrange(([[start,] stop [,step,] [,dtype]))