![](/img/trans.png)
[英]How to separate entries based on rows and columns in pandas dataframe
[英]Python, Pandas, How to separate dataframe based on columns
說我有一個像這樣的數據框:
mydata = [{'gender' : 'F', 'session': 0, 'score':23},
{'gender' : 'F', 'session': 1, 'score':24},
{'gender' : 'M', 'session': 0, 'score':22},
{'gender' : 'M', 'session': 1, 'score':32},
{'gender' : 'F', 'session': 0, 'score':33},
{'gender' : 'F', 'session': 1, 'score':33},
{'gender' : 'M', 'session': 0, 'score':44},
{'gender' : 'M', 'session': 1, 'score':44},
]
df = pd.DataFrame(mydata)
gender score session
0 F 23 0
1 F 24 1
2 M 22 0
3 M 32 1
4 F 33 0
5 F 33 1
6 M 44 0
7 M 44 1
如何創建基於會話和性別的一些新得分變量:比如female_0,feature_1,male_0,male_1。
非常感謝
IIUC,您需要使用groupby
dict comprehension
:
dfs = {'{}_{}'.format(i[0], i[1]):df for i, df in df.groupby(['gender','session'])}
print (dfs)
{'F_1': gender score session
1 F 24 1
5 F 33 1, 'M_0': gender score session
2 M 22 0
6 M 44 0, 'M_1': gender score session
3 M 32 1
7 M 44 1, 'F_0': gender score session
0 F 23 0
4 F 33 0}
print (dfs['F_1'])
gender score session
1 F 24 1
5 F 33 1
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.