我正在嘗試創建一個多串列,這意味著一列有三個子列。
我嘗試了一個解決方案:How to Insert a List of Data into Pandas Multi-Index Dataframe
但問題是它傳遞了一個串列,串列中的每個專案對應一個列;我想傳遞一個資料框并將值與每個子列對齊。
med = pd.DataFrame({
'Gold':[54, 37, 37, 14, 19, 19, 9, 10, 2],
'Silver': [42, 40, 26, 16, 22, 14, 8, 9, 9],
'Bronze': [41, 49, 29, 32, 33, 12, 9, 7, 11],
})
colnames = ['Masculine']
cols = pd.MultiIndex.from_product([colnames, ['Gold', 'Silver', 'Bronze']])
df = pd.DataFrame([med], columns=cols)
我需要的是“男性”出現在“醫學”資料框的頂部,并且值是對齊的
uj5u.com熱心網友回復:
你想生成一個 MultiIndex 嗎?
您可以使用concat:
df = pd.concat({'Masculine': med}, axis=1)
# OR
df = pd.concat([med], keys=colnames, axis=1)
輸出:
Masculine
Gold Silver Bronze
0 54 42 41
1 37 40 49
2 37 26 29
3 14 16 32
4 19 22 33
5 19 14 12
6 9 8 9
7 10 9 7
8 2 9 11
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/518235.html
上一篇:嵌套串列中的分組熊貓資料框
下一篇:僅格式化非NaN的df行
