我有以下时间序列数据帧:
df = pd.DataFrame(np.random.randint(0,100,size=(120, 4)), columns=list('ABCD'))
df['date']=pd.date_range(start="2012-01-01",
#end='2022-12-01',
periods=1 * 120,
freq='MS')
df.set_index('date',inplace=True,drop=True)
df['month']=df.index.month
df['year']=df.index.year
我需要reshape 巨 Python Pandas 的数据帧,如下所示:
Year City Jan Feb ... Dec
2012 A 10 15 12
2013 A 13 17 10
2014 A 12 10 15
... ... ... ... ...
2012 B 30 40 33
2013 B 16 22 16
2014 B 7 24 44
... ... ... ... ...
... ... ... ... ...
2021 D 19 17 45
我的代码是
df_table= pd.pivot_table(df, values=df.columns, index="year",
columns='month',sort=False)
我的结果是:
A ... D
month 1 2 3 4 5 ... 8 9 10 11 12
year ...
2012 54 21 53 95 39 ... 47 41 40 91 9
2013 91 36 51 32 17 ... 68 8 36 89 48
2014 44 9 26 28 47 ... 1 9 23 55 21
2015 35 36 68 71 67 ... 5 88 34 56 80
2016 70 14 48 45 20 ... 81 47 33 17 22
2017 68 43 25 69 13 ... 76 17 79 10 79
2018 94 9 9 40 19 ... 76 5 54 27 41
2019 82 84 93 65 20 ... 54 92 49 24 91
2020 95 66 12 60 45 ... 66 47 19 35 42
2021 95 78 37 31 23 ... 78 12 78 70 43
[10 rows x 48 columns]
所以我需要知道我的代码或任何建议中有什么问题.