我有两个日期时间列'date_a'和'date_B',我需要根据下面的条件交换它们,但是我得到了错误。交换日期时间列的正确方法是什么?
date_a date_b
1 2020-09-01 2020-05-01
2 1992-01-01 1988-01-01
3 2013-10-01 2013-01-01
cond = df.date_a > df.date_b
df.loc[cond, ['date_a', 'date_b']] = df.loc[cond, ['date_b', 'date_a']].values
TypeError: cannot astype a datetimelike from [datetime64[ns]] to [float64]
2条答案
按热度按时间bbmckpt71#
df.loc[cond, ['date_a ', 'date_b']]
中似乎有一个拼写错误您真的打算创建一个新列**“date_a“**吗?使用提供的数据
rekjcdws2#
我以前遇到过这个问题,解决方法如下: