You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Pandas DataFrame中获取指定列最大最小值并生成新DataFrame

实现方案

你可以通过两种方式实现需求,第二种方案通用适配性更强:

方案1:适配你当前示例(所有行name相同的场景)

直接提取所需的三个值构造新DataFrame即可:

# 提取对应字段的目标值
max_data1 = df['data1'].max()
min_data2 = df['data2'].min()
name_val = df['name'].iloc[0]

# 生成新DataFrame
new_df = pd.DataFrame([{
    'data1': max_data1,
    'data2': min_data2,
    'name': name_val
}])

注意:你之前尝试的df[data1].max()是错误写法,列名字符串需要加引号,正确写法为df['data1'].max()


方案2:通用场景(支持多name分组统计)

如果你的数据包含多个不同name,需要每个name分别取对应data1最大值、data2最小值,直接用分组聚合即可:

new_df = df.groupby('name', as_index=False).agg(
    data1 = ('data1', 'max'),
    data2 = ('data2', 'min')
)

该写法无需提前判断name是否唯一,单name、多name场景都能输出正确结果。


内容的提问来源于stack exchange,提问作者Shrilaxmi M S

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 00:30:02