如何在相应的行的每一行中获得具有最多重复值的输出数据框?
df <- data.frame(x=seq(1:10), y=seq(1:10), z=sample(1:10), w=sample(1:10), v=sample(1:10))
我试过了apply
,但它没有输出正确答案:apply(df, 1, frequency)
通过以下方式解决:
getmode <- function(v) {
uniqv <- unique(v)
uniqv[which.max(tabulate(match(v, uniqv)))]
}
然后
apply(df, 1, getmode)