在我dataframe的时间是3列分隔:year,month,day,就像这样:

我怎样才能将它们转换成date,所以我可以进行时间序列分析?
我可以做这个:
df.apply(lambda x:'%s %s %s' % (x['year'],x['month'], x['day']),axis=1)
Run Code Online (Sandbox Code Playgroud)
这使:
1095 1954 1 1
1096 1954 1 2
1097 1954 1 3
1098 1954 1 4
1099 1954 1 5
1100 1954 1 6
1101 1954 1 7
1102 1954 1 8
1103 1954 1 9
1104 1954 1 10
1105 1954 1 11
1106 1954 1 12
1107 1954 1 13
Run Code Online (Sandbox Code Playgroud)
但接下来呢?
编辑: 这是我最终得到的:
from datetime import datetime
df['date']= df.apply(lambda x:datetime.strptime("{0} {1} {2}".format(x['year'],x['month'], x['day']), "%Y %m %d"),axis=1)
df.index= df['date']
Run Code Online (Sandbox Code Playgroud)
以下是将值转换为时间的方法:
import datetime
df.apply(lambda x:datetime.strptime("{0} {1} {2} 00:00:00".format(x['year'],x['month'], x['day']), "%Y %m %d %H:%M:%S"),axis=1)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7000 次 |
| 最近记录: |