努力掌握update/merge/concat等来实现我认为是一个简单的合并或更新过程。我有df(记录值)和df2(0的时间序列),想用df的相应记录值更新/替换df2中的值,与date_time匹配。在
示例:df=Date_Time Perc
03/03/2010 00:05 1.0
03/03/2010 00:15 2.0
df2=
^{pr2}$
结果将返回:Date_Time Perc
03/03/2010 00:00 0.0
03/03/2010 00:05 1.0
03/03/2010 00:10 0.0
03/03/2010 00:15 2.0
03/03/2010 00:20 0.0
到目前为止尝试过:用变体重新索引Date_time和df2.update(df),多个合并/加入/合并的变体,一个经过调整的定义(如下)和apply…现在想知道我是否需要使用iterrows(见下文?)。
任何关于正确方向的建议都将不胜感激…也许我在方法上遗漏了一些基本的东西。。。在def update_vals(row, data=data):
if row.Date_Time == df.Date_Time:
row.Perc = df.Perc
return row
for index, row in df2['Date_Time'].iterrows():
x = df2['Date_Time']
for index, row in df['Date_Time'].iterrows():
x2 = df['Date_Time']
if x2 ==x:
df2['Perc'] = df['Perc']
本以为这也可以,但结果是(ValueError:无法从重复的轴重新编制索引)df.set_index('Date_Time', inplace=True)
df2.set_index('Date_Time', inplace=True)
df2.update(df[['Perc']])