3
我以下的數據幀(在實際數據幀是比這一個更大):如何使用數據透視表熊貓後襬脫多級索引?
sale_user_id sale_product_id count
1 1 1
1 8 1
1 52 1
1 312 5
1 315 1
然後重塑它在sale_product_id移動值使用下面的代碼列標題:
reshaped_df=id_product_count.pivot(index='sale_user_id',columns='sale_product_id',values='count')
所得數據幀是:
sale_product_id -1057 1 2 3 4 5 6 8 9 10 ... 98 980 981 982 983 984 985 986 987 99
sale_user_id
1 NaN 1.0 NaN NaN NaN NaN NaN 1.0 NaN NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
3 NaN 1.0 NaN NaN NaN NaN NaN NaN NaN NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
4 NaN NaN 1.0 NaN NaN NaN NaN NaN NaN NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
,你可以看到我們有一個multililevel指數,我需要的是擁有的F sale_user_is沒有多級索引IRST柱:
我採取如下方法:
reshaped_df.reset_index()
的結果會是這樣,我仍然有sale_product_id列,但我並不需要它了:
sale_product_id sale_user_id -1057 1 2 3 4 5 6 8 9 ... 98 980 981 982 983 984 985 986 987 99
0 1 NaN 1.0 NaN NaN NaN NaN NaN 1.0 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
1 3 NaN 1.0 NaN NaN NaN NaN NaN NaN NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
2 4 NaN NaN 1.0 NaN NaN NaN NaN NaN NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN
我可以子集這個數據框來擺脫sale_product_id,但我不認爲它會有效。我正在尋找一種有效的方式來擺脫多級索引,同時重塑原始數據幀
我嘗試了所有的解決方案,actulally前兩個解決方案刪除sale_user_id,但我需要它作爲第一個欄,我需要擺脫sale_product_id。 – sanaz
和最後兩個解決方案也刪除sale_user_id – sanaz
請檢查我的編輯。 – jezrael