[英]Remake columns in pivot_table,pandas
我已經堆砌成一個姓。 我樞紐這個數據框。
from pandas import DataFrame,Series
d = {'Sex' : Series(["Male","Male","Female","Female","Female","Male"]),
'Rank' : Series(["A","B","C","A","B","C"]),
'Num' : Series([1,2,3,4,5,6]),
'States' : Series(["Ohio","Oregon","NC","Michigan","NY"])
}
df = DataFrame(d)
print df
df_pvt = df.pivot_table("Num",cols=['States','Sex'],rows="Rank")
print df_pvt
該數據框的列為ndarray。
print df_pvt.columns.values
type(df_pvt.columns.values)
我想重新命名為這樣的組合列。
colnames = ['Michigan_Female','NC_Female','NY_Female','Ohio_Male','Oregon_Male']
我認為我必須做一個函數來組合這些列,但是如果您知道執行此操作的簡便方法,請告訴我任何建議。
謝謝閱讀。
最簡單的方法可能是在透視之前合並這些列:
In [17]: df['kind'] = df.States + '_' + df.Sex
In [18]: df.pivot_table('Num', cols=['kind'], rows='Rank')
Out[18]:
kind Michigan_Female NC_Female NY_Female Ohio_Male Oregon_Male
Rank
A 4 NaN NaN 1 NaN
B NaN NaN 5 NaN 2
C NaN 3 NaN NaN NaN
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.