作者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://www.ptt.cc/bbs/R_Language/M.1505316955.A.D95.html
→ celestialgod: 直接array不行嗎 09/13 23:37
→ celestialgod: array(1:12, c(2,2,3)) 09/13 23:37
※ 編輯: wheado (119.14.95.65), 09/13/2017 23:43:38
→ celestialgod: 而且範例出來的結果跟你預期應該不一樣 09/13 23:39
→ wheado: 抱歉大大,更正一下,是list結構,因為 09/13 23:44
→ wheado: list中各個矩陣維度可能不一樣。 09/13 23:44
推 KKbiger: 如果是你修改前的就 obj_A[1:length(obj_A)]<-num 直接填 09/13 23:46
→ wheado: 如果是list結構,就不能用array方式填入值QQ 09/13 23:47
→ wheado: 結果希望可以是 unlist(res_A) == num 結果為TRUE。 09/13 23:48