那么我有一个矩阵在Matlab中,有4个维度。我想导出这个矩阵在R中使用它(我想用它来绘制)。对我来说问题是我不知道如何导出一个可以被R使用的矩阵,而且我也不知道如何在R中导入数据。基本上,我试图做的是将我的矩阵在Matlab中使用dlmwrite
,并使用read.table()
将其导入到R中。不幸的是,这是行不通的。如何在R中使用Matlab数据?
3
A
回答
3
你可以用fwrite写出任何二进制数组,然后用readBin将它读入到R中。在R中,将给出一个向量,您可以使用array()或matrix()来推入形状。
下面是一个非常简单的例子。
a = magic(4)
con = fopen('a.bin', 'w');
fwrite(con, a * 0.01, 'float64')
fclose(con)
a * 0.01
ANS =
0.1600 0.0200 0.0300 0.1300
0.0500 0.1100 0.1000 0.0800
0.0900 0.0700 0.0600 0.1200
0.0400 0.1400 0.1500 0.0100
现在,在R:
matrix(readBin("a.bin", "double", 16), 4)
[1] [2] [3] [,4]
[1,] 0.16 0.02 0.03 0.13
[2,] 0.05 0.11 0.10 0.08
[3,] 0.09 0.07 0.06 0.12
[4,] 0.04 0.14 0.15 0.01
你可以取代的 “a” 与一个四维阵列,并且将R代码改变此,并且它应该工作一样好:
## assume 4 dimensions with particular sizes
dims <- c(10, 5, 2, 3)
a <- array(readBin("a.bin", "double", prod(dims)), dims)
最后,注意,这个假设在Matlab和R.见machineformat相同的字节顺序在Matlab fwrite的帮助,如果你的最终系统是不同的。
相关问题
- 1. 如何在数据帧,使用R
- 2. 如何在R中使用SQLite数据而不加载数据
- 3. 如何像MATLAB一样使用R interp1?
- 4. 数据列表,数据矩阵MATLAB/R
- 5. 从matlab绘制R中的数据
- 6. 如何在Matlab调用的mex函数中使用Matlab引擎
- 7. 如何在Matlab中使用字符串作为数据绘图?
- 8. 如何在Matlab中规范大数据?
- 9. 如何使用变量值在R中调用数据帧
- 10. 如何在R中的多行ggplot中使用excel数据集?
- 11. 如何使用R中的API从Azure DocumentDB中使用数据
- 12. 如何在R中使用grep参数?
- 13. R-在数据框中使用括号
- 14. 如何使用数据帧在R中创建热图
- 15. 使用Matlab计算矩阵sim R R
- 16. 如何在R中汇总此数据
- 17. 如何在R中编辑数据库?
- 18. 如何获得R数据到MATLAB矩阵
- 19. 在MatLab中使用数据窗口对数据进行分区
- 20. 如何使用textscan在MATLAB
- 21. 使用Matlab从PNG中绘制数据
- 22. 如何在matlab中调用.sql函数?
- 23. 如何在matlab中使用fminunc和summation?
- 24. 如何在Matlab中使用waitbar?
- 25. 如何在Matlab中使用表格
- 26. 如何在MATLAB中使用求和?
- 27. 如何在Matlab中使用java.nio?
- 28. 如何在Matlab中使用方程?
- 29. 如何在Matlab中使用OpenCV?
- 30. 如何在MATLAB中使用subsref
你看过`R.matlab`包吗? http://cran.r-project.org/web/packages/R.matlab/index.html – mropa 2010-11-30 15:19:01
什么格式可以从Matlab中导出数组。如果你可以包含这类文件的例子,我相信R社区在SO上的共同努力可以找到一种方法将它读入R数组中。 – 2010-11-30 16:14:49