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

R语言按两个条件对数据分组并生成新数据表的实现咨询

你可以直接使用data.table的原生语法实现需求,fread导入的结果本身就是data.table格式,无需额外转换:

实现代码

方法1:原地修改原有表,新增分组列

# 新增numberOfAdjustments分组列
result[, numberOfAdjustments := fifelse(totalAdjustments == 1, "oneAdjustment", "twoOrMoreAdjustments")]

# 提取需要的两列得到最终表
final_dt <- result[, .(numberOfAdjustments, accuracy)]

注:fifelse是data.table提供的高性能判断函数,效率远高于基础版ifelse,如果习惯用基础函数也可以直接替换成ifelse

方法2:不修改原有表,直接生成新表

final_dt <- copy(result)[, numberOfAdjustments := fifelse(totalAdjustments == 1, "oneAdjustment", "twoOrMoreAdjustments")][, .(numberOfAdjustments, accuracy)]

运行后final_dt就是你需要的结构的数据表。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 11:06:00