1

lm.fit 関数が行っていることを再現しようとしています。しかし、「C_Cdqrls」ルーチンを呼び出す場所に問題があります。

n<-100
p<-5
x<-cbind(1,matrix(rnorm(n*(p-1)),n,p-1))
res<-rnorm(n)
y<-x%*%bet+res
tol<-1e-07
z<-.Call(C_Cdqrls, x, y,tol)

私は得る:

Error: object 'C_Cdqrls' not found

代わりに「C_Cdqrls」を使用すると、次の結果が得られます。

the Error in .Call("C_Cdqrls", x, y, tol) : 
  C symbol name "C_Cdqrls" not in load table

同様に、summary.lm() は lm-object で qr.lm という関数を呼び出しますが、次のことを行います。

qr.lm(lm(y~x-1))

収量:

Error: could not find function "qr.lm"

私の質問は: .Call(C_Cdqrls, x, y,tol) と qr.lm() の両方を取得して、それぞれ lm.fit() と summary.lm() によって呼び出されたときと同じ結果を得る方法は?

4

1 に答える 1

7

C_Cdqrlsstatsパッケージのネームスペース内のエクスポートされていないオブジェクトです。表示するには、 を使用しますstats:::C_Cdqrls

于 2013-02-18T11:53:55.440 に答える