如何用pandas中日期列中的最大日期填充缺少的日期?

时间:2021-03-25 07:23:17

标签: python pandas

我试图用同一列中日期的最大值填充日期列中的缺失值。但是,通过提供以下代码,它不会被转换。

us_copy['Inv_Latest_Document_Date'] = us_copy['Inv_Latest_Document_Date'].fillna(us_copy.groupby('Vendor_Name')['Inv_Latest_Document_Date'].max())

1 个答案:

答案 0 :(得分:0)

对与原始大小相同的系列使用 GroupBy.transform

#if necessary convert to datetimes
us_copy['Inv_Latest_Document_Date'] = pd.to_datetime(us_copy['Inv_Latest_Document_Date'])

s = us_copy.groupby('Vendor_Name')['Inv_Latest_Document_Date'].transform('max')
us_copy['Inv_Latest_Document_Date'] = us_copy['Inv_Latest_Document_Date'].fillna(s)

编辑:如果需要按所有列值的最大值进行替换:

#if necessary convert to datetimes
us_copy['Inv_Latest_Document_Date'] = pd.to_datetime(us_copy['Inv_Latest_Document_Date'])

a = us_copy['Inv_Latest_Document_Date'].max()
us_copy['Inv_Latest_Document_Date'] = us_copy['Inv_Latest_Document_Date'].fillna(a)