0

まず最初に、私は R にあまり詳しくないことを指摘しておきたいので、次の質問のいずれかが明確である場合は申し訳ありません。

私の動機は、以下を含む単純な R スクリプトを作成することです。

  1. データのインポート
  2. フォーム $ Y=aX+bZ+intercept$ の回帰を行います
  3. いくつかの計算
  4. 出力

ここに私の質問があります:

  1. これは非常に一般的な質問です。R スクリプトを作成した場合、それを source(name.R) でロードする必要がありますよね? スクリプトを実行するための追加のコマンドが必要ですか?
  2. で回帰を行ったとします。このlmようfit<-lm(Y~X+Z,data=database)に、良い出力が得られます。私が本当に欲しいのは、モデルの係数をベクトルに保存することです。これどうやってするの?ここでは 3 次元のベクトルになり(intercept, a, b)ます。編集してみましたcoefficient<-coefficient(fit)。これは動作しません!coefficientは数値ベクトルではありません。また、intercept という名前と、その最初の要素の以下の値もあります。
  3. スクリプトの最後に係数といくつかの計算を出力したい場合、どうすればよいですか? ただ書くprint(....)

これが私の最初の質問なので、このフォーラムのすべての規則と慣習を検討したことを願っています。そうでない場合は、申し訳ありません。

4

1 に答える 1

2

私が R スクリプトを作成した場合、それを source(name.R) でロードする必要がありますよね? スクリプトを実行するための追加のコマンドが必要ですか?

スクリプトがコマンドを直接呼び出す場合ではありません

たとえば、 name.R が含まれている場合

a <- 1:10
plot(a, a^2, t="l")

次に、 source("name.R") はプロットを直接生成します

ただし、 name.R が含まれている場合

myfunction <- function()
   {
   a <- 1:10
   plot(a, a^2, t="l")
   }

それをソーシングすると、関数のみがロードされます。myfunction()次に、プロットを取得するために呼び出す必要があります。

fit<-lm(Y~X+Z,data=database) のように、lm を使用して回帰を行ったとします。これにより、適切な出力が得られます。私が本当に欲しいのは、モデルの係数をベクトルに保存することです。これどうやってするの?これは 3 次元ベクトル (切片、a、b)
になります。スクリプトの最後に係数といくつかの計算を出力したい場合、どうすればよいですか? print(....) と書くだけですか?

 print(coef(fit))

必要なものを提供します( を使用して配列に保存できますmodel.coef <- coef(fit)

また、実行するのも面白いかもしれません

 summary(fit)

詳細については?coef、 とを参照し?summaryてください

于 2012-04-24T16:39:48.797 に答える