对于我的数据帧的每一行,我目前正在尝试选择所有重复的值等于4,以便将它们设置为"等于"NA.
我的数据框是这样的:
dat <- read.table(text = "
1 1 1 2 2 4 4 4
1 2 1 1 4 4 4 4",
header=FALSE)
Run Code Online (Sandbox Code Playgroud)
我需要获得的是:
1 1 1 2 2 4 NA NA
1 2 1 1 4 NA NA NA
Run Code Online (Sandbox Code Playgroud)
我找到了有关如何消除重复行或列的信息,但我真的不知道如何继续这里..非常感谢任何帮助
有时您会想要避免,apply因为它会破坏数据框对象的多类功能.这是一种by方法:
> do.call(rbind, by(dat, rownames(dat),
function(line) {line[ duplicated(unlist(line)) & line==4 ] <- NA; line} ) )
V1 V2 V3 V4 V5 V6 V7 V8
1 1 1 1 2 2 4 NA NA
2 1 2 1 1 4 NA NA NA
Run Code Online (Sandbox Code Playgroud)