【问题标题】:Merge is not working on two dataframes of multi level index合并不适用于多级索引的两个数据帧
【发布时间】:2020-09-30 19:24:45
【问题描述】:

第一个 DataFrame : 住房,这个数据帧包含 MultiIndex (State, RegionName) 和其他 3 列中的一些相关值。

State           RegionName          2008q3          2009q2       Ratio  
New York         New York       499766.666667   465833.333333   1.072844
California      Los Angeles     469500.000000   413900.000000   1.134332
Illinois         Chicago        232000.000000   219700.000000   1.055985
Pennsylvania    Philadelphia    116933.333333   116166.666667   1.006600
Arizona           Phoenix       193766.666667   168233.333333   1.151773

第二个数据框:list_of_university_towns,包含州和一些地区的名称,并具有默认数字索引

      State    RegionName
1   Alabama     Auburn
2   Alabama    Florence
3   Alabama   Jacksonville
4   Arizona    Phoenix  
5   Illinois   Chicago  

现在是两个数据框的内部连接:

uniHousingData = pd.merge(list_of_university_towns,housing,how="inner",on=["State","RegionName"])

这在生成的 uniHousingData 数据帧中没有给出任何值,而它应该具有底部的两个值(来自 list_of_university_towns 的索引#4 和 5)

我做错了什么?

【问题讨论】:

    标签: python pandas dataframe merge


    【解决方案1】:

    我发现了问题。第二个数据框的 RegionName 列中的字符串末尾有空格。使用 Strip() 方法来删​​除空间,它就像一个魅力。

    【讨论】:

      猜你喜欢
      • 2019-08-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-07-19
      • 2019-06-07
      • 1970-01-01
      相关资源
      最近更新 更多