如何计算R中大型矩阵(affymetrix基因表达数据)中所有列的范围和方差?
你好 我有一个像上面这样的文本文件。我想计算所有列(探测)的范围和方差,并有一个输出文件,假设如下所示(所有探测的范围和方差值)- 我不关心此分析的行名(containing.CEL)。非常感谢你的帮助 诚恳如何计算R中大型矩阵(affymetrix基因表达数据)中所有列的范围和方差?,r,matrix,range,variance,R,Matrix,Range,Variance,你好 我有一个像上面这样的文本文件。我想计算所有列(探测)的范围和方差,并有一个输出文件,假设如下所示(所有探测的范围和方差值)- 我不关心此分析的行名(containing.CEL)。非常感谢你的帮助 诚恳 AR使用应用功能,其中2表示按列 data.frame( Probe_ID = colnames(df), Range = apply(df,2,function(x) paste(range(x),collapse=",")), Variance = apply
AR使用
应用
功能,其中2
表示按列
data.frame(
Probe_ID = colnames(df),
Range = apply(df,2,function(x) paste(range(x),collapse=",")),
Variance = apply(df,2,var)
)
示例数据:
df <- data.frame(a=1:34,b=2:35)
如果您想要一个稍微更有效的方法,
matrixStats
具有colRanges
和colVars
,非常适合这种矩阵操作:
库(matrixStats)
matdf%>%汇总所有(列表(最小值=最小值,最大值=最大值,方差=变量))
。如果必须将它们放在同一单元格中,dat%%>%summary_all(list(range=~range(.x)%%>%paste0(collapse=“,”,variance=var))
我已经更新了我的答案,现在效果很好。我已经修复了这个答案,并添加了一个示例,作为快速简单的概念证明。非常感谢你!!
Probe_ID Range Variance
a a 1,34 99.16667
b b 2,35 99.16667