【发布时间】:2021-06-01 20:28:23
【问题描述】:
我有以下数据框
Date Data
0 [Q1, 10] 8.7
1 [Q2, 10] 8.4
2 [Q3, 10] 14.1
3 [Q4, 10] 16.2
4 [Q1, 11] 18.6
5 [Q2, 11] 20.4
6 [Q3, 11] 17.1
7 [Q4, 11] 37.0
8 [Q1, 12] 35.1
9 [Q2, 12] 26.0
10 [Q3, 12] 26.9
11 [Q4, 12] 47.8
12 [Q1, 13] 37.4
13 [Q2, 13] 31.2
14 [Q3, 13] 33.8
15 [Q4, 13] 51.0
16 [Q1, 14] 43.7
17 [Q2, 14] 35.2
18 [Q3, 14] 39.3
19 [Q4, 14] 74.5
20 [Q1, 15] 61.2
21 [Q2, 15] 47.5
22 [Q3, 15] 48.0
23 [Q4, 15] 74.8
24 [Q1, 16] 51.2
25 [Q2, 16] 40.4
26 [Q3, 16] 45.5
27 [Q4, 16] 78.3
28 [Q1, 17] 50.8
29 [Q2, 17] 38.5
30 [Q3, 17] 46.7
31 [Q4, 17] 77.3
32 [Q1, 18] 52.2
33 [Q2, 18] 41.3
34 [Q3, 18] 46.9
35 [Q4, 18] 68.4
36 [Q1, 19] 36.4
37 [Q2, 19] 33.8
38 [Q3, 19] 46.6
39 [Q4, 19] 73.8
40 [Q1, 20] 36.7
41 [Q2, 20] 37.6
我想将它合并到一个Date 到一个 Datetime 对象中,
所以Q1,10会变成Q1,2010然后变成2010-03-31
我尝试了以下代码,
df['Date'] = pd.to_datetime(df['Date'].str.join('20'))
但它不起作用。
我也尝试过使用
df['Date'].astype(str)[:1]
访问系列中的第二列以在前面添加 20,但它不会让我。
将此系列转换为 pandas 数据时间列的最佳方法是什么?
【问题讨论】:
-
日期列有列表或字符串?
-
它是一个字符串数组
标签: python pandas datetime time-series