[问题] 保持物件结构,将值依照默认填入问题。

楼主: wheado (principal component QQ)   2017-09-13 23:35:47
[问题类型]:
程式咨询(我想用R 做某件事情,但是我不知道要怎么用R 写出来)
效能咨询(我想让R 跑更快)
[软件熟悉度]:
入门(对语法不熟悉)
[问题叙述]:
保留物件结构,假设我有一个物件如下:
obj_A <- list(matrix(NA,nrow = 2,2),
matrix(NA,nrow = 3,2),
matrix(NA,nrow = 2,1));
假设我有一些数值,如下:
num <- 1:12;
有什么办法可以很快的
将 num 中的数字按照 R 内建排列矩阵的方式将值填入,
但又不破坏物件的结构。
我试过写for循环来解决,但是当矩阵及数值是大量的时候会等很久,
例如每个矩阵都是5000*2000这种的QQ
想问有没有类似"将值填入物件"的指令,让coding可以更简单快速。
[程式范例]:
https://ideone.com/HPIsOg
[环境叙述]:
windows10
[关键字]:
惭愧不知道怎么找相关资讯。
作者: celestialgod (天)   2017-09-13 23:37:00
直接array不行吗array(1:12, c(2,2,3))而且范例出来的结果跟你预期应该不一样
楼主: wheado (principal component QQ)   2017-09-13 23:44:00
抱歉大大,更正一下,是list结构,因为list中各个矩阵维度可能不一样。
作者: KKbiger (UUUU)   2017-09-13 23:46:00
如果是你修改前的就 obj_A[1:length(obj_A)]<-num 直接填
楼主: wheado (principal component QQ)   2017-09-13 23:47:00
如果是list结构,就不能用array方式填入值QQ结果希望可以是 unlist(res_A) == num 结果为TRUE。

Links booklink

Contact Us: admin [ a t ] ucptt.com