当前位置: 首页>>代码示例>>Java>>正文


Java MatFileReader.read方法代码示例

本文整理汇总了Java中com.jmatio.io.MatFileReader.read方法的典型用法代码示例。如果您正苦于以下问题:Java MatFileReader.read方法的具体用法?Java MatFileReader.read怎么用?Java MatFileReader.read使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在com.jmatio.io.MatFileReader的用法示例。


在下文中一共展示了MatFileReader.read方法的11个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: readStringsArrayFromMat

import com.jmatio.io.MatFileReader; //导入方法依赖的package包/类
public static String[] readStringsArrayFromMat(Path matFile, String stringsArrayName) throws IOException {
    Objects.requireNonNull(matFile, "mat file is null");
    Objects.requireNonNull(stringsArrayName, "strings array name is null");
    MatFileReader matFileReader = new MatFileReader();
    Map<String, MLArray> matFileContent = matFileReader.read(matFile.toFile());
    MLCell stringsArray = (MLCell) matFileContent.get(stringsArrayName);
    String[] strings = new String[stringsArray.getN()];
    for (int i = 0; i < stringsArray.getN(); i++) {
        strings[i] = ((MLChar) stringsArray.get(0, i)).getString(0);
    }
    return strings;
}
 
开发者ID:itesla,项目名称:ipst,代码行数:13,代码来源:Utils.java

示例2: fromFile

import com.jmatio.io.MatFileReader; //导入方法依赖的package包/类
public static Matrix fromFile(File file, Object... parameters) throws IOException {
	String key = null;
	if (parameters != null && parameters.length > 0 && parameters[0] instanceof String) {
		key = (String) parameters[0];
	}
	MatFileReader reader = new MatFileReader();
	Map<String, MLArray> map = reader.read(file);
	if (key == null) {
		key = map.keySet().iterator().next();
	}
	MLArray array = map.get(key);
	if (array == null) {
		throw new RuntimeException("matrix with label [" + key + "] was not found in .mat file");
	} else if (array instanceof MLDouble) {
		return new MLDenseDoubleMatrix((MLDouble) array);
	} else {
		throw new RuntimeException("This type is not yet supported: " + array.getClass());
	}
}
 
开发者ID:ujmp,项目名称:universal-java-matrix-package,代码行数:20,代码来源:ImportMatrixMAT.java

示例3: MCSMatFileReader

import com.jmatio.io.MatFileReader; //导入方法依赖的package包/类
public MCSMatFileReader(Path matFile) throws Exception {
    Objects.requireNonNull(matFile, "mat file is null");
    MatFileReader sampledDataFileReader = new MatFileReader();
    matFileContent = sampledDataFileReader.read(matFile.toFile());
    String errorMessage = Utils.MLCharToString((MLChar) matFileContent.get("errmsg"));
    if (!("Ok".equalsIgnoreCase(errorMessage))) {
        throw new MatlabException(errorMessage);
    }
}
 
开发者ID:itesla,项目名称:ipst,代码行数:10,代码来源:MCSMatFileReader.java

示例4: readDoublesMatrixFromMat

import com.jmatio.io.MatFileReader; //导入方法依赖的package包/类
public static double[][] readDoublesMatrixFromMat(Path matFile, String doublesMatrixName) throws IOException {
    Objects.requireNonNull(matFile, "mat file is null");
    MatFileReader matFileReader = new MatFileReader();
    Map<String, MLArray> matFileContent = matFileReader.read(matFile.toFile());
    MLDouble doublesMatrix = (MLDouble) matFileContent.get(doublesMatrixName);
    double[][] doubles = null;
    if (doublesMatrix != null) {
        doubles = doublesMatrix.getArray();
    }
    return doubles;
}
 
开发者ID:itesla,项目名称:ipst,代码行数:12,代码来源:Utils.java

示例5: computeBinSampling

import com.jmatio.io.MatFileReader; //导入方法依赖的package包/类
public double[][] computeBinSampling(double[] marginalExpectations, int nSamples) throws Exception {
    Objects.requireNonNull(marginalExpectations);
    if (marginalExpectations.length == 0) {
        throw new IllegalArgumentException("empty marginalExpectations array");
    }
    if (nSamples <= 0) {
        throw new IllegalArgumentException("number of samples must be positive");
    }
    try (CommandExecutor executor = computationManager.newCommandExecutor(createEnv(), WORKING_DIR_PREFIX, config.isDebug())) {

        Path workingDir = executor.getWorkingDir();
        Utils.writeWP41BinaryIndependentSamplingInputFile(workingDir.resolve(B1INPUTFILENAME), marginalExpectations);

        LOGGER.info("binsampler, asking for {} samples", nSamples);

        Command cmd = createBinSamplerCmd(workingDir.resolve(B1INPUTFILENAME), nSamples);
        ExecutionReport report = executor.start(new CommandExecution(cmd, 1, priority));
        report.log();

        LOGGER.debug("Retrieving binsampler results from file {}", B1OUTPUTFILENAME);
        MatFileReader mfr = new MatFileReader();
        Map<String, MLArray> content;
        content = mfr.read(workingDir.resolve(B1OUTPUTFILENAME).toFile());
        String errMsg = Utils.MLCharToString((MLChar) content.get("errmsg"));
        if (!("Ok".equalsIgnoreCase(errMsg))) {
            throw new MatlabException(errMsg);
        }
        MLArray xNew = content.get("STATUS");
        Objects.requireNonNull(xNew);
        MLDouble mld = (MLDouble) xNew;
        double[][] retMat = mld.getArray();
        return retMat;
    }


}
 
开发者ID:itesla,项目名称:ipst,代码行数:37,代码来源:SamplerWp41.java

示例6: setUp

import com.jmatio.io.MatFileReader; //导入方法依赖的package包/类
@Before
public void setUp() throws IOException
{
    MatFileReader reader = new MatFileReader();
    Map<String, MLArray> content = reader.read( spmFile );
    array = content.get( "SPM" );
}
 
开发者ID:gradusnikov,项目名称:jmatio,代码行数:8,代码来源:MLArrayQueryTest.java

示例7: testBigSparseFile

import com.jmatio.io.MatFileReader; //导入方法依赖的package包/类
/**
 * Test case that exposes the bug found by Julien C. from polymtl.ca
 * <p>
 * The test file contains a sparse array on crashes the reader. The bug
 * appeared when the {@link MLSparse} tried to allocate resources (very very
 * big {@link ByteBuffer}) and {@link IllegalArgumentException} was thrown.
 * 
 * @throws IOException
 */
@Test
public void testBigSparseFile() throws IOException
{
    //read array form file
    MatFileReader mfr = new MatFileReader();
    //reader crashes on reading this file
    //bug caused by sparse array allocation
    mfr.read( new File("src/test/resources/bigsparse.mat"), MatFileReader.DIRECT_BYTE_BUFFER );
    
}
 
开发者ID:gradusnikov,项目名称:jmatio,代码行数:20,代码来源:MatIOTest.java

示例8: testJavaObject

import com.jmatio.io.MatFileReader; //导入方法依赖的package包/类
@Test
public void testJavaObject() throws Exception
{
    MatFileReader mfr = new MatFileReader();
    Map<String, MLArray> content = mfr.read( new File("src/test/resources/java.mat") );
    
    MLJavaObject mlJavaObject = (MLJavaObject) content.get( "f" );
    
    assertEquals( "java.io.File", mlJavaObject.getClassName() );
    assertEquals( new File("c:/temp"), mlJavaObject.getObject() );
}
 
开发者ID:gradusnikov,项目名称:jmatio,代码行数:12,代码来源:MatIOTest.java

示例9: testObject

import com.jmatio.io.MatFileReader; //导入方法依赖的package包/类
@Test
    public void testObject() throws Exception
    {
        MatFileReader mfr = new MatFileReader();
        Map<String, MLArray> content = mfr.read( new File("src/test/resources/object.mat") );
        
        MLObject mlObject = (MLObject) content.get( "X" );
        
        assertEquals( "inline", mlObject.getClassName() );
        assertTrue( mlObject.getObject() instanceof MLStructure );
        assertTrue( mlObject.getObject().getFieldNames().contains( "expr" ) );
//        System.out.println(mlObject.getObject().getFieldNames());
    }
 
开发者ID:gradusnikov,项目名称:jmatio,代码行数:14,代码来源:MatIOTest.java

示例10: computeModule3

import com.jmatio.io.MatFileReader; //导入方法依赖的package包/类
private double[][] computeModule3(int nSamples) throws Exception {
    LOGGER.info("Executing wp41 module3 (IR: {}, tflag: {}, number of clusters: {}), getting {} samples", config.getIr(), config.getTflag(), nClusters, nSamples);
    try (CommandExecutor executor = computationManager.newCommandExecutor(createEnv(), WORKING_DIR_PREFIX, config.isDebug())) {

        Path workingDir = executor.getWorkingDir();
        Command cmd = createMatm3PreCmd(nClusters, nSamples);
        ExecutionReport report = executor.start(new CommandExecution(cmd, 1, priority));
        report.log();
        if (report.getErrors().isEmpty()) {
            report = executor.start(new CommandExecution(createMatm3Cmd(), nClusters, priority));
            report.log();
            if (report.getErrors().isEmpty()) {
                report = executor.start(new CommandExecution(createMatm3reduceCmd(nClusters), 1, priority));
                report.log();

                LOGGER.debug("Retrieving module3 results from file {}", M3OUTPUTFILENAME);
                MatFileReader mfr = new MatFileReader();
                Map<String, MLArray> content = mfr.read(workingDir.resolve(M3OUTPUTFILENAME).toFile());
                String errMsg = Utils.MLCharToString((MLChar) content.get("errmsg"));
                if (!("Ok".equalsIgnoreCase(errMsg))) {
                    throw new MatlabException(errMsg);
                }
                MLArray xNew = content.get("Y");
                MLDouble mld = (MLDouble) xNew;
                double[][] xNewMat = mld.getArray();

                if (config.getValidationDir() != null) {
                    // store output file with the samples, for validation purposes
                    try {
                        Files.copy(workingDir.resolve(M3OUTPUTFILENAME), config.getValidationDir().resolve("MOD3_" + System.currentTimeMillis() + "_" + Thread.currentThread().getId() + ".mat"));
                    } catch (Throwable t) {
                        LOGGER.error(t.getMessage(), t);
                    }
                }

                return xNewMat;
            }
        }
        return null;
    }

}
 
开发者ID:itesla,项目名称:ipst,代码行数:43,代码来源:SamplerWp41.java

示例11: testWritingMethods

import com.jmatio.io.MatFileReader; //导入方法依赖的package包/类
@Test
public void testWritingMethods() throws IOException
{
    final String fileName = "nwrite.mat";
    final File f = temp.newFile(fileName);
    
    //test column-packed vector
    double[] src = new double[] { 1.3, 2.0, 3.0, 4.0, 5.0, 6.0 };

    //create 3x2 double matrix
    //[ 1.0 4.0 ;
    //  2.0 5.0 ;
    //  3.0 6.0 ]
    MLDouble m1 = new MLDouble( "m1", src, 3 );
    //write array to file
    ArrayList<MLArray> list = new ArrayList<MLArray>();
    list.add( m1);
    
    MatFileWriter writer = new MatFileWriter();
    
    writer.write(f, list);

    
    assertTrue("Test if file was created", f.exists() );
    
    MLArray array = null;
    
    //try to read it
    MatFileReader reader = new MatFileReader();
    reader.read(f, MatFileReader.MEMORY_MAPPED_FILE );
    array = reader.getMLArray("m1");
    assertEquals("Test if is correct file", array, m1);
    
    //try to delete the file
    assertTrue("Test if file can be deleted", f.delete() );
    
    writer.write(f, list);
    
    assertTrue("Test if file was created", f.exists() );
    reader.read(f, MatFileReader.MEMORY_MAPPED_FILE );
    assertEquals("Test if is correct file", reader.getMLArray("m1"), m1);

    
    //try the same with direct buffer allocation
    reader.read(f, MatFileReader.DIRECT_BYTE_BUFFER );
    array = reader.getMLArray("m1");
    assertEquals("Test if is correct file", array, m1);
    
    //try to delete the file
    assertTrue("Test if file can be deleted", f.delete() );
    
    writer.write(f, list);
    
    assertTrue("Test if file was created", f.exists() );
    reader.read(f, MatFileReader.DIRECT_BYTE_BUFFER );
    assertEquals("Test if is correct file", reader.getMLArray("m1"), m1);
    
    //try the same with direct buffer allocation
    reader.read(f, MatFileReader.HEAP_BYTE_BUFFER);
    array = reader.getMLArray("m1");
    assertEquals("Test if is correct file", array, m1);
    
    //try to delete the file
    assertTrue("Test if file can be deleted", f.delete() );
    
    writer.write(f, list);
    
    assertTrue("Test if file was created", f.exists() );
    reader.read(f, MatFileReader.HEAP_BYTE_BUFFER );
    assertEquals("Test if is correct file", reader.getMLArray("m1"), m1);
    
}
 
开发者ID:gradusnikov,项目名称:jmatio,代码行数:73,代码来源:MatIOTest.java


注:本文中的com.jmatio.io.MatFileReader.read方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。