R表示组是否有价值

布沃
data=data.frame(GROUP=c(1,1,1,2,2,2,3,3,3,4,4,4),
VAR=c('A','B','C','A','B','C','A','B','C','A','B','C'),
SCORE=c(3,6,NA,NA,NA,NA,1,NA,5,5,2,NA),
NEWVAR=c(1,1,1,NA,NA,NA,2,2,2,1,1,1))

score1 = c(2,3,7)
score2 = c(0,5,6)

除了“ NEWVAR”外,我的所有列都有“数据”,我希望像这样创建它:

如果特定“组”的得分为1%in%,则为“ NEWVAR”赋予值“ 1”

如果对于特定的“组”,得分2%in%SCORE和得分1不在SCORE中,则将值'2'赋予'NEWVAR'

罗纳克·沙

由于您已使用in语法标记了此ifelsedata.table

library(data.table)

setDT(data)[, NEWVAR := ifelse(any(SCORE %in% score1), 1, 
                          ifelse(any(SCORE %in% score2), 2, NA_integer_)), GROUP]

data
#    GROUP VAR SCORE NEWVAR
# 1:     1   A     3      1
# 2:     1   B     6      1
# 3:     1   C    NA      1
# 4:     2   A    NA     NA
# 5:     2   B    NA     NA
# 6:     2   C    NA     NA
# 7:     3   A     1      2
# 8:     3   B    NA      2
# 9:     3   C     5      2
#10:     4   A     5      1
#11:     4   B     2      1
#12:     4   C    NA      1

我觉得也有fcase在开发版本的data.table这类似于case_whendplyr并使得编写这样的嵌套ifelse容易。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Swift-NSUserDefaults是否有价值?

来自分类Dev

检查任何输入是否有价值

来自分类Dev

单选按钮组在Chrome中具有价值,但在Firefox中不具有价值

来自分类Dev

如何检查SQL列是否有价值?

来自分类Dev

如何确定二维数组是否有价值?

来自分类Dev

如何检查数据属性是否有价值

来自分类Dev

如何检查深层物体是否有价值

来自分类Dev

PHP:检查数组键是否有价值

来自分类Dev

检查从存储过程返回的字段是否有价值?

来自分类Dev

如何检查隐藏字段是否没有价值?

来自分类Dev

如何使用Jquery检查表是否有价值

来自分类Dev

如何检查深层物体是否有价值

来自分类Dev

PHP没有价值

来自分类Dev

获取所有价值

来自分类Dev

AngularJS没有价值

来自分类Dev

AngularJS没有价值

来自分类Dev

具有价值的InnerHTML

来自分类Dev

具有价值和价值

来自分类Dev

$ rootscope没有持有价值

来自分类Dev

如果数组索引没有价值,是否会影响性能/内存使用情况

来自分类Dev

检查文本框是否有价值,使其他文本框为必需

来自分类Dev

检查文本框是否有价值,使其他文本框为必需

来自分类Dev

验证多个组合框/文本框是否有价值

来自分类Dev

在用于Android的测试设备上时,广告展示次数是否有价值?

来自分类Dev

在网站刷新后如何检查跨度是否有价值

来自分类Dev

Google Analytics:是否可以过滤原始数据以创建更有价值的指标?

来自分类Dev

如何检查对象的 1 个以上的属性是否有价值

来自分类Dev

如何添加没有价值的属性

来自分类Dev

Xpath /获得最有价值的祖先