【问题标题】:Turning two one dimensional arrays into a 2 dimensional array将两个一维数组变成二维数组
【发布时间】:2021-10-29 20:03:36
【问题描述】:

我想编写一个代码,它将a, b, c 和unix_a, unix_b, unix_c 组合成一个多维数组。 Long 会变成1 和Short 会变成0s。零和一将占据第一列,而第二列将是unix_ 值,就像:[[1 1624580882]]。我怎样才能得到我的Expected Output

import numpy as np 

a=np.array(["Short","Long","Short","Long","Short","Long"])
b=np.array(["Long","Long","Long","Long"])
c=np.array(["Short","Long","Short","Long","Short","Long"])

unix_a=np.array([1624580882,1624584458,1624589467,1624592213,1624595336,1624596349])
unix_b=np.array([1624580882,1624584458,1624595336,1624596349])
unix_c=np.array([1624580882,1624584464,1624589495,1624592238,1624595350,1624596380])

预期输出:

[[0 1624580882], [1 1624584458], [0 1624589467], [1 1624592213], [0 1624595336], [1 1624596349]]

[[1 1624580882], [1 1624584458], [1 1624595336], [1 1624596349]]

[[0 1624580882], [1 1624584464], [0 1624589495], [1 1624592238], [0 1624595350], [1 1624596380]]

【问题讨论】:

  • 您是否尝试过在每对数组 (ists) 上使用 zip 进行列表理解

标签: python arrays numpy multidimensional-array format


【解决方案1】:

你可以使用np.c_:

np.c_[a=='Long',unix_a]

【讨论】:

    【解决方案2】:

    如果你想要一个列表,你可以使用列表推导:

    [(0 if a=="Short" else 1, b) for a,b in zip(a,unix_a)]
    

    输出:

    [(0, 1624580882),
     (1, 1624584458),
     (0, 1624589467),
     (1, 1624592213),
     (0, 1624595336),
     (1, 1624596349)]
    

    如果你想要一个 2D numpy 数组:

    np.array([(a=="Long").astype(int), unix_a]).T
    

    输出:

    array([[         0, 1624580882],
           [         1, 1624584458],
           [         0, 1624589467],
           [         1, 1624592213],
           [         0, 1624595336],
           [         1, 1624596349]])
    
    

    全部转换:

    out_a, out_b, out_c = [np.array([(x[0]=="Long").astype(int), x[1]]).T
                           for x in [(a, unix_a), (b, unix_b), (c, unix_c)]]
    

    【讨论】:

      猜你喜欢
      • 2018-12-16
      • 1970-01-01
      • 2017-10-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多