Re: [問題] lm()與資料輸出
你在推文中的補充說明還是不清不楚。
不過我猜你要的只是 eval 硬幹。
a <- rnorm(10)
b <- rnorm(10)
c <- rnorm(10)
d <- data.frame(a, b, c)
txt <- paste0(names(d)[1], "~", names(d)[2], "+", names(d)[3])
f <- eval(parse(text = txt))
summary(lm(f, data = d))
這個例子中,只要被讀進去的 data frame 叫作 d,且其中欄位順序不變,
則欄位的名字(在此例就是 a、b 和 c)是無所謂的。
重點在倒數第二列和第三列,看看是不是你要的吧。
如果我猜錯你要的,請你把問題說明得更具體一點。
這裡熱心的人很多,
但請不要讓熱心的人花大部份的時間在猜發問者的問題到底是什麼啦。
※ 引述《w2a3n4g5 (MORRIS.W)》之銘言:
: - 問題: 當你想要問問題時,請使用這個類別
: [問題類型]:
: 程式諮詢(我想用R 做某件事情,但是我不知道要怎麼用R 寫出來)
: [軟體熟悉度]:
: 入門(寫過其他程式,只是對語法不熟悉)
: [問題敘述]:
: 大家好我又來問問題了QQ
: 目前遇到的問題如下
: 先讀入資料檔 , 再透過commandline給定參數去決定自變數 ,應變數的位置
: 程式碼大略如下
: read.table(data,"路徑")
: y <- data[[k1]]
: x1 <- data[[k2]]
: x2 <- data[[k3]]
: y:應變數 , x1 , x2 皆為連續型自變數 , 不須轉換成分類變數
: 其中k1,k2,k3行的名稱分別為 weigh , A ,B
: output <- lm(y ~ x1 + x2,data)
: summary(output)
: 則會出現下列結果
: Estimate Std. Error t value Pr(>|t|)
: (Intercept) 26.23730 5.93517 4.421 1.08e-05 ***
: data[, k2] 0.01520 0.01138 1.336 0.1819
: data[, k3] -0.90883 8.18376 -0.111 0.9116
: 但我希望summary後的結果像這樣
: Estimate Std. Error t value Pr(>|t|)
: (Intercept) 26.23730 5.93517 4.421 1.08e-05 ***
: A 0.01520 0.01138 1.336 0.1819
: B -0.90883 8.18376 -0.111 0.9116
: 就是如同 lm (weigh ~ A+B , data=data)的效果
: 請問我再 lm() 中 該怎麼寫呢?
: 已經試過很多方式例如 names(data)[k1] 之類的方式lm當中 , 但還是失敗了
: 也看過help(lm)了 ,不太了解內部放的y~x屬於何種型態
: 因為檔案是從外不讀入所以行的名稱不固定不能寫死QQ
: 第二個問題是 , 假設我將檔案輸出了 , 程式碼大略如下
: write.table(summary(output),"路徑")
: 假設輸出的是txt檔 , 前面都會有數字1,2...... 就像下面那樣
: "x"
: "1" ""
: "2" "Call:"
: "3" "lm(formula = data[, f] ~ data[, c1] + data[, c2] + data[, c3], "
: "4" " data = data
: 請問是否有辦法再輸出時去除掉那些數字呢?
: 謝謝各位QQ
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.128.117.75
※ 文章網址: http://www.ptt.cc/bbs/R_Language/M.1411538660.A.C46.html
※ 編輯: andrew43 (140.128.117.75), 09/24/2014 14:06:54
推
09/24 14:09, , 1F
09/24 14:09, 1F
→
09/24 15:33, , 2F
09/24 15:33, 2F
→
09/24 15:33, , 3F
09/24 15:33, 3F
→
09/24 16:36, , 4F
09/24 16:36, 4F
→
09/24 16:39, , 5F
09/24 16:39, 5F
→
09/24 18:13, , 6F
09/24 18:13, 6F
推
09/25 09:48, , 7F
09/25 09:48, 7F
→
09/25 09:49, , 8F
09/25 09:49, 8F
→
09/25 09:52, , 9F
09/25 09:52, 9F
→
09/25 09:53, , 10F
09/25 09:53, 10F
推
09/25 13:07, , 11F
09/25 13:07, 11F
→
09/25 14:58, , 12F
09/25 14:58, 12F
討論串 (同標題文章)
R_Language 近期熱門文章
PTT數位生活區 即時熱門文章