【发布时间】:2012-07-25 04:36:51
【问题描述】:
我确信这是一个简单的问题,但我还没有找到明显的解决方案。我有一系列在 matlab 中生成的模型输出数组文件(dim 180、360、12),需要在 R 中打开。
我尝试使用 R.matlab 包,只需使用 readMat 命令,这会产生一个列表对象。尝试将此列表写入矩阵会导致内存分配错误。
我尝试过取消列出,但这也无济于事。
如何打开这些 matlab 矩阵文件并在 R 中写入矩阵?有什么想法吗?
目前读取的matlab代码很简单:
> data<-readMat("filename")
> typeof(data)
[1] "list"
> str(data)
List of 1
$ pco2: num [1:180, 1:360, 1:12] NaN NaN NaN NaN NaN ...
- attr(*, "header")=List of 3
..$ description: chr "MATLAB 5.0 MAT-file, Platform: GLNXA64, Created on: Thu Jul 26 10:36:42 2012 "
..$ version : chr "5"
..$ endian : chr "little
【问题讨论】:
-
请发布一个可重现的小示例,以便我们查看您的数据和错误。例如,在 Matlab 中,创建一个 dim 3,4,5 的矩阵。导入 R 并运行查询,例如
typeof(my_matrix)。 -
道歉 - 我不是 Matlab 人(这无疑是我遇到问题的原因!)
-
到目前为止读取的 matlab 代码只是 data
-
如果您编辑您的问题并将 MATLAB 代码作为代码块包含在内(用回车后跟四个空格将其与文本分开),这将更容易阅读和解释。
-
看起来所有的值都是“NaN”,这意味着原始数据是垃圾或者存在翻译问题(可能是字节序)。
标签: r matlab file-io matrix mat-file