Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/326.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
Java 使用MillerUpdatingRession类时ArrayIndexOutOfBounds异常_Java_Apache_Apache Commons Math - Fatal编程技术网

Java 使用MillerUpdatingRession类时ArrayIndexOutOfBounds异常

Java 使用MillerUpdatingRession类时ArrayIndexOutOfBounds异常,java,apache,apache-commons-math,Java,Apache,Apache Commons Math,我们曾尝试在一个项目中使用MillerUpdatingRession类,但遇到了一个问题。在创建类的实例、提供期望的变量数量并添加整个样本集的观测值之后,我们调用“回归(int[])方法,通知回归过程我们希望包括哪些变量(整个预测集的子集) 执行此操作时,我们会在过程中收到一个ArrayIndexOutOfBounds异常,因为预期的变量数(nVAR,在MillerUpdatingRession类实例化时提供)小于传递给“regress(int[])方法的变量数。我们的理解是,这个整数数组可以是

我们曾尝试在一个项目中使用MillerUpdatingRession类,但遇到了一个问题。在创建类的实例、提供期望的变量数量并添加整个样本集的观测值之后,我们调用“回归(int[])方法,通知回归过程我们希望包括哪些变量(整个预测集的子集)

执行此操作时,我们会在过程中收到一个ArrayIndexOutOfBounds异常,因为预期的变量数(nVAR,在MillerUpdatingRession类实例化时提供)小于传递给“regress(int[])方法的变量数。我们的理解是,这个整数数组可以是所有观测值的预测指数的子集

有人知道我们错过了什么吗

==已用代码更新====


双精度预测数据[][]=新双精度[n][125];
双重预测[]=新的双重预测[n]

//Predictor Data是一个[n x 125]二维数组 //具有n个样本和125个预测值的特征/预测值 //predictionsArray是一个n长度的预测数组 //对于样本集

int numberofpredictor变量=125; 布尔includeConstantWhenBuildingModel=true; MillerUpdategression回归=新的MillerUpdategression(预测变量的数量,包括构建模型时的常数); 回归。添加观测值(预测数据、预测数组)

int预测器包括回归[]={0,3,9,11}; 回归:回归(预测因子包括回归); //这就是生成ArrayIndexOutOfBounds异常的地方


我可以在这里猜测,没有完整的代码示例,但是观察值的数量必须大于变量的数量(在您的示例中为125)


更准确地说,代码中的n必须大于125,回归才能工作。回归方法中传递的预测值的数量可以小于此值。

感谢您指出Braj。我已经用我们正在使用的代码的一个例子更新了这个问题。