将矩阵导入Mathematica和Maple

时间:2014-01-22 17:39:35

标签: matrix import wolfram-mathematica maple

我很难将矩阵导入Mathematica和Maple。该文件的格式如下所示:

     0.0000000 1.0000000 1.0000000 
     1.0000000 1.0000000 0.0000000 
     1.0000000 0.0000000 0.0000000 

导入mathematica时:

    In[1]:= Import["Matrix1.txt", "Table"]

    Out[1]:= {{0.0000000 1.0000000 1.0000000}, {1.0000000 1.0000000 0.0000000}, {1.0000000 0.0000000 0.0000000}}

从那里它不响应Mathematica功能。并且显然看起来导入不正确。

同样在Maple:

  > A = ImportMatrix["Maple_Matrix1.txt", source=delimited]
  >
  > A
  > syntax error, missing operator or ';':

导入更多问题。

导入到任何一个都很棒。每个都有一组我想要使用的内置函数。

2 个答案:

答案 0 :(得分:2)

对于您显示的纯文本数据,以下任何一项至少应适用于Maple版本14到17。只有最后两个才能在Maple 13中使用。

注意在函数调用中使用圆括号而不是方括号。

注意分号(或冒号,以禁止将结果打印为输出)作为语句终止符。这是1D Maple符号输入所必需的。

ImportMatrix("Maple_Matrix1.txt", source=MATLAB, mode=ascii);

ImportMatrix("Maple_Matrix1.txt", source=MATLAB, mode=ascii);

ImportMatrix("Maple_Matrix1.txt", delimiter=" ");

ImportMatrix("Maple_Matrix1.txt", source=delimited, delimiter=" ");

另请注意,Maple中的分配语法为:=,而非=。后者只创建一个等式(并且不会自己分配任何东西)。所以你想要,比方说,

A := ImportMatrix("Maple_Matrix1.txt", delimiter=" ");

答案 1 :(得分:0)

您的矩阵现在看起来像是一个字符串处理。尝试在importHead [%[[1]]]之后运行,它可能会说它是一个字符串。如果它是一个列表,那么Head [%[[1]] [[1]]]可能是真的。 您的文件标签或空格是否分隔? 您可能必须尝试ReadList [“FILE”,{Number,Number,Number}]