我想在一列中突出显示pandas数据框中的所有日期。
索引A
0 24
1 32-35
2016年1月2日
2017年2月20日3
4 02/20/2017
2017年2月20日5
想法是测试datetime
是否具有转换值,而to_datetime
是否具有测试值(如果没有丢失值(,因为errors='coerce'
返回无日期时间的NaN
:
def color_datetimes(val):
color = 'red' if pd.notna(pd.to_datetime(val, errors='coerce')) else 'black'
return 'color: %s' % color
df.style.applymap(color_datetimes, subset=['A']).to_excel('file.xlsx', index=False)