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

R语言如何使用Aggregation function计算各供应商Pass合格率

实现方案

你原来的代码存在两处错误:

  • 聚合函数名拼写错误,应为aggregate而非aggregation
  • 分组字段名错误,你的数据集里分组列是Supplier,不存在GlassSupplier字段

以下是符合要求的实现,用标准聚合函数aggregate搭配自定义统计逻辑完成分组计算:

# 你已有的数据构造代码
Supplier <- c('A','A','A','B','B','A')
Reliability<-c('Pass','Fail','Fail','Pass','Pass','Pass')
df<- data.frame(Supplier,Reliability)

# 自定义聚合用统计函数,计算单组内Pass的占比
calc_pass_pct <- function(reliability_col) {
  pass_num <- sum(reliability_col == "Pass")
  total_num <- length(reliability_col)
  # 输出为百分比格式,可根据需要调整保留小数位数
  paste0(round(pass_num / total_num * 100, 0), "%")
}

# 按Supplier分组聚合计算
result <- aggregate(Reliability ~ Supplier, data = df, FUN = calc_pass_pct)
# 修改列名匹配你需要的输出格式
colnames(result) <- c("Supplier", "Pass%")

运行后得到的result就是你要的结果:

SupplierPass%
A75%
B100%

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 23:27:03