2013-07-26 72 views
-1

我在“R”中有一个名为p_int的对象。这是1599个峰值强度数字的列表。 该列表每8个值中就有一个单独同位素峰。与其他7个峰相比,该峰是最丰富的(最大峰值)。在R中循环提取数据

因此,我想要做的是写一个循环,处理批次为8的p_int。 因此,它将采用前8个值,找到最大值并将其添加到名为“m_iso”的新对象。 它会继续,看看值9-16,17-24,25-32等

任何意见或代码,以帮助我实现这样的循环将不胜感激。

谢谢,

Stephen。

+1

显示您的尝试......代码不是神奇地在SO中生成的。 – NikolaB

+0

这可能会让你开始:http://manuals.bioinformatics.ucr.edu/home/programming-in-r#TOC-Loops – Xethron

回答

3

到1599年你实际上意味着1600?由于1599是不是8.我要去整除假设这是真的,并提供以下内容:

m_iso <- sapply(split(p_int,rep(1:200,each=8)),max) 

或者:

m_iso <- apply(matrix(p_int,nrow=8),2,max) 

这将给你对每个最大值的矢量一组八个观测值。

+0

第二种解决方案。 – Roland