作者microcat (微喵)
看板Statistics
标题[问题] R 的运算(平均值)
时间Thu Oct 6 09:46:18 2011
目前手边有笔资料(80000*100)
要将每笔资料(100行)都减去前10笔资料(Control)的平均数
目前的写法
nr <- 80000
nl <- 100
for(i in 1:nr){
mean_A <- mean(c(Dqn[i,1],Dqn[i,2],Dqn[i,3],Dqn[i,4],Dqn[i,5]
,Dqn[i,6],Dqn[i,7],Dqn[i,8],Dqn[i,9],Dqn[i,10]))
for(j in 1:nl){
FC_HC[i,j] <- Dqn[i,j] - mean_A
}
}
但是发现这样的程式很没效率(不知道是不是因为双回圈的因素),
想请教是否还有更迅速的方法, 谢谢各位~
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.112.129.5
1F:→ clickhere:FC_HC <- Dqn - rowMeans(Dqn[, 1:10]) 10/06 09:58
2F:→ rockken:这是你要的? Dqn-rowMeans(Dqn[,1:10]) 10/06 10:04
3F:→ microcat:That is what I want. thanks 10/06 13:47