我有许多数据序列,我想用R选择最长的序列

时间:2015-10-28 16:52:11

标签: r

我正在研究大量序列(核苷酸序列),我想从中选择最长的序列(具有最大长度的序列)。 我的序列是列表的元素。 我正在研究R软件。 有关代码的任何帮助吗?哪个功能可用?

1 个答案:

答案 0 :(得分:0)

如果您的列表名为l,则使用sapply(l,length)将返回一个向量,其中包含列表中每个元素的长度。要选择最长的序列,请使用

s<-sapply(l,length) # or use s<-lengths(l) (Richard Scriven's comment)
longest<-l[[match(max(s),s)]] 

示例:

x<-rnorm(100)
y<-rnorm(1000)
z<-rnom(10)
l<-list(x,y,z)
s<-sapply(l,length)
longest<-l[[match(max(s),s)]] 

length(longest)
[1] 1000