【问题标题】:Convert Raw Date into Year / Month / Day of Week in Pandas在 Pandas 中将原始日期转换为年/月/星期几
【发布时间】:2020-01-23 22:08:58
【问题描述】:

我有一个 Pandas 数据框,其原始日期格式为“19990130”。我想将这些转换为新列:“年”、“月”和“星期几”。

我尝试使用以下方法:

pd.to_datetime(df['date'], format='%Y%m%d', errors='ignore').values

这确实给了我一个日期时间对象的数组。但是,我尝试的下一步是使用 .to_pydatetime() 和 .year 来尝试结束这一年,如下所示:

pd.to_datetime(df['date'], format='%Y%m%d', errors='ignore').values.to_pydatetime().year

当我使用 Pandas 数据框测试单个值时,此方法有效。我明白了:

'numpy.ndarray' object has no attribute 'to_pydatetime'

从这些数据中提取年、月和星期几的最简单方法是什么?

【问题讨论】:

标签: python pandas numpy datetime


【解决方案1】:

试试:

s = pd.to_datetime(df['date'], format='%Y%m%d', errors='coerce')

s.dt.year
# or
# s.dt.month, etc

【讨论】:

  • 行得通! errors='coerce' 是我所缺少的。谢谢!
猜你喜欢
  • 1970-01-01
  • 2011-01-29
  • 1970-01-01
  • 2014-01-11
  • 1970-01-01
  • 2020-08-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多