【问题标题】:How do I extract column values from one dataframe to another?如何将列值从一个数据帧提取到另一个数据帧?
【发布时间】:2021-04-08 09:17:33
【问题描述】:

我有两个 pandas 数据框 df1 和 df2

   **df1**                                **df2**  
cat  id  frequency            id   (other cols)    A    B    C
A    23    2                  23   .............  nan  nan  nan
A    43    8                  43   .............  nan  nan  nan
B    23    56                 30   .............  nan  nan  nan
C    30    4

我正在寻找一种方法来从 df1 到 df2 中提取信息,从而得到以下格式,其中 A、B 和 C 列的值是来自 df1 的频率值

       **df2**
id  (other cols)  A  B   C 
30   ..........   0  0   4
23   ..........   2  56  0
43   ..........   8  0   0

【问题讨论】:

    标签: python pandas dataframe


    【解决方案1】:

    DataFrame.pivotDataFrame.combine_first 一起使用:

    df11 = df1.pivot('cat', 'id', 'frequency')
    
    #if id is column
    df = df2.set_index('id').combine_first(df11)
    
    #if id is index
    df = df2.combine_first(df11)
    

    【讨论】:

      猜你喜欢
      • 2019-07-15
      • 2020-06-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-01-09
      • 2022-10-12
      • 1970-01-01
      • 2021-07-02
      相关资源
      最近更新 更多