繁体   English   中英

pandas - 如何通过匹配索引值将列附加到数据框?

[英]pandas - How to append a column to data frame by matching index values?

我正在尝试将一列附加到我的数据框中,但不完全是如何这样做,因为我附加到的数据框中的行索引乱序。

我的数据框看起来像这样(虽然不是那么简单):


    |---------|
    | Country | 
----|---------|
  1 |    A    |   
----|---------|
  2 |    A    |     
----|---------|
  5 |    B    | 
----|---------|
  6 |    B    | 
----|---------|
  3 |    C    |
----|---------|
  4 |    C    | 
----|---------|

我试图追加的列看起来更像这样:

    |---------|
    | Business| 
----|---------|
  1 |    1    |   
----|---------|
  2 |    2    |   
----|---------|
  3 |    1    |     
----|---------|
  4 |    2    |     
----|---------|
  5 |    1    |   
----|---------|
  6 |    2    |     
----|---------|

我正在尝试获得如下所示的结果:

    |---------|----------|
    | Country | Business | 
----|---------|----------|
  1 |    A    |     1    |
----|---------|----------|
  2 |    A    |     2    |
----|---------|----------|
  5 |    B    |     1    |
----|---------|----------|
  6 |    B    |     2    |
----|---------|----------|
  3 |    C    |     1    |
----|---------|----------|
  4 |    C    |     2    |
----|---------|----------|

尽管如果索引在附加后按正确的顺序排列,那也很好。

我应该如何使用熊猫库来解决这个问题? 我试过 pandas.merge() 但由于我没有实际的带有行索引的列,我不知道该告诉它匹配什么。

抱歉,如果之前有人问过这个问题! 我很感激任何帮助。

你可以试试这个:

df_merged = df1.merge(df2, how='outer', left_index=True, right_index=True)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM