python - 系列的 Groupby 和 max

标签 python pandas group-by

我正在尝试获取系列中每组的最大值:

返回

0
0    0.071429
0    0.071429
1    0.083333
1    0.333333
1    0.333333
1    0.083333
3    0.058824
3    0.058824
Name: 1, dtype: float64`

灵感来自How to group a Series by values in pandas? ,我尝试:

b = a.groupby(a).max()
return b

但是我丢失了原始索引值 0、1 和 3 的名称,奇怪的是,它们甚至没有被找到的最大值替换。

1
0.058824    0.058824
0.071429    0.071429
0.083333    0.083333
0.333333    0.333333
Name: 1, dtype: float64

有没有办法获取最大值,并在 groupby 之后保留索引值?

最佳答案

您需要指定系列的索引,而不是系列本身,作为 groupby 的参数:

a.groupby(a.index).max()

关于python - 系列的 Groupby 和 max,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53365544/

相关文章:

python - 我的第一个程序

Python:在多列中查找字符串并将其返回到新列中

python - 如何替换列中的重复值以使其基于 Pandas 中的另一列是唯一的?

python - 找到新的导出目的地 : Data science - groupby and isin

python - 如何将 CSV 文件直接发送到 FTP 服务器

python - 打印全名python的第一个字母

python - 如何将属性或对象注入(inject)到 Django Rest Framework 中的 View 中?

python - 使用前几天同一小时的平均值填充 NaN

javascript - 在 sqlite 请求中使用 Group By 时选择两个结果

mysql - 将两个 group by 与一个 select 语句一起使用