Java中矩阵运算Array2DRowRealMatrix(math3的使用)

一:简介

        math3是Apache下的一款进行数学计算的一款java开源工具。jar包名称为:commons-math3-3.6.1.jar。
        大家可以通过maven或者其他网站进行下载。 或者使用MAVEN

<!-- https://mvnrepository.com/artifact/org.apache.commons/commons-math3 -->
<dependency>
	  <groupId>org.apache.commons</groupId>
	  <artifactId>commons-math3</artifactId>
	  <version>3.6.1</version>
</dependency>

二:两组数组相减

  1. 首先我们看看在EXCEL中两个数组
        
  2. 两个数组对应的每个数字相减
     
  3.  在JAVA中使用math3计算
     
    public static void subtract() {
    		 double[][] arrayA = {{1.0},{2.0},{3.0},{4.0}};
    		double[][] arrayB = {{2.0},{5.0},{7.0},{9.0}};
    		
    		//分别将两个二维数组转换为Array2DRowRealMatrix
    		Array2DRowRealMatrix realMatrixA = new Array2DRowRealMatrix(arrayA);
    		Array2DRowRealMatrix realMatrixB = new Array2DRowRealMatrix(arrayB);
    		
    		//两个数组间进行相减
    		Array2DRowRealMatrix subtract = realMatrixB.subtract(realMatrixA);
    		System.out.println("相减后的矩阵数据:"+subtract);
    		
    		//获取矩阵的列数 getColumnDimension() 
    		int columnDimension = subtract.getColumnDimension();
    		System.out.println("矩阵的列数为:"+columnDimension);
    		
    		//获取矩阵的行数
    		int rowDimension = subtract.getRowDimension();
    		System.out.println("矩阵的行数为:"+rowDimension);
    		
    		//矩阵转化为数组 getdata
    		double[][] data = subtract.getData();
    		System.out.println(Arrays.deepToString(data));
    }
      效果:
                 

三:两数组相加

  1. EXCEL中结果
      
  2. java代码中实现
      
  3. 效果如下
             

四:两个数组相乘求和

  1. 如下我们有如下两个数组
     
     数组A:[1,2,3,4]
     数组B:[1,4,5,7]
     sumproduct函数相当于=1*1+2*4+3*5+4*7=52
  2. 将其中一个数组行转列,使用mmult函数计算出相同结果
     
     mmult函数需要注意的是:
               a:第一个参数的列数,要等于第二个参数的行数。
               b:  函数结果的行数与 array1 的行数相同,矩阵的列数与 array2 的列数相同。
               如果不满足上面情况MMULT 返回错误值 #VALUE!:
  3. 在java中使用math3实现
     
  4. 效果
               
  • 1
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值