我有一个包含多个日期列的数据集,如下所示

Input Dataframe

> df
Date1       Date2       Date3
2008-08-11  NaT         2005-05-14
2010-06-18  2012-09-04  2003-01-16
NaT         2006-11-05  1999-03-31

Desired Output

我想添加一列minDatecol

> df
Date1       Date2       Date3       minDatecol
2008-08-11  NaT         2005-05-14  Date3
2010-06-18  2012-09-04  2003-01-16  Date3 
NaT         2006-11-05  2009-03-31  Date2

我试了df[cols].idxmin(axis=1)次,但出现了如下错误

ValueError:try 获取空序列的argmin

你能提供什么帮助?

推荐答案

使用:

cols = ['Date1','Date2','Date3']
df['minDatecol'] = df[cols].fillna(pd.Timestamp.max).idxmin(axis=1)
print (df)
       Date1      Date2      Date3 minDatecol
0 2008-08-11        NaT 2005-05-14      Date3
1 2010-06-18 2012-09-04 2003-01-16      Date3
2        NaT 2006-11-05 2009-03-31      Date2

Python相关问答推荐

如何计算两极打印机中 * 所有列 * 的出现次数?

标题:如何在Python中使用嵌套饼图可视化分层数据?

如何在给定的条件下使numpy数组的计算速度最快?

在www.example.com中使用`package_data`包含不包含__init__. py的非Python文件

如何在Python中使用Pandas将R s Tukey s HSD表转换为相关矩阵''

基于形状而非距离的两个numpy数组相似性

以逻辑方式获取自己的pyproject.toml依赖项

剪切间隔以添加特定日期

提高算法效率的策略?

Discord.py -

使用__json__的 pyramid 在客户端返回意外格式

处理Gekko的非最优解

语法错误:文档. evaluate:表达式不是合法表达式

什么是一种快速而优雅的方式来转换一个包含一串重复的列,而不对同一个值多次运行转换,

SpaCy:Regex模式在基于规则的匹配器中不起作用

一维不匹配两个数组上的广义ufunc

具有不匹配列的2D到3D广播

删除另一个div中的特定div容器

如何让PYTHON上的Selify连接到现有的Firefox实例-我无法连接到Marionette端口

了解如何让库认识到我具有所需的依赖项