到目前为止我有这个代码。我试图查看有多少变量包含重复的字母。例如,在变量1中,如果我有{a,b,c,c,d},我希望它返回true。 Haven完成了R中的循环。有什么帮助吗?
wordSoup<-replicate(100,(replicate(5,sample(letters,1))))
notUnique=0
for (i in wordSoup) {
if (anyDuplicated(wordSoup[,i])==1) {
notUnique=notUnique+1
}
}
答案 0 :(得分:1)
这是一个没有for循环的选项。它将返回一个具有相同列号长度的逻辑向量。 TRUE
表示存在重复项,而FALSE
表示该列中的所有字母都是唯一的。
apply(wordSoup, 2, function(x) any(table(x) > 1))
另一个想法是使用unique
获取唯一字母,然后使用length
查看唯一字母的数量。如果它小于5,则表示存在重复项并返回TRUE
。
apply(wordSoup, 2, function(x) length(unique(x)) < 5)