web-dev-qa-db-ja.com

回帰分析の係数をスプレッドシートまたはcsvファイルにエクスポートする方法は?

私はRStudioを初めて使用します。私の質問は簡単に解決できると思いますが、多くの検索は私を助けませんでした。

回帰を実行していますが、summary(regression1)はすべての係数などを表示します。今はcoef(regression1)を使用しているので、ファイルにエクスポートしたい係数のみを提供します。

write.csv(coef, file="regression1.csv)および"Error in as.data.frame.default(x[[i]], optional = TRUE) : cannot coerce class ""function"" to a data.frame"が発生します。

あなたが私を助けることができれば素晴らしいでしょう。私は今、数時間ウェブを検索していますが、成功しませんでした。

Data.frameに収まるように、何らかの形でcoefを変更する必要がありますか?

どうもありがとうございました!

17
OST_EE

このタスクを簡素化する broom と呼ばれる貢献パッケージがあり、モデル出力を整然としたデータフレームに変換します。自己完結型の再現可能な例を次に示します。

パッケージをダウンロードしてインストールします。

library(devtools)
install_github("dgrtwo/broom")
library(broom)

これは通常のベース出力で、あまり便利ではありません:

lmfit <- lm(mpg ~ wt, mtcars)
lmfit

Call:
lm(formula = mpg ~ wt, data = mtcars)

Coefficients:
(Intercept)           wt  
     37.285       -5.344 

broomパッケージによって整理された後の同じモデルの出力は、次のようになります。

tidy_lmfit <- tidy(lmfit)
tidy_lmfit
         term  estimate std.error statistic      p.value
1 (Intercept) 37.285126  1.877627 19.857575 8.241799e-19
2          wt -5.344472  0.559101 -9.559044 1.293959e-10

そして、そのデータフレームをCSVに書き込む方法は次のとおりです。

write.csv(tidy_lmfit, "tidy_lmfit.csv")
25
Ben