r - 在 R 中通过多数投票将因素合并为一个

标签 r

我有三个具有相同级别数的因子向量,如下所示:

eins <- c("no", "yes", "no")
zwei <- c("no", "no", "no")
drei <- c("yes", "yes", "no")

现在我需要根据多数因素水平将它们组合起来。所以在这个例子中:

combined
[1] "no" "yes"   "no"

我知道如何构建一个 foo 循环,然后使用 if 语句创建一个新向量,但我想知道 R 中是否有更快/更好的方法。

感谢您的帮助!

最佳答案

类似于以下内容:

a <- apply(cbind(eins, zwei, drei), 1, table)
sapply(a, function(x) names(x)[which.max(x)])
#[1] "no"  "yes" "no"

关于r - 在 R 中通过多数投票将因素合并为一个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51486916/

相关文章:

r - 使用 dplyr 的 do 来执行引导复制

r - 如何从 R 中的自定义分布运行蒙特卡罗模拟

r - 对颜色/流程进行分组,以便条形图创建第一个条形图

R 验证库

r - knitr 没有将 pdf 输出中的数字对齐到中心——替代方案?

r - 将边际总数添加到 R 中的 ggplot 热图

html - 使用 knitr(从 .Rhtml 到 html): how to embed a link in an R Figure?

r - 使用 mutate 中的 distm 函数计算两点之间的距离

r - 如何正确关闭R中的连接,以便释放其连接 'slot'?

r - 序列识别、出现次数计数和部分序列检索