我有一组数据,日期格式为:d-m-y。下面是我的原始CSV数据的示例:
| 日期(日/月/年)|横断|
| --|--|
| 23年1月2日|杂货|
| 23年3月2日|晚餐|
| 23年5月2日|午餐|
| 23年5月2日|茶|
| ......这是什么?|......这是什么?|
| 25/2/23|运输|
| 27/2/23|运输|
| ......这是什么?|......这是什么?|
我使用以下代码将我的'Date'从Object转换为datetime 64:df.Date= df['Date'].astype('datetime64 [ns]')
在检查dtype时,我可以确认数据类型已经转换为datetime 64 [ns]。
面临的问题:
| 日期(年月日)|横断|
| --|--|
| 2023-01-02 2023-01-02|杂货|
| 2023-03-02|晚餐|
| 2023-05-02 2023-05-02|午餐|
| 2023-01-02 2023-01-02|茶|
| ......这是什么?|......这是什么?|
| 2023-02-25 2023-02-25 2023-02-25|运输|
| 2023-02-27 2023-02-27|运输|
| ......这是什么?|......这是什么?|
请注意数据是如何被误解的。一位数的日期,如1日,3日,5日已被解释为月份。从2023年2月1日改为2023年1月2日。但一旦日期进入两位数,就不会被曲解了。2023年2月25日在两个表中相同。
希望有人有办法解决这个问题。非常感谢您的帮助!!先谢谢你!!
1条答案
按热度按时间ghg1uchk1#
您可以在将列解析为日期时指定日期格式。
查看更多日期格式:https://docs.python.org/3/library/datetime.html#strftime-and-strptime-behavior