作者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
→ clickhere:FC_HC <- Dqn - rowMeans(Dqn[, 1:10]) 10/06 09:58
→ rockken:這是你要的? Dqn-rowMeans(Dqn[,1:10]) 10/06 10:04
→ microcat:That is what I want. thanks 10/06 13:47