作者wheado (principal component QQ)
看板R_Language
标题[问题] 保持物件结构,将值依照预设填入问题。
时间Wed Sep 13 23:35:47 2017
[问题类型]:
程式谘询(我想用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
[关键字]:
惭愧不知道怎麽找相关资讯。
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 119.14.95.65
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/R_Language/M.1505316955.A.D95.html
1F:→ celestialgod: 直接array不行吗 09/13 23:37
2F:→ celestialgod: array(1:12, c(2,2,3)) 09/13 23:37
※ 编辑: wheado (119.14.95.65), 09/13/2017 23:43:38
3F:→ celestialgod: 而且范例出来的结果跟你预期应该不一样 09/13 23:39
4F:→ wheado: 抱歉大大,更正一下,是list结构,因为 09/13 23:44
5F:→ wheado: list中各个矩阵维度可能不一样。 09/13 23:44
6F:推 KKbiger: 如果是你修改前的就 obj_A[1:length(obj_A)]<-num 直接填 09/13 23:46
7F:→ wheado: 如果是list结构,就不能用array方式填入值QQ 09/13 23:47
8F:→ wheado: 结果希望可以是 unlist(res_A) == num 结果为TRUE。 09/13 23:48