python dataframe每组什么应用函数没有循环

标签 python pandas group-by pandas-groupby data-science

我有一个数据框

df = 
type value
 A     5
 A     7
 B     2
 B     6
 A     1

我要为每个列的组应用函数 type ,所以排名将适用于每种类型,新的 df 将是
df = 
type value rank
 A     5    1
 A     7    0
 B     2    1
 B     6    0
 A     1    2

最佳答案

这可以通过 sort_values 来完成其次是 groupby().cumcount() :

df['rank'] = df.sort_values('value', ascending=False).groupby('type').cumcount()

输出:
  type  value  rank
0    A      5     1
1    A      7     0
2    B      2     1
3    B      6     0
4    A      1     2

关于python dataframe每组什么应用函数没有循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61143150/

相关文章:

SQLite正确查询

python - 执行器何时(以及如何)将控制权交还给事件循环?

python - Pandas v0.20 在乘以数据帧列时返回 NotImplemented

python - 删除缺失值的插值时间序列图

python - 如何使 Pandas 数据框 Fortran 类型有序

android - GreenDAO groupby 子句

python - 在命令行上编写函数和运行程序

在 __init__ 中定义和设置的 Python 模拟属性

Python:QuickBooks API 集成

Mysql查询以获取按月分组的最近6个月的帖子