【问题标题】:Zip two differents lists for two rows array in Python在Python中为两行数组压缩两个不同的列表
【发布时间】:2021-03-26 13:22:11
【问题描述】:

我想将 2 个列表放入一个数组中(一列一列),如下所示:[[w, a, t, l][q, m, v, u]]

这是我的配置列表: data_1 = data_txt_W1[:sl1] data_2 = data_txt_W1[sl2:]

对应于:

  • data_1:[-2.39123179、2.19363512、-1.73483529、-1.94338542、0.86847094、2.18170135、-2.00504699、-0.04422694、1.38740394]

  • data_2 : [-0.14191044, 0.21310374, -0.40452412, -0.32172719, 0.24878486, 0.21668563, -0.2694207, 0.99565063, 0.5039941, -0.06638008]

(它们是两个列表) 我想要的结果是这样的数组:

[[-2.39123179, 2.19363512, -1.73483529, -1.94338542, 0.86847094, 2.18170135, -2.00504699, -0.04422694, 1.38740394]
 [-0.14191044, 0.21310374, -0.40452412, -0.32172719, 0.24878486, 0.21668563, -0.2694207, 0.99565063, 0.5039941, -0.06638008]]

我试过了

data_txt_W1 = np.array([[data_1], [data_2]]) 

但结果是:

[[list([-2.39123179, 2.19363512, -1.73483529, -1.94338542, 0.86847094, 2.18170135, -2.00504699, -0.04422694, 1.38740394])]
 [list([-0.14191044, 0.21310374, -0.40452412, -0.32172719, 0.24878486, 0.21668563, -0.2694207, 0.99565063, 0.5039941, -0.06638008])]]

我不想在结果中出现list() 这个词。

【问题讨论】:

  • 试试这个data_txt_W1 = np.array([data_1, data_2])
  • data_1data_2 必须具有相同数量的元素,否则将不起作用。
  • 确实,我的 2 个列表长度不同。现在这是工作!解决方案是:data_txt_W1 = np.array([data_1, data_2]) 有 2 个长度相同(元素数量相同)的列表。感谢@sai

标签: python arrays numpy arraylist


【解决方案1】:

将 2 个列表压缩成一个数组,一个列表对应一个行(2 个列表 = 2 行)的解决方案是:data_txt_W1 = np.array([data_1, data_2])

/!\ 但不要忘记:列表必须具有相同数量的元素,否则不起作用!

感谢@sai 的快速回答,

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-11-20
    • 2018-11-03
    • 2019-06-16
    • 2013-11-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多