繁体   English   中英

使用熊猫到日期时间功能时日期错误

[英]Error in date when using pandas to date time function

import pandas as pd
df1 = pd.read_csv('sales.csv')
df2 = pd.read_csv('sales1.csv')
df3 = pd.read_csv('sales2.csv')
df4 = pd.read_csv('sales3.csv')
df=pd.concat([df1,df2,df3,df4])
df['Transaction date']

给我以下输出:

0     01/05/2018
1     30/04/2018
2     30/04/2018
3     25/04/2018
4     23/04/2018
5     23/04/2018
6     22/04/2018
7     22/04/2018
8     22/04/2018
9     21/04/2018
10    18/04/2018
11    18/04/2018
12    17/04/2018
13    17/04/2018
14    16/04/2018
15    15/04/2018
16    15/04/2018
17    15/04/2018
18    14/04/2018
19    14/04/2018
20    14/04/2018
21    13/04/2018
22    13/04/2018
23    13/04/2018
24    11/04/2018
25    11/04/2018
26    10/04/2018
27    09/04/2018
28    09/04/2018
29    07/04/2018

当我使用pd.to_datetime() ,有些月份和几天会发生变化:

import pandas as pd
df1 = pd.read_csv('sales.csv')
df2 = pd.read_csv('sales1.csv')
df3 = pd.read_csv('sales2.csv')
df4 = pd.read_csv('sales3.csv')
df=pd.concat([df1,df2,df3,df4])
df['Transaction date'] = pd.to_datetime(df['Transaction date'])
df['Transaction date']

0    2018-01-05
1    2018-04-30
2    2018-04-30
3    2018-04-25
4    2018-04-23
5    2018-04-23
6    2018-04-22
7    2018-04-22
8    2018-04-22
9    2018-04-21
10   2018-04-18
11   2018-04-18
12   2018-04-17
13   2018-04-17
14   2018-04-16
15   2018-04-15
16   2018-04-15
17   2018-04-15
18   2018-04-14
19   2018-04-14
20   2018-04-14
21   2018-04-13
22   2018-04-13
23   2018-04-13
24   2018-11-04
25   2018-11-04
26   2018-10-04
27   2018-09-04
28   2018-09-04
29   2018-07-04

从输出24到29切换月份和日期。 我想将“ Transaction date ”列更改为datetime64[ns]类型,但要使用一种格式yyyy/mm/dd设置我的日期。

上面是格式: dd/mm/yyyy ,使用pd.to_datetime()时应更改为yyyy-mm-dd 从输出0到23起作用,但是从输出24到29,它从dd/mm/yyyy变为yyyy-dd-mm 我希望所有datetime64[ns]日期都以yyyy-mm-dd相同的格式输入。

我找不到解决方案,有人可以帮我吗?

如果定义格式,似乎可以解决:

pd.to_datetime(df['Transaction date'], format = '%d/%m/%Y')

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM