Java使用math3实现矩阵行求和(求行均值)
在写算法时,有时会用到行求和或列求和,下面将以java中的math简单实现这一操作:
例如,我们遇到这样多个一维数组:
double a[] = new double[]{1,2,3,4};
double b[] = new double[]{1,2,3,3};
...
实现每个数组对应列上的数字相加,然后求均值,即要得到的结果为:
1.0,2.0,3.0,3.5
下面为math3操作的方式:
package deal;import java.util.ArrayList;
import java.util.List;
import org.apache.commons.math3.linear.Array2DRowRealMatrix;
import org.apache.commons.math3.linear.RealMatrix;public class TestDeal {public static void main(String[] args) {double a[] = new double[]{1,2,3,4};double aa[][] = TwoArry(a);double b[] = new double[]{1,2,3,3};double bb[][] = TwoArry(b);RealMatrix matrix_1 = new Array2DRowRealMatrix(aa);RealMatrix matrix_2 = new Array2DRowRealMatrix(bb);System.out.println(matrix_1);List<RealMatrix> wMatrixList = new ArrayList<RealMatrix>();wMatrixList.add(matrix_1);wMatrixList.add(matrix_2);RealMatrix realMatrix = sum(wMatrixList);System.out.println(realMatrix);}private static RealMatrix sum(List<RealMatrix> wMatrixList){//定义一个新矩阵RealMatrix suMatrix= new Array2DRowRealMatrix( wMatrixList.get(0).getRowDimension(), wMatrixList.get(0).getColumnDimension());//多个矩阵相加的操作for( RealMatrix re: wMatrixList){suMatrix = suMatrix.add(re);}//返回均值return suMatrix.scalarMultiply(1.0/wMatrixList.size());}//一维数组转化为二维数组public static double[][] TwoArry(double[] onedouble){double[][] arr = new double[1][onedouble.length];for (int i = 0; i < onedouble.length; i++) {arr[0][i] = onedouble[i];}return arr;}
}
程序输出结果为:
Java使用math3实现矩阵行求和(求行均值)相关推荐
- matlab 调整矩阵形状,matlab对矩阵/向量的常用操作(拼接矩阵、向量逆序、改变矩阵形状、求行阶梯形矩阵、提取矩阵的一部分等)...
几乎所有变量在matlab中都可以视为矩阵(1 x 1元素,1 x n向量,m x n矩阵等),matlab中对矩阵/向量的操作非常多,个人认为对矩阵的操作是体现matlab功底的地方:灵活搭配使用这 ...
- matlab 矩阵 列 逆序,matlab对矩阵/向量的常用操作(拼接矩阵、向量逆序、改变矩阵形状、求行阶梯形矩阵、提取矩阵的一部分等)...
几乎所有变量在matlab中都可以视为矩阵(1 x 1元素,1 x n向量,m x n矩阵等),matlab中对矩阵/向量的操作非常多,个人认为对矩阵的操作是体现matlab功底的地方:灵活搭配使用这 ...
- java:求和求平均值
java:求和求平均值 题目 问题描述从键盘输入10个浮点数,求出它们的和以及平均值,要求用函数实现 输入格式测试数据的输入一定会满足的格式.1 10 (1行10列的向量) 输出格式要求用户的输出满足 ...
- matlab 矩阵元素求和、求均值(期望)和均方差
matlab中矩阵元素求和.求期望和均方差 在matlab中求一个矩阵中元素的和可以自己编写for循环来完成,这样比较方便,想求那些数据的和都可以做到,然而效率比较低,如果数据量大程序会跑好长时间.所 ...
- matlab矩阵指定行最大值,求Matlab程序:在2行矩阵中,如何求第1行最大值和第2行相应的最大,请问,如何在MATLAB中编写程序实现求两矩阵A*B,A.*...
导航:网站首页 > 求Matlab程序:在2行矩阵中,如何求第1行最大值和第2行相应的最大,请问,如何在MATLAB中编写程序实现求两矩阵A*B,A.* 求Matlab程序:在2行矩阵中,如何求 ...
- 有一个m行n列的矩阵,编程求出其中值最大的那个元素,以及其所在的行号和列号。
[题目描述] 有一个m行n列的矩阵,编程求出其中值最大的那个元素,以及其所在的行号和列号.(如果最大数有多个,则显示第一个出现的数据的信息). [输入] 有多行.第1行是两个整数,m(m≤10)和n( ...
- 矩阵期望 matlab,matlab 矩阵元素求和、求均值(期望)和均方差
matlab中矩阵元素求和.求期望和均方差 在matlab中求一个矩阵中元素的和可以自己编写for循环来完成,这样比较方便,想求那些数据的和都可以做到,然而效率比较低,如果数据量大程序会跑好长时间.所 ...
- java 矩阵_(JAVA)计算机图形学与矩阵
(JAVA)计算机图形学与矩阵 平移 旋转 变比 一)矩阵 1)矩阵的乘法运算 矩阵是计算机图形学的重要工具. 计算机图形学要常常用到 矩阵乘法(矩阵与矩阵相乘). 矩阵(Aij)m*n 与矩阵(Bi ...
- 机器之心最干的文章:机器学习中的矩阵、向量求导
作者:七月 本文的目标读者是想快速掌握矩阵.向量求导法则的学习者,主要面向矩阵.向量求导在机器学习中的应用.因此,本教程而非一份严格的数学教材,而是希望帮助读者尽快熟悉相关的求导方法并在实践中应用.另 ...
最新文章
- Python的串口操作库pyserial
- Linux下各文件夹的结构说明及用途介绍(转载)
- AI理论知识基础(19)-线性变换(1)
- JAVA数组扁平化整合_5种方法实现数组扁平化
- php之快速入门学习-9(switch)
- mysql分页合并同类项,人教版初三数学复习目录(全)
- mysql 统计当个用户从当前时间连续登录天数,以及多用户某时间段,最长连续登录天数查询
- 导弹发射-河南省第九届省赛D题
- 天津达内可靠么 老员工揭秘真实的达内教育
- 2021-CVPR-图像修复论文导读《Image Inpainting Guided by Coherence Priors of Semantics and Textures》
- CSS3 背景图 插入 SVG 或图片 base64
- 图片太大怎么办?这3种方法快速压缩图片!
- python下载安装教程-python安装教程
- html中web字体图标,响应式Web图形篇 —— icon fonts(字体图标)在网页中的应用...
- 即将上演的5G测量仪器大战
- 资讯_邮件基本常识普及(to/cc/bcc) ;
- 1528. 重新排列字符串
- LXD虚拟容器及常用命令
- Restful风格设计
- objdump按照指定架构反汇编 裸二进制文件