我正在尝试在其他两个日期列的数据框中定义一个新变量,两个日期列都是datetime
变量
df['date_new'] = max(df['date1'], df['date2'])
错误返回:
ValueError:系列的真值是不明确的。使用a.empty, a.bool(),a.item(),a.any()或a.all()。
答案 0 :(得分:1)
您收到错误是因为您尝试使用Python的 内置 max
函数和两个pandas系列。这样做会尝试确定Series
和df['date1']
之间的最大df['date2']
,这实际上没有意义。改为使用pandas.DataFrame.max
方法。
您要查找的是确定datetime
行的最大df[['date1', 'date2']]
值,以下是完成此操作的最佳方式:
df['date_new'] = df[['date1', 'date2']].max(axis=1)
我希望这会有所帮助。