0
为了计算非参数IV回归,我已经从Stata中的一个.dta
文件中读取了我用于工作的文件。然后我子集我的向量y
(依赖),z
(其中y内源的),和w
(仪器为Z) - 使用y
作为一个例子:R中的npregiv:尺寸错误
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必须是单变量(它是)。但是,我得到错误信息执行命令后:
Error in tww[, , 1] : incorrect number of dimensions
什么是tww[.]
?
请提供一个小的,可重现的数据和您正在运行的代码的示例。我的猜测是你的一个变量('data $ *')没有输入到'npregiv'所需的维度。 – 2012-04-25 11:14:28
您还需要说明这个函数来自哪里。 (你的第一行几乎肯定是错误的开始方式,回归调用中可能会有'dfrm < - data.frame(y = y,z = z,w = w)'后面紧跟'data = dfrm' 。) – 2012-04-25 14:14:30
@CarlWitthoft:就一个例子而言,创建形式为'a = c(1,2,3,4,5)','a = data.frame(a)'的形式的任何向量用于y,z, w和x。对于y,文档要求它是一个一维矢量,但我仍然使用data.frame,因为如果ncol(y)不在数据框中,它将返回NULL。没有数据框R返回“错误:训练和评估数据具有不同数量的列”。否则,运行'model = npregiv(y = y,z = z,w = w,x = x)'给出tww [。]错误。 @DWin,'data = dfrm'不适合我。命令是否要求分别输入y,z,w,x数据? – kirk 2012-04-26 13:35:31