[問題] 非手寫輸入formula (已解決)

作者: EricTao   2015-01-20 18:42:02
[問題類型]:
程式諮詢(我想用R 做某件事情,但是我不知道要怎麼用R 寫出來)
[軟體熟悉度]:
入門(寫過其他程式,只是對語法不熟悉)
[問題敘述]:
正在摸索用SHINY來寫網頁,請問如何不靠手寫輸入formula?
例如像這樣一個函式
glm1 <- glm(Tr ~ age + educ + black + hisp + married + nodegr +
+ re74 + re75, family = binomial, data = lalonde)
變數是從CSV檔讀取的Header,不是固定的變數名稱。
另外也在考慮也許從網頁輸入EVAL? 在EVAL欄位產生default值,
這樣可以手動設定方程式的係數..
[關鍵字]:
shiny, formula
作者: Wush978 (拒看低質媒體)   2015-01-20 18:55:00
?reformulate?as.formula以上是我知道的兩個關鍵字,希望有幫助
作者: EricTao   2015-01-20 19:52:00
感謝,剛剛有在看as.formula但是不太確定
作者: celestialgod (天)   2015-01-21 12:36:00
我理解是類似這樣的東西... as. formula(paste(responseName, paste(names(dataname[names(datname! =responseName)]), sep='+'), sep='~' )更正成names(dataname)[names(datname)! =responseName]這樣才對
作者: Wush978 (拒看低質媒體)   2015-01-21 13:29:00
reformulate(colnames(data_frame_obj))
作者: celestialgod (天)   2015-01-22 10:28:00
reformulate原來這樣用 學了一招!!
作者: Wush978 (拒看低質媒體)   2015-01-22 18:11:00
還有 ~ . 也可以all in
作者: EricTao   2015-01-27 16:49:00
感謝~用reformulate達成 能直接用dataFrame太棒了0.0不過我第一個column是ID,研究下怎麼把它拿掉
作者: Wush978 (拒看低質媒體)   2015-01-28 21:17:00
tail(x, -1) 可以拿掉x 的第一個element

Links booklink

Contact Us: admin [ a t ] ucptt.com