在java中寻找相关矩阵

在java中寻找相关矩阵,java,Java,我必须找到矩阵的相关性。我有csv文件,并将其存储到数据库中。从数据库中我将它们存储到一个xt矩阵中。xt包含11个变量(列),10000(行)。现在我调用了函数computeCorrelationMatrix(xt),但它给出了错误 (类型不匹配:无法从RealMatrix转换为RealMatrix[]]) 有谁能指导我这样做是否正确?如果没有,你能建议我如何查找吗?我想错误消息(实际上)告诉你了 RealMatrix corr[][] = new RealMatrix [tNumber+1]

我必须找到矩阵的相关性。我有csv文件,并将其存储到数据库中。从数据库中我将它们存储到一个xt矩阵中。xt包含11个变量(列),10000(行)。现在我调用了函数computeCorrelationMatrix(xt),但它给出了错误

(类型不匹配:无法从RealMatrix转换为RealMatrix[]])


有谁能指导我这样做是否正确?如果没有,你能建议我如何查找吗?

我想错误消息(实际上)告诉你了

RealMatrix corr[][] = new RealMatrix [tNumber+1][tNumber+1];
应该是

RealMatrix corr;
您的代码当前所说的是创建二维数组,其元素为
RealMatrix
。似乎
computeCorrelationMatrix
返回一个
RealMatrix
实例。。。不是它们的二维数组

我还应该指出,初始化2D数组然后分配给它是没有意义的。下面的赋值将覆盖引用,您在初始化中创建的值将被丢弃


请注意,
computeCorrelationMatrix
正在创建一个矩阵对象并返回它。你不需要自己创造一个。。。更不用说二维矩阵数组了

我认为错误消息(实际上)告诉您

RealMatrix corr[][] = new RealMatrix [tNumber+1][tNumber+1];
应该是

RealMatrix corr;
您的代码当前所说的是创建二维数组,其元素为
RealMatrix
。似乎
computeCorrelationMatrix
返回一个
RealMatrix
实例。。。不是它们的二维数组

我还应该指出,初始化2D数组然后分配给它是没有意义的。下面的赋值将覆盖引用,您在初始化中创建的值将被丢弃


请注意,
computeCorrelationMatrix
正在创建一个矩阵对象并返回它。你不需要自己创造一个。。。更不用说二维矩阵数组了

您使用的是什么API
RealMatrix
不是标准的Java SE或EE API。org.apache.commons.math.linear.RealMatrix的Java代码示例公共RealMatrix computeCorrelationMatrix(RealMatrix矩阵){int nVars=matrix.getColumnDimension();RealMatrix outMatrix=new BlockRealMatrix(nVars,nVars);for(int i=0;iRealMatrix不是标准的Java SE或EE API。org.apache.commons.math.linear.RealMatrixpublic RealMatrix computeCorrelationMatrix(RealMatrix矩阵){int nVars=matrix.getColumnDimension();RealMatrix outMatrix=new BlockRealMatrix(nVars,nVars);for(int i=0;i