导入文件数据

MATLAB和Python都提供了专门的函数导入文件数据。[大谦MATLAB,dqmatlab点com]

MATLAB中用readtable函数导入文件数据。该函数可以读取一下格式的数据文件:

.txt、.dat 或 .csv(带分隔符的文本文件)

.xls、.xlsb、.xlsm、.xlsx、.xltm、.xltx 或 .ods(电子表格文件)

.xml(可扩展标记语言 (XML) 文件)

.docx(Microsoft® Word 文档文件)

.html、.xhtml 或 .htm(超文本标记语言 (HTML) 文件)

readtable函数的语法格式为:

T=readtable(filename) 通过从文件中读取列数据来创建表。

T=readtable(filename,opts) 使用导入选项 opts 创建表。

T=readtable(___,Name,Value) 基于文件创建一个表,并通过一个或多个名称-值匹配对组成的参数指定其他选项。例如,可以指定 readtable 是将文件的第一行读取为变量名称还是数据。

要为数据设置特定的导入选项,您可以使用 opts 对象,也可以指定名称-值对组。

下面用readtable函数将D盘下的Excel文件“身份证号.xlsx”读取到表T。设置“VariableNamingRule”参数的值为“preserve”,将第1个工作表中的第1行作为表的索引行,设置“ReadRowNames”参数的值为true,将第1列“工号”作为表的索引列。在命令窗口输入:

code.matlab
>> T=readtable('D:\身份证号.xlsx','VariableNamingRule','preserve','ReadRowNames',true)
T =
  5×4 table
              部门         姓名             身份证号             性别
            _________    ________    ______________________    ______
    1001    {'财务部'}    {'陈东'}    {'5103211978100300**'}    {'女'}
    1002    {'财务部'}    {'田菊'}    {'4128231980052512**'}    {'男'}
    1003    {'生产部'}    {'王伟'}    {'4302251980031135**'}    {'男'}
    1004    {'生产部'}    {'韦龙'}    {'4302251985111635**'}    {'女'}
    1005    {'销售部'}    {'刘洋'}    {'4302251980081235**'}    {'女'}

默认时读取工作簿中第1个工作表的数据。如果需要读取其他工作表的数据,用“Sheet”参数指定该工作表的编号或名称。下面读取第2个工作表的数据。

code.matlab
>> T2=readtable('D:\身份证号.xlsx','VariableNamingRule','preserve','ReadRowNames',true,'Sheet',2)
T2 =
  5×4 table
              部门         姓名              身份证号             性别
            _________    _________    ______________________    ______
    1006    {'生产部'}    {'吕川' }    {'3203251970010171**'}    {'女'}
    1007    {'销售部'}    {'杨莉' }    {'4201171973021753**'}    {'男'}
    1008    {'财务部'}    {'夏东' }    {'1328011947050583**'}    {'女'}
    1009    {'销售部'}    {'吴晓' }    {'4302251980011535**'}    {'男'}
    1010    {'销售部'}    {'宋恩龙'}    {'3203251980010181**'}    {'女'}