You need to enable JavaScript to run this app. 如何快速计算列内不同X分组对应Y值的最小值与最大值
优惠活动
大模型
产品
解决方案
定价
更多

如何快速计算列内不同X分组对应Y值的最小值与最大值

分组计算对应Y值最值的实现方法

不用逐组手动统计,直接用结构化数据工具的分组聚合功能就能一键算出所有结果,常用实现如下:

Python(Pandas 工具)

如果使用Python处理数据,将数据集读为DataFrame后执行一行代码即可:

df.groupby('X')['Y'].agg(Y_min='min', Y_max='max').reset_index()

执行后会直接输出所有X分组下对应的Y最小值、最大值,无需手动筛选每组数据。

R 工具

从你贴出的数据集打印格式来看,大概率是用R做数据处理,两种常用写法都可以快速实现:

  1. dplyr 语法:
    df |> 
      dplyr::group_by(X) |> 
      dplyr::summarise(Y_min = min(Y, na.rm = TRUE), Y_max = max(Y, na.rm = TRUE))
    
  2. data.table 语法(和你给出的数据集打印格式完全匹配):
    dt[, .(Y_min = min(Y, na.rm = TRUE), Y_max = max(Y, na.rm = TRUE)), by = X]
    

注意:如果数据集存在Y值缺失的情况,pandas的min/max默认会自动忽略空值;R中必须在min/max函数里加na.rm = TRUE参数,否则遇到空值会返回NA结果。

你当前数据集的计算结果

按照上述方法运行后,你会直接得到以下结果:

  • X=2:Y最小值为1.973203,最大值为1.998701
  • X=5:Y最小值为4.726402,最大值为4.975043
  • X=10:Y最小值为8.808622,最大值为9.719726
  • X=30:Y最小值为19.758713,最大值为24.593082

内容的提问来源于stack exchange,提问作者Zohaib

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.22 17:36:07