基于重新创建的列pandas python连接两个数据帧

2024-05-08 19:15:11 发布

您现在位置:Python中文网/ 问答频道 /正文

我有两个数据帧:

df1:

date     column1           
2014-03-13   1
2014-03-14   2

d2:

^{pr2}$

我想得到一个df3=

     date   Id people  value   column1

2014-03-13   1      A   -3.0      1
2014-03-13   1      B   -6.0      1
2014-03-14   1      A   -3.1      2
2014-03-14   2      B   -5.0      2

我尝试使用pandas的join函数,但是在那里我遇到了一些错误,有任何方法可以解决它


Tags: 数据方法函数idpandasdatevalue错误
2条回答

写下:

df3 = df2.merge(df1, on='date', how='left')

如果联接列在两个DataFrames中只有date,则只使用merge

df = pd.merge(df2, df1, how='left')

^{pr2}$

还要检查dtypes在两个DataFrame中是否相同:

print (df1['date'].dtype)
print (df2['date'].dtype)

如果不是,请将列转换为datetime,例如:

df1['date'] = pd.to_datetime(df1['date'])

相关问题 更多 >