从R中的3个不同向量中找出最长的长度

时间:2018-03-27 15:26:07

标签: r variable-length

我不知道是否有这个功能,但我有3个不同长度的数据帧。我想知道是否有办法找到哪一个是最大长度并将其加载到变量中。例如:

x <- c(1:10)
y <- c(1:20)
z <- c(1:40)

我想用z作为我的变量,因为它的长度最长。有没有一个函数可以搜索这三个变量(x,y,z)并给我一个长度最长的变量?

由于

2 个答案:

答案 0 :(得分:5)

我们可以将其放在list中,使用lengths创建最大长度的索引,并从list

中提取这些元素
lst[which.max(lengths(lst))]

数据

lst <- list(x, y, z)

答案 1 :(得分:4)

如果您有数据框而不是向量:

lst[which.max(sapply(lst,nrow))]

数据

lst <- list(df1, df2, df3)