【问题标题】:convert 1-D array to 2-D array [closed]将一维数组转换为二维数组[关闭]
【发布时间】:2018-10-19 11:00:35
【问题描述】:

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

Example :

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

Result :

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

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

提前致谢。

【问题讨论】:

    标签: python arrays python-3.x


    【解决方案1】:

    你可以使用 reshape 来处理 numpy 数组。 (Documentation)

    例如:

    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 数组更快。在其他情况下,我认为列表理解示例会是更快的选择。

    【讨论】:

      【解决方案2】:

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

      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!

      【讨论】:

      猜你喜欢
      • 2016-02-18
      • 2018-02-19
      • 2020-03-26
      • 2017-03-22
      • 2021-11-23
      • 2021-07-20
      相关资源
      最近更新 更多