如何检查data.frame中的每一行是否存在无效值/代码
我能知道如何检查R中的数据帧中是否有无效代码吗 我想检查Code1到Code5的变量是否与我预定义的代码帧/列表匹配 预定义代码帧/列表中的所有有效值:如何检查data.frame中的每一行是否存在无效值/代码,r,validation,match,R,Validation,Match,我能知道如何检查R中的数据帧中是否有无效代码吗 我想检查Code1到Code5的变量是否与我预定义的代码帧/列表匹配 预定义代码帧/列表中的所有有效值: 1,3,4,5,6,7,8,9,11 下面是我的数据框 Key Code1 Code2 Code3 Code4 Code5 1 1 8 15 NA 11 2 5 3 NA NA NA 3
1,3,4,5,6,7,8,9,11
下面是我的数据框
Key Code1 Code2 Code3 Code4 Code5
1 1 8 15 NA 11
2 5 3 NA NA NA
3 4 5 11 NA NA
4 11 2 NA NA NA
并希望得到如下结果
Key Code1 Code2 Code3 Code4 Code5 Result
1 1 8 15 NA 11 FALSE <-due to invalid code "15"
2 5 3 NA NA NA TRUE
3 4 5 11 NA NA TRUE
4 11 2 NA NA NA FALSE <-due to invalid code "2"
关键代码1代码2代码3代码4代码5结果
1 1 8 15 NA 11 FALSE我们可以在行中循环,然后使用%
中的%检查该行中的所有非NA元素是否都在向量('v1')中找到
df1$Result
df1$Result <- apply(df1[-1], 1, FUN = function(x) all(x[!is.na(x)] %in% v1))
df1$Result
#[1] FALSE TRUE TRUE FALSE
v1 <- c(1,3,4,5,6,7,8,9,11)