Pandas groupby不能有效地应用
以下是我正在处理的排名数据框架:Pandas groupby不能有效地应用,pandas,dataframe,Pandas,Dataframe,以下是我正在处理的排名数据框架: Q6 Q17 1 Consultant NaN 2 Other NaN 3 Data Scientist Java 4 Not employed Python 5 Data Analyst SQL 我想: 计算“数据科学家”使用每种编程语言的次数,并将频率记录在“计数”列中 按降序排列计数 重置索引并将Q17重命名为语言 下面的代码不会对每种语言进
Q6 Q17
1 Consultant NaN
2 Other NaN
3 Data Scientist Java
4 Not employed Python
5 Data Analyst SQL
我想:
ranking_data = ranking_data[ranking_data.Q6 == 'Data Scientist']
ranking_data_summary = ranking_data.copy().rename(columns = {'Q17':'Language'})
ranking_data_summary['counts'] = ranking_data_summary.groupby('Language')
['Language'].transform('count')
ranking_data_summary.sort_values('counts',ascending = False, inplace = True)
ranking_data_summary.reset_index(inplace = True)
我做错了什么?让事情变得比需要的更复杂
pd.crosstab(df.Q6,df.Q17)
但是你可以做df.query('Q6==“数据科学家”).Q17.value_counts()
这应该很好:ranking_Data[ranking_Data[“Q6”]=“Data Scientist”]。groupby(“G17”).count()
@piRSquared我需要返回一个数据帧本身。。无论如何谢谢你!