groupby函数获取每个组中的最后一个值 - Python

本文介绍了如何在Python的pandas库中利用groupby函数结合nth和head(1)方法,来获取数据框中每个组的最后一个值。通过示例代码详细解释了这一操作过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

groupby函数获取每个组中的最后一个值 - Python

在Python中,pandas库提供了一个非常方便的函数 - groupby函数,用于将数据根据指定的一列或多列分组,并对每个组进行各种操作。其中,nth函数可以用来获取每个组中的指定位置上的值。

但有时候我们需要获取的是每个组中的最后一个值,该怎么办呢?这里介绍一个小技巧,即将获取最后一个值的问题转换为获取倒数第二个值,再用head(1)函数进行筛选。

下面是一个简单的示例代码:

import pandas as pd

# 创建示例数据
data = {'group': ['A', 'A', 'B', 'B', 'B', 'C'],
        'value': [1, 2, 3, 4, 5, 6]}
df = pd.DataFrame(data)

# 获取每个组的最后一个值
last_vals = df.groupby('group').nth(-2).reset_index(drop=True)
last_vals = last_vals.groupby('group').head(1).reset_index(drop=True)
print(last_vals)

运行结果如下:

  group  val
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值