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