【问题标题】:Add numpy arrays as rows into pandas with string as index将numpy数组作为行添加到以字符串为索引的熊猫中
【发布时间】:2018-06-07 15:50:16
【问题描述】:

我有一个图像名称字符串列表和一个 numpy 数组,其中包含每个图像的形状 (4096) 特征。

例如姓名列表:

img_list = ['img1', 'img2', 'img3']

特征 np.array

[array([0.        , 0.04688909, 0.05700445, ..., 0.        , 0.        ,
        0.        ], dtype=float32),
 array([0.        , 0.04688909, 0.05700445, ..., 0.        , 0.        ,
        0.        ], dtype=float32),
 array([0.03546982, 0.00310931, 0.        , ..., 0.        , 0.01513313,
        0.        ], dtype=float32)]

我想将它们添加到 pandas 数据框中,其中索引将是 img 名称和按列排列为 1 的特征,如下所示:

    f_1 f_2 f_3 ... f_4094  f_4095  f_4096
img 

imgs 列表中的索引与 features 数组相同,因此 img[0] 具有 features[0] 数组,依此类推。

我怎样才能将它们合并成一个 N x 4096 形状的数据框?

谢谢!

【问题讨论】:

    标签: python pandas numpy


    【解决方案1】:

    IIUC:

    pd.DataFrame(features, img_list).add_prefix('f_')
    

    MCVE

    img_list = ['img1', 'img2', 'img3']
    features = [np.array([1, 2, 3]), np.array([4, 5, 6]), np.array([7, 8, 9])]
    
    df = pd.DataFrame(features, img_list).add_prefix('f_')
    df
    
          f_0  f_1  f_2
    img1    1    2    3
    img2    4    5    6
    img3    7    8    9
    

    【讨论】:

      猜你喜欢
      • 2013-09-17
      • 2019-01-02
      • 2023-02-25
      • 2015-12-30
      • 2021-01-03
      • 2020-12-08
      • 1970-01-01
      • 1970-01-01
      • 2017-04-06
      相关资源
      最近更新 更多