您的位置:

matlab读取csv文件

一、导入csv文件

1、使用readtable函数进行导入

data = readtable('filename.csv');

2、使用csvread函数进行导入,但只能导入纯数值类型的数据

data = csvread('filename.csv');

3、使用xlsread函数进行导入,可以导入csv和xls格式的文件,但不支持xlsx格式的文件

[ndata, text, alldata] = xlsread('filename.csv');
data = cell2table(alldata);

二、指定导入数据的范围

1、使用readtable函数进行导入时,可以使用选项参数

data = readtable('filename.csv','Range','A2:D100');

2、使用csvread函数进行导入时,可以使用选项参数

data = csvread('filename.csv',1,0,[1,0,99,3]);

3、使用xlsread函数进行导入时,可以使用选项参数

[ndata, text, alldata] = xlsread('filename.csv','Sheet1','A2:D100');
data = cell2table(alldata);

三、处理导入后的数据

1、使用table2array函数将table类型的数据转换成array类型的数据

data_array = table2array(data);

2、使用size函数获取数据的大小

size_data = size(data);

3、使用unique函数获取唯一值

unique_data = unique(data);

四、将处理后的数据写入csv文件

1、使用writetable函数将table类型的数据写入csv文件

writetable(data,'new_filename.csv');

2、使用csvwrite函数将array类型的数据写入csv文件,但只能写入纯数值类型的数据

csvwrite('new_filename.csv',data_array);

3、使用xlswrite函数将数据写入xls或xlsx文件

xlswrite('new_filename.xlsx',data);

五、其他注意事项

1、csv文件是一种以逗号作为分隔符的文本文件,但实际使用中可能会使用其他分隔符,如空格、制表符等,此时需要使用readtable函数的选项参数进行指定

data = readtable('filename.csv','Delimiter','\t');

2、在导入包含中文字符的csv文件时,需要使用选项参数'Encoding'指定文件编码方式,如'UTF-8'、'GBK'等

data = readtable('filename.csv','Encoding','UTF-8');

3、在读取csv文件时,如果文件路径包含中文字符,可能会出现乱码问题,此时需要使用MATLAB的Unicode编码方式,如'\\?\C:\path\to\file.csv'

data = readtable('\\?\C:\path\to\file.csv','Encoding','UTF-8');