如何获取其中某些行包含空值的三个不同日期列的最大值

问题描述 投票:0回答:1

我有一个包含以下信息的数据框:

初始_日期 首次修订日期 第二次修订日期
2022 年 1 月 1 日
2022 年 1 月 1 日 2022 年 2 月 15 日 2022 年 5 月 4 日
2024 年 3 月 19 日 2024 年 6 月 2 日

我想添加一个名为“最终日期”的列,它是三列中的最大值,如果列为空,我希望它被忽略。

我尝试了以下代码来添加列:

df['Initial_Date']=pd.to_datetime(df['Initial_Date'],errors='coerce')
df['First_Revision_Date']=pd.to_datetime(df['First_Revision_Date'],errors='coerce')
df['Second_Revision_Date']=pd.to_datetime(df['Second_Revision_Date'],errors='coerce')

df.insert(len(df.columns),'Final_Date',allow_duplicates = False, value=df['Initial_Date','First_Revision_Date','Second_Revision_Date'].max(axis=1))

错误:

   3801     #  InvalidIndexError. Otherwise we fall through and re-raise
   3802     #  the TypeError.
   3803     self._check_indexing_error(key)
python pandas datetime insert max
1个回答
0
投票

df[[“初始日期”、“第一个修订日期”、“第二个修订日期”]]

添加额外的括号有效!

© www.soinside.com 2019 - 2024. All rights reserved.