我正在嘗試轉換分組的 timeindex 數據幀,因此每個索引都是一個新列,并且這些列具有用于對應每個索引的數據,我該怎么做?這是例子:data = {'field1':['a','a','c','a','b','c','a','b','c','a','b','c','c'], 'field2':[1,5,12,10,8,4,33,9,1,33,9,1,1],}df = pd.DataFrame(data)df = pd.DataFrame(data, index =['2020-01-01 06:00:00-05:00', '2020-01-01 06:20:00-05:00', '2020-01-01 06:28:00-05:00', '2020-01-01 06:25:00-05:00', '2020-01-01 07:00:00-05:00', '2020-01-01 07:09:00-05:00', '2020-01-01 07:15:00-05:00','2020-01-01 07:48:00-05:00', '2020-01-01 06:20:00-05:00', '2020-01-01 08:33:00-05:00','2020-01-01 08:38:00-05:00','2020-01-01 06:20:00-05:00', '2020-01-01 08:45:00-05:00'])df.index = pd.to_datetime(df.index)df=df.groupby([pd.Grouper(freq='1H'), 'field1']).count()我想把它轉換成這樣:
1 回答

拉丁的傳說
TA貢獻1789條經驗 獲得超8個贊
你快到了。只是.unstack()和transpose結果數據框
df=df.groupby([pd.Grouper(freq='1H'), 'field1']).count().unstack()\
.T.reset_index().drop(columns='level_0')
field1 2020-01-01 06:00:00-05:00 2020-01-01 07:00:00-05:00 \
0 a 3.0 1.0
1 b NaN 2.0
2 c 3.0 1.0
2020-01-01 08:00:00-05:00
0 1.0
1 1.0
2 1.0
添加回答
舉報
0/150
提交
取消