【问题标题】:Is there a way to import the results or data from Matlab to Mathematica automatically?有没有办法将结果或数据从 Matlab 自动导入 Mathematica?
【发布时间】:2012-03-25 16:06:06
【问题描述】:

有没有办法将结果或数据(例如矩阵)从 Matlab 导入到 Mathematica自动?或者有什么方法可以先运行一个 Matlab 程序,然后自动运行一个 Mathematica 程序

感谢您提供任何有用的答案!

【问题讨论】:

  • 或者你可以解释一下你所说的自动是什么意思
  • 我的意思是自动不需要手动导入它。也就是说,有没有什么软件或程序可以加入Matlab程序和Mathematica程序?

标签: matlab wolfram-mathematica


【解决方案1】:

至少有三种方法可以解决这个问题:

  1. “通过”Java,使用 Mathematica 的 JLink 和 Matlab 自己的 Java 功能。

  2. 任一程序都可以从命令行运行,执行脚本并根据需要返回输出。这两个程序都可以运行“外部”命令并捕获结果。例如,在标题外部程序下的 Mathematica 文档中查看。 Matlab 也有类似的功能。

  3. 如果您在 Linux 或类似操作系统上运行,您可以将一个程序的输出通过管道传输到另一个程序。

这些方法的难度各不相同。

【讨论】:

    【解决方案2】:

    我偶然发现了这个问题,经过几次尝试后,我设法创建了一个适合我的简单算法。

    在 Matlab 中保存你的矩阵:

    save('m','-v7','a')
    

    m 是文件,-v7 是版本(有人说它会更好,我不知道),a 是矩阵。我没有尝试一次使用多个矩阵。

    然后在mathematica中我使用了:

    SetDirectory["Desktop"]
    a = Import["m.mat"] ;
    a=Partition[Flatten[a], 5000]
    

    我将我的目录设置为我的 m.mat 文件的位置并导入它。 在我的例子中,矩阵是 5000*5000,所以我必须分成几个部分,每个部分有 5000 个元素。 如果您有一个 N*K 矩阵,请尝试除以 N 和 K 以查看适合您的需求。

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-12-04
    • 1970-01-01
    • 1970-01-01
    • 2021-12-10
    • 2012-03-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多