Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何在每行中显示分组变量计数_Python_Python 3.x - Fatal编程技术网

Python 如何在每行中显示分组变量计数

Python 如何在每行中显示分组变量计数,python,python-3.x,Python,Python 3.x,我想为下面的数据显示每个评级行中给定月份的给定评级计数。这意味着第0行和第3行将有一个2,因为第1个月有两个10评级 test = {'Rating': [10,9,8,10,8,6,4,3,0,7,2,5], 'Month': [1,2,3,1,3,2,1,2,3,1,2,3]} test_df = pd.DataFrame(data=test) 我尝试了以下方法,但没有多大帮助: test_df['Rating_totals'] = test_df.groupby(['Month'])['

我想为下面的数据显示每个评级行中给定月份的给定评级计数。这意味着第0行和第3行将有一个2,因为第1个月有两个10评级

test = {'Rating': [10,9,8,10,8,6,4,3,0,7,2,5], 'Month': [1,2,3,1,3,2,1,2,3,1,2,3]}
test_df = pd.DataFrame(data=test)
我尝试了以下方法,但没有多大帮助:

test_df['Rating_totals'] = test_df.groupby(['Month'])['Rating'].count()
有办法做到这一点吗?

使用
值\u计数()

要按月份和评级对结果进行排序,请执行以下操作:

total_rankings = test_df[['Month', 'Rating']].value_counts().sort_index()
使用
apply
将每行的总计数作为新列添加到
test_df

test_df['total_rankings'] = test_df.apply(lambda row: total_rankings.loc[row['Month', row['Ratings']], axis=1)
使用
值\u计数()

要按月份和评级对结果进行排序,请执行以下操作:

total_rankings = test_df[['Month', 'Rating']].value_counts().sort_index()
使用
apply
将每行的总计数作为新列添加到
test_df

test_df['total_rankings'] = test_df.apply(lambda row: total_rankings.loc[row['Month', row['Ratings']], axis=1)

谢谢如何在df中创建一个每行都显示计数的新列?换句话说,我怎样才能创建一个列,在第0个月和第3个月的评分为10时显示2?由于某些原因,它无法将每个月的总计与每个评分相匹配。取而代之的是,我在前十行填上了所有月份的总数,加上评级。奇怪的是,对我来说,它是按预期工作的。你能显示你正在使用的完整代码以及你得到的结果吗?注意到缺少一个括号。现在效果很好。非常感谢你!谢谢如何在df中创建一个每行都显示计数的新列?换句话说,我怎样才能创建一个列,在第0个月和第3个月的评分为10时显示2?由于某些原因,它无法将每个月的总计与每个评分相匹配。取而代之的是,我在前十行填上了所有月份的总数,加上评级。奇怪的是,对我来说,它是按预期工作的。你能显示你正在使用的完整代码以及你得到的结果吗?注意到缺少一个括号。现在效果很好。非常感谢你!