Извините, если я задаю тривиальный вопрос, но дело в том, что я провел несколько часов, читая ответы в этой базе данных, и не смог найти то, что ищу.
У меня есть кадр данных, похожий на этот
df=data.frame(v1=c(24,15, 0, 7,36,10), c1=c(22,15,0,0,28,11), v2=c(0,10,0,19,0,0), c2=c(0,7,0,22,0,0), v3=c(54,22,28,55,62,38), c3=c(44,23,22,66,71,44))
(В оригинале, конечно, строк и столбцов гораздо больше)
Я хотел бы создать два столбца с максимальным и вторым по величине значением всех столбцов «v».
Для максимума это работает:
df$max.v=mapply(FUN=max, df$v1, df$v2, df$v3, na.rm=TRUE)
Но я не могу найти способ сделать это для второго по величине значения. Наверное, нужна какая-то функция, но я не нашел, как это сделать.