gpt4 book ai didi

python - 如何加入两个数据框,其中一列具有相同的值(和名称)且大小相同?

转载 作者:行者123 更新时间:2023-12-03 17:00:20 24 4
gpt4 key购买 nike

我只想加入两个数据框,其中一列具有相同的值。
我尝试了 Pandas 合并功能:
df1。 --> 数据框 1
data Frame 1

    AU01    subject 
1 0.45 3
2 0.21 3
3 1.45 3
4 0.78 3
df2。 --> 数据框 2
Data Frame 2
      AU02     subject 
1 0.44 3
2 0.34 3
3 1.56 3
4 0.78 3
我试过的:
data = pd.merge(df1, df2, how="inner" , on="subject")
并得到这样的结果:
merge result:
但我只想通过合并公共(public)列并保持其他列不变来合并两个数据框。
我的预期输出是:
    AU01   AU02   subject 
1 0.45 0.44 3
2 0.21 0.34 3
3 1.45 1.56 3
4 0.78 0.78 3
PS:这里还有其他问题,但没有问题可以帮助我。

最佳答案

你可以这样做:

  • 检查是否 subject df1 匹配 subjectdf2 对于所有行。
  • 如果是, merge 两个df1df2index .
  • 删除重复 subject柱子。

  • 代码:
    In [800]: if df1.subject.isin(df2.subject).all(): 
    ...: df = pd.merge(df1,df2,left_index=True, right_index=True).drop('subject_y', 1).rename(columns={'subject_x':'subject'})
    ...:

    In [801]: df
    Out[801]:
    AU01 subject AU02
    1 0.45 3 0.44
    2 0.21 3 0.34
    3 1.45 3 1.56
    4 0.78 3 0.78

    关于python - 如何加入两个数据框,其中一列具有相同的值(和名称)且大小相同?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61849836/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com