Re: [問題] eval 使用問題
你的問題大概可以分成二個階段。
1. 在 R 中的字串合併常用 paste() 或它的子集 paste0() 來做。
2. 在 R 中的 eval 不像 matlab 那麼直接,
而是要靠 eval(parse(text = 字串)) 來進行。
所以你研究一下以下 R code。
run <- c("net", "fsns", "flns")
for(i in run) {
txt <- paste0(i, "Var_sum1=sum(", i, "_people)")
cat(txt, "\n") # 看看字串對不對
eval(parse(text = txt)) # 針對 txt 做 eval。
}
※ 引述《Tolkien (怪獸)》之銘言:
: [問題類型]:
:
: 程式諮詢(我想用R 做某件事情,但是我不知道要怎麼用R 寫出來)
:
: [軟體熟悉度]:
: 請把以下不需要的部份刪除
: 新手(matlab background)
:
: [問題敘述]:
: 字串變變數
: [程式範例]:
: 在matlab 字串矩陣要寫入迴圈中我會用:
: run = { 'net' 'fsns' 'flns' }
: for in=1:3
: eval(['' run{in} 'Var_sum1=sum(' run{in} '_people'])
: endif
: 這個代表我執行
: netVar_sum1 =sum (net_people)
: fsnsVar_sum1 =sum (fsns_people)
: flsnVar_sum1 =sum (flns_people)
: 請問在R 要如何把字串矩陣寫入迴圈
: 我的Code:
: run=c('net,'fsns','flns')
: for(i in 1:3){
: ????????????
: }
: 但還是不行
: 請高手幫幫忙 謝謝
--
http://apansharing.blogspot.com/
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 125.230.85.122
※ 文章網址: https://www.ptt.cc/bbs/R_Language/M.1423174145.A.D26.html
→
02/06 06:29, , 1F
02/06 06:29, 1F
→
02/06 06:32, , 2F
02/06 06:32, 2F
討論串 (同標題文章)
R_Language 近期熱門文章
PTT數位生活區 即時熱門文章