【问题标题】:Bulding Dataframe with additional entries from existing one使用现有条目中的其他条目构建 Dataframe
【发布时间】:2015-09-09 17:12:02
【问题描述】:

我有一个这样的数据框 -

df:
 SAMPLE_ID ROW COL  LAB_L  LAB_A  LAB_B 
     0      1   1   1  61.41 -24.27 -50.02
     1      2   1   2  61.79 -23.91 -49.86
     2      3   1   3  61.55 -24.08  -50.1
     3      4   1   4  61.75 -23.77 -49.98
     4      5   1   5  61.61 -24.06  -50.3

我想要一个包含三倍条目的数据框,每个 LAB 一个。

在这种情况下,我想要 -

 SAMPLE_ID ROW COL  Value  Field 
     0      1   1   61.41   LAB_L
     0      1   1   -24.27  LAB_A
     0      1   1   -50.02  LAB_B
     1      2   1   61.79   LAB_L
     1      2   1   -23.91  LAB_A
     1      2   1   -49.86  LAB_B
     ....

非常感谢您的帮助。

谢谢!

【问题讨论】:

    标签: python pandas dataframe


    【解决方案1】:

    只需使用melt函数:

    import pandas as pd
    
    pd.melt(df, id_vars=['SAMPLE_ID', 'ROW', 'COL'], var_name='Field', value_name='Value')
    

    【讨论】:

      【解决方案2】:

      您可以创建初始数据帧的三个副本,然后在每个副本中删除两列,即 df_1 将具有 cols=[SAMPLE_ID, ROW COL, LAB_L],df_2 将具有 cols =[SAMPLE_ID, ROW COL, LAB_A] 等. 然后,您可以将 LAB_* 列重命名为 Value,然后添加具有相应实验室名称的 Field 列。最后你可以将这三个数据框合并在一起。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-05-16
        • 1970-01-01
        • 2012-02-03
        • 1970-01-01
        • 2012-11-25
        • 2015-05-12
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多