全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 R语言论坛
1329 4
2016-03-15
QQ图片20160315195104.png
如图所示,有没有可以快速得到 39,66,99 的方法,因为当我列很多的时候,相当于做 p*(p-1)/2次相加。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2016-3-15 21:28:09
复制代码
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2016-3-16 09:54:12
楼上同学的解决方案中有一个小错误,代码的第三行应该是:
colprod <- vector(length = nrow(x))
可能是编的快,疏忽了。

楼主的这个问题,我尝试用向量化来解决,发现力不从心。该问题似乎是循环起来很简单,但是向量化非常吃力的那种问题,并且,该问题的计算量随着列数的增长而呈现几何级数地增加的。在我的电脑中,当列数过1000后,耗时就比较明显了。于是,我想用Rcpp包的C++程序来解决这个问题:
复制代码
在我的电脑上运行,速度提升大概36倍左右,不是很让人满意,是不是我的程序还有问题,请大神指点。



二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2016-3-16 16:48:59
stzhao 发表于 2016-3-15 21:28
谢谢。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群