Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
npregiv in R:尺寸错误_R_Stata_Dimension - Fatal编程技术网

npregiv in R:尺寸错误

npregiv in R:尺寸错误,r,stata,dimension,R,Stata,Dimension,为了计算非参数IV回归,我从我习惯于工作的Stata读取了一个.dta文件。然后,我将向量子集为y相关,z为y内生,w为z仪器-以y为例: 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]

为了计算非参数IV回归,我从我习惯于工作的Stata读取了一个.dta文件。然后,我将向量子集为y相关,z为y内生,w为z仪器-以y为例:

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[.]?

为了解决这个问题,我创建了一个数据框架,其中包含与回归相关的所有变量,包括向量y和矩阵z、w和x。除了调用npregivy=y,z=z,w=w,x=x,还需要指定默认情况下从x,y和z获取的评估数据:npregivy=y,z=z,w=w,x=x,zeval=z,weval=w,xeval=x

请提供一个小的、可复制的数据示例和正在运行的代码。我的猜测是,您的一个变量data$*没有npregiv输入所需的维度。您还需要说明此函数的来源。你的第一行几乎肯定是错误的开始方式。dfrm@CarlWitthoft:例如,为y、z、w和x创建形式为a=c1、2、3、4、5、a=data.framea的任何向量。对于y,文档要求它是一维向量,但我还是使用data.frame,因为如果它不在数据帧中,ncoly将返回NULL。如果没有数据帧,R返回错误:培训和评估数据的列数不相等。否则,运行model=npregivy=y,z=z,w=w,x=x将给出tww[.]错误@DWin,data=dfrm对我不起作用。该命令不要求分别输入y、z、w、x数据吗?@kirk听起来npregiv包有问题。如果它叫NCOL而不是NCOL可能会更好。但无论哪种情况:data.frame都不同于矩阵。如果有帮助的话,您可以将y的dim属性设置为c1。