我正在尝试使用readtable()函数在for循环中处理文本文件(test1.txt,test2.txt,...)但在第一次迭代后我收到警告“警告:变量名称被修改为使它们成为有效的MATLAB标识符“,并且我的所有数据都被转换为char。我有以下代码:
**for i=1:2
ds = readtable(['test', num2str(i),'.txt'],'delimiter','tab')
Fn= ds.Fs(isfinite(ds.Fn))
end**
在第一次迭代之后,我得到了我应该得到的数据:
ds =
Fn Fs Fd P
___ __________ ____ ______
0 0.055556 0 110.28
0.5 0.94934 0 NaN
0.5 0.45286 0 NaN
NaN 0.71672 0.25 NaN
NaN 0.79408 0.55 NaN
NaN 0.46686 0.2 NaN
NaN 0.5709 NaN NaN
NaN 0.17697 NaN NaN
和: Fn =
0.0556
0.9493
0.4529
在第二次迭代之后我得到了这个:
FnFsFdP
_______________________________________
'0.0 0.055556244528144005 0.0 90.28'
'0.3 0.9493420509530995 0.0 '
'0.7 0.4528552572364756 0.10 '
'0.7167208183133957 0.15 '
'0.7940837318176294 0.55 '
'0.46685901048550915 0.2 '
'0.5709037251710388 '
'0.27696701859413588 '
和错误:无法识别的变量名称'Fn'
我需要做的是将我的txt文件中的所有列(Fn,Fs,Fd,P)作为分隔的向量。到目前为止,我还使用了dataset()和tbfread(),每次遇到完全相同的问题。 我真的很感激,如果你们中的任何人能帮助我的话。