在matlab脚本中将文本文件导入为矩阵

时间:2014-07-21 21:47:52

标签: matlab import io

大家好我需要在matlab中运行脚本时自动导入存储在计算机中的某些文本文件作为矩阵。我怎么做?谢谢

1 个答案:

答案 0 :(得分:2)

虽然这个问题没什么用,但是我想起了我是如何开始时对输入或输出一无所知的,它确实是一个非常密集的信息森林。

基本上要读取您需要的文件:

  1. 打开文件
  2. 读取文件并将其分配给变量
  3. 关闭文件
  4. MatLab中的一些功能负责所有三个步骤:

    如果您拥有非常整洁和统一的数据,上述功能是合适的。如果它们适合您,请单击链接以进行阅读。如果您的数据不太统一,例如它包含数字和字母,您可能需要考虑textscan

    使用文本扫描您必须自己执行所有三个步骤。首先打开文件并创建一个名为文件ID(FID)的文件链接:

    FID = fopen('mytextfile.txt')
    

    接下来,您将定义一个描述单行数据(一行)的格式说明符。

    formatSpec = '%f %f %f %f %s'
    

    此格式说明符表示4个十进制数字(浮点数),后跟一个全部由空格分隔的字符串。有关格式说明符的更多信息,请参阅:

    http://www.mathworks.nl/help/matlab/ref/textscan.html#inputarg_formatSpec

    现在,您可以通过调用以下方式阅读文本文件:

    C = textscan(FID,formatSpec);
    

    将每个列存储在C中的单元格中。因此第一列是C {1},第二列是C {2}等。

    最后确保使用文件ID

    关闭文件
    fclose(FID);
    
    祝你好运!