[英]Pandas dataframe update column
我有以下熊猫数据框:
>>> df1
Col1 Col2 Col3
0 A a 2017-02-28
1 B b 2017-02-28
2 C c 2017-03-08
3 D d 2017-02-28
>>> df2
Col1 Col2 Col3
0 B b 2017-03-05
1 C c 2017-03-05
2 D d 2017-03-05
我想更新df1.Col3
与数据df2.Col3
时的日期df2.Col3
是最近有了答案:
>>> df1
Col1 Col2 Col3
0 A a 2017-02-28
1 B b 2017-03-05
2 C c 2017-03-08
3 D d 2017-03-05
任何想法如何解决这个问题?
看起来您已经习惯使用R。在Pandas中选择列的语法是df.Col1
或df['Col1']
。
您可以连接两个数据帧,按Col3
排序,然后删除['Col1','Col2']
组合的重复项。 您还需要将Col3
转换为日期时间对象。
> df1.Col3 = pd.to_datetime(df1.Col3)
> df2.Col3 = pd.to_datetime(df2.Col3)
> (pd.concat((df1, df2))
.reset_index(drop=True)
.sort_values('Col3')
.drop_duplicates(['Col1','Col2'], keep='last'))
#returns:
Col1 Col2 Col3
0 A a 2017-02-28
4 B b 2017-03-05
6 D d 2017-03-05
2 C c 2017-03-08
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.