pandas 通过考虑特定列中的值来将两个 Dataframe 边缘化

pn9klfpd  于 2022-12-09  发布在  其他
关注(0)|答案(1)|浏览(108)

我有两个这样的 Dataframe :
df1:

DayYear_Count      Time
0                                           
2018-03-26 00:00:00             84  00:00:00
2018-03-26 01:00:00             84  01:00:00
2018-03-26 02:00:00             84  02:00:00
2018-03-26 03:00:00             84  03:00:00
2018-03-26 04:00:00             84  04:00:00

DF2:

Time       Temp  DayYear_Count
0      00:00:00   6.065167             84
1      01:00:00   5.692167             84
2      02:00:00   5.151917             84
3      03:00:00   4.636500             84
4      04:00:00   4.277417             84

我希望将两个数据框合并为一个数据框,其中“Time”和“DayYear_Count”列重合。因此,我将只在“Temp”列中的这些位置上显示值。类似于:

DayYear_Count      Time     Temp  
0                                           
2018-03-26 00:00:00             84  00:00:00   6.065
2018-03-26 01:00:00             84  01:00:00   3.055
2018-03-26 02:00:00             84  02:00:00   "Nan"

我输入了随机值来给予这个想法。

jtoj6r0c

jtoj6r0c1#

DataFrame.merge使用左联接,为了避免MultiIndex,将其转换为列0

df = df1.reset_index().merge(df2, on=['DayYear_Count','Time'], how='left').set_index(0)

相关问题