【发布时间】:2015-05-14 19:36:04
【问题描述】:
我知道 MatLab 不应该是理想的,但我希望对我的类似表格的 data.dat 文件做一些最小的工作,如下所示:
ID,Name,Surname,Y,M,D,Num,Loc
1672399390,A,DULKINAS,1993,01,31,3019,Šiauliai
4157844163,D,SKARBALIUS,1993,12,08,3019,Tauragė
5541091033,E,LUKOŠEVIČIUS,1992,10,25,3019,Panevėžys
2005609387,M,DUBINSKAS,1991,03,31,3019,Kaunas
2716651285,P,ŽIEDELIS,1992,02,28,3019,Vilnius
由于数据格式整齐并用逗号分隔,我决定简单地使用readtable('data.dat') 并从那里开始工作。
问题 1. MatLab 不知道故障线在哪里。由于有几个多余的逗号,它只会抛出错误文本文件的每一行必须有相同数量的分隔符。我通过使用其他工具计算每一行中的逗号并在之后手动更正它们来解决这个问题。
问题 2。由于某种原因,它将第一个变量 ID(这是 AFAIK 一个有效的非保留变量名称)重命名为 x__ID
并给出警告变量名已被修改以使其成为有效的 MATLAB 标识符。我真的不在乎这个,但它很奇怪。
问题 3. UTF-8 符号显示不正确。此外,在尝试了documentation 的运气并运行readtable('data.dat','FileEncoding','UTF-8') 之后,它给了我一个彻底的错误Invalid parameter name: FileEncoding。我很困惑。
我应该如何处理这种情况?
【问题讨论】: