Re: [問題] 迴圈中有迴圈 如何用apply系列函數完成

作者: celestialgod (天)   2016-03-24 21:17:16
※ 引述《gbd37 (有夠瞎)》之銘言:
: [問題類型]:
: 效能諮詢(我想讓R 跑更快)
: [軟體熟悉度]:
: 入門(寫過其他程式,只是對語法不熟悉)
: [問題敘述]:
: 如範例
: 任意選取資料來跑for迴圈
: 因原本所寫函數類似範例迴圈中有迴圈又有迴圈
: 發現跑的效能速度很慢,想改善速度。
: 知道可以運用apply函數,但試了幾次都無法跑出想要結果(除錯除好久@_@)
: 想請教大大們Orz,若是像範例code該如何不用for只用apply系列函數寫出來呢?
: 還望指導,小弟必當認真學習
: 謝謝
: [程式範例]:
: http://pastie.org/10772317
: [環境敘述]:
: win10 R:3.2.4
: [關鍵字]:for apply
這直接用矩陣乘法就可以搞定了,用apply不會快到哪去
datx <- as.matrix(iris[1:32,-5])
daty <- as.matrix(mtcars[,1:4])
result11 <- datx %*% t(datx)
all.equal(result1, result11, check.attributes = FALSE)
# TRUE
result21 <- datx %*% t(daty)
all.equal(result2, result21, check.attributes = FALSE)
# TRUE
作者: gbd37 (我想抓波波)   2016-03-25 00:00:00
瞭解 謝謝Orz

Links booklink

Contact Us: admin [ a t ] ucptt.com