如何从列中删除日期和月份(类型:datetime64)[重复]

Posted

技术标签:

【中文标题】如何从列中删除日期和月份(类型:datetime64)[重复]【英文标题】:How to remove date and month from the column (type:datetime64) [duplicate] 【发布时间】:2019-08-28 14:01:00 【问题描述】:

我有 10 列(dtype:datetime64)。我想从列中删除日期和月份,只保留年份。

10-01-1880 --> 想要删除日期和月份

期待 --> 1880

【问题讨论】:

df['column'].dt.year @coldspeed ... 显示错误 df['year'].dt.year AttributeError: Can only use .dt accessor with datetimelike values 通过观察,我可以断定该类型确实不是datetime64。请在下次发布之前验证此信息...现在,您可以使用pd.to_datetime(df['column'], errors='coerce').dt.year @coldspeed... 我已经使用 pd.to_datetime 转换了我的列名称:年份,dtype:datetime64[ns].. 现在我使用了您的代码...它显示 l0 1970 1 1970 2 1970 3 1970 4 1970 5 1970 6 1970 7 1970 8 1970 9 1970 10 1970 11 1970 12 1970 13 1970 14 1970 15 1970 16 1970 名称:年份,dtype:int64 @coldspeed.. 我的列有 25 行的日期-月-年.. 我想删除日期和月份并保留年份.. 【参考方案1】:

这应该可以解决问题。我正在使用日期时间模块https://docs.python.org/3/library/datetime.html

from datetime import datetime

#Convert string to datetime object
datetime_object = datetime.strptime('10-01-1880', '%d-%m-%Y')
#Extract year
print(datetime_object.day)
print(datetime_object.month)
print(datetime_object.year)
#10
#1
#1880

【讨论】:

谢谢。如果我想做整个专栏,它是如何工作的? 您是指日期、月份和年份? 是的。我想为整个专栏做 完成请检查

以上是关于如何从列中删除日期和月份(类型:datetime64)[重复]的主要内容,如果未能解决你的问题,请参考以下文章

从列中提取日期并在 R 中缺少年份时添加年份

用于从列中删除超链接的 SQL 查询

如何从列中删除多余的字符?

如何从列类型列表中删除 pandas DataFrame 中的空值

使用 SSIS 从列中删除特殊字符 " 和 '

从oracle数据库中获取日期而不从列中获取时间