• matlab读取cvs文件的几种方法


    matlab读取CVS文件的几种方法:
    1,实用csvread()函数
     

    csvread()函数有三种使用方法:

    1、M = csvread('filename')
    2、M = csvread('filename', row, col)
    3、M = csvread('filename', row, col, range)

    第一种方法中,直接输入文件名,将数据读到矩阵M中。这里要求csv文件中只能包含数字。

    第二种方法中,除了文件名,还指定了开始读取位置的行号(row)和列号(col)。这里,行号、列号以0开始计数。也就是说,row=0, col=0表示从文件中第一个数开始读。

    第三种方法中,range限定了读取的范围。range = [R1 C1 R2 C2],这里(R1,C1)是读取区域的左上角,(R2,C2)是读取区域的右下角。在使用这种方法时,要求row, col等于range中的前两项。

    注意:csv文件中的空项,读到矩阵中时,会初始化为0.

     
     
     
    2、使用textscan函数
    在使用textscan函数前必须用fopen函数打开CSV文件。textscan函数读取的结果会存在cell数组中。
    调用格式
    C = textscan(fid, 'format')
    C = textscan(fid, 'format', N)
    C = textscan(fid, 'format', param, value, ...)
    C = textscan(fid, 'format', N, param, value, ...)
    C = textscan(str, ...)
    [C, position] = textscan(...)
    关于textscan函数的具体用法见help textscan。
     
     
    3、当成数据库使用
    具体方法可以去百度“matlab  数据库编程”
    4,使用importdata('myfile.cvs')
     
    5,使用fgetl()函数,当成普通的txt文件读取。
    fidin=fopen('test.txt');                               % 打开test2.txt文件             
    fidout=fopen('mkmatlab.txt','w');                       % 创建MKMATLAB.txt文件
    while ~feof(fidin)                                      % 判断是否为文件末尾               
        tline=fgetl(fidin);                                 % 从文件读行   
        if double(tline(1))>=48&&double(tline(1))<=57       % 判断首字符是否是数值
           fprintf(fidout,'%s ',tline);                  % 如果是数字行,把此行数据写入文件MKMATLAB.txt
           continue                                         % 如果是非数字继续下一次循环
        end
    end
    fclose(fidout);
    MK=importdata('MKMATLAB.txt');      % 将生成的MKMATLAB.txt文件导入工作空间,变量名为MK,实际上它不显示出来 
     
    6,拖动到Matlab的工作区内

    如果文件中全部都是数据的话,可以直接将数据拖动到Matlab的工作区内。

    加载后出现下面的数据列表。

    在保证所有数据都被选中的情况下,在工具栏的“导入的数据”中选择要导入数据的类型,如果全部为数据,则可以导出为列矢量或者数值矩阵。

  • 相关阅读:
    《WCF全面解析》-上册 1-3章 读书笔记
    git上传本地Intellij idea 项目到码云的git仓库中
    Node.js安装及环境配置之Windows篇
    让IntelliJ IDEA支持创建*.vue文件及打开*.vue文件
    maven命令mvn package指定jar包名称
    spring 时间格式化注解@DateTimeFormat和 @JsonFormat
    事务及事务隔离级别
    @RequestBody的使用
    接口jdk1.8与jdk1.9新特性
    Spring AOP无法拦截内部方法调用-- expose-proxy="true"用法
  • 原文地址:https://www.cnblogs.com/rainbow70626/p/10776760.html
Copyright © 2020-2023  润新知