MATLAB读取txt文件的缺测值、分隔符和重新赋值
1、第一,准备数据。新建文本文档,命名为test1.txt,并输入下图中的数据。

2、第二,MATLAB读取文本文件test1.txt,并将其中的缺测值(NAN)重新赋值为0。启动MATLAB,新建脚本(Ctrl+N),输入如下代码:
close all; clear all; clc
fileID=fopen('test1.txt');
C=textscan(fileID,'%f %f %f %f',...
'TreatAsEmpty',{'NAN'},'EmptyValue',0);
fclose(fileID);
format compact
celldisp(C)
其中'TreatAsEmpty',{'NAN'}是把缺测值(NAN)视为空,'EmptyValue',0是把空赋值为0.

3、第三,保存和运行上述脚本,在命令行窗口得到如下数据结果,同时双击工作区(Work Place)中的元胞数组C也可以查看数据。
C{1} =
11
35
15
C{2} =
15
0
75
C{3} =
35
55
0
C{4} =
55
85
65
以上数据读取正确,并且把文本文件test1.txt中缺测值(NAN)重新赋值为0.

4、第四,如果文本文件test1.txt中的数据是用逗号或分号隔开的(如下图),在脚本中需要加入'delimiter',','。

5、第五,加入'delimiter',','后的脚本如下图。

6、第六,保存和运行上述脚本,在命令行窗口得到如下结果:
C{1} =
11
35
15
C{2} =
15
0
75
C{3} =
35
55
0
C{4} =
55
85
50
这说明数据用逗号或分号隔开的文本文件test1.txt被成功读取。
