zoukankan      html  css  js  c++  java
  • 使用jmatio读写matlab数据文件

    /**
     * Created by hfz on 2016/2/23.
     */
    
    import com.jmatio.io.*;
    import com.jmatio.types.MLDouble;
    
    import java.io.IOException;
    import java.util.ArrayList;
    
    public class matWriterTest {
        public static void main(String[] args) throws IOException {
    
            double[][] matTest=new double[][]{{1,2,3,4},{5,6,76,34}};//生成待存储的矩阵
            MLDouble mlDouble=new MLDouble("doubleArray",matTest);//doubleArray就是matlab中上述矩阵的标示符,load()之后,在matlab中使用doubleArray访问此矩阵
            ArrayList list=new ArrayList();//由于MatFileWriter()构造函数的参数为list类型,所以需要创建一个ArrayList
            list.add(mlDouble);
            new MatFileWriter("matTest.mat",list);//将矩阵写入到.mat文件中,文件名为matTest.mat
            System.out.println("mat writer done!");
        }
    }

     还有MLInt64、MLINt32等整型类型。

    http://www.mathworks.com/matlabcentral/mlc-downloads/downloads/submissions/10759/versions/1/previews/doc/com/jmatio/types/package-summary.html

    2)以上是写.mat文件,下面是读.mat文件,读取数据是一个矩阵

    import com.jmatio.io.MatFileReader;
    import com.jmatio.types.MLArray;
    import com.jmatio.types.MLDouble;
     MatFileReader read = new MatFileReader("data/totalDataSet.mat");
    MLArray mlArray=read.getMLArray("img");//mat存储的就是img矩阵变量的内容
    MLDouble d=(MLDouble)mlArray;
    double[][] matrix=(d.getArray());//只有jmatio v0.2版本中才有d.getArray方法

     3)读取一个向量(数组)代码如下:

          MatFileReader read = new MatFileReader("data/predLab.mat");
            MLArray mlArray=read.getMLArray("predLab");//mat存储的就是img矩阵变量的内容
            MLInt64 d=(MLInt64)mlArray;
            int[] ma=d.getDimensions();//获得向量
            //int[] matrix=(d.getArray());//只有jmatio v0.2版本中才有d.getArray方法
  • 相关阅读:
    three.js详解
    Javascript的原型
    Transform? Transition? Animation?
    Backbone源码分析Backbone架构+流程图
    对象是引用的注意原型中的属性改变
    MySQL+ JSP+Tomcat開發指引
    MySQL應用分析
    SQL 日期
    MySQL安裝
    MSE错误应对分享
  • 原文地址:https://www.cnblogs.com/lz3018/p/5210443.html
Copyright © 2011-2022 走看看