0
ノンパラメトリックIV回帰を計算するために、私は作業に慣れていたStataの.dta
ファイルを読んでいます。 Iは、次いで、(依存)、z
(Y内因性)y
とw
(Z用器具)のための私のベクトルをサブセット - 例としてy
を使用し:次いでnpregiv in R:寸法誤差
y = data.frame(data$y)
と同様に私の多変量外因性X行列。
model = npregiv(y, z, w, x)
yがnx1、zがnx1、wがnx1、xがnx4のように動作することが予想されます。 npregiv
では、z、w、xは多変量が許され、yは一変量でなければなりません。しかし、コマンドを実行すると、エラーメッセージが表示されます。とは何ですか?
実行しているデータとコードの小さな再現可能な例を提供してください。私の推測では、あなたの変数の一つ( 'data $ *')は 'npregiv'への入力に必要な次元を持たないということです。 –
また、この機能がどこから来ているかを言う必要があります。 (回帰呼び出しの 'data = dfrm'に続く' dfrm < - data.frame(y = y、z = z、w = w) 'の後には、 。) –
@CarlWitthoft:例として、y、z、およびzの形式で、a = c(1,2,3,4,5)、a = data.frame(a) w、およびx。 yについては、ドキュメンテーションは1次元ベクトルであることが必要ですが、ncol(y)はデータフレーム内になければNULLを返すため、data.frameを使用します。データフレームがなければ、Rは「エラー:トレーニングと評価データの列数が等しくない」を返します。それ以外の場合、 'model = npregiv(y = y、z = z、w = w、x = x)'を実行すると、tww [。]エラーが発生します。 @DWin、 'data = dfrm'は私のためには機能しませんでした。コマンドでy、z、w、xのデータを別々に入力する必要はありませんか? – kirk