我用Matlab处理一个大文件。在输入文件的每一行中,数据用点“.
”分隔。由于格式不佳,点数可能会逐行改变输入文件。
例如:
line1 = 'DIDYMOTE.150.L20'
line2 = 'N.ELBETI.150.L10'
如何读取每行中出现的点数?
答案 0 :(得分:0)
在matlab中,一切都是数组。所以
data = load('file.txt');
[no_lines, no_characters] = size(data);
for i = 1 : no_lines
no_dots[i] = 0
for j = 1 : no_characters
if data[i][j] == '.'
no_dots[i] = no_dots[i] + 1
end
end
end
但是,matlab没有字符串,非常不适合处理文本数据。如果任何行具有不同的长度,您将收到错误。即使不是这种情况,最好还是使用其他语言。学习如何在Python中处理文本(例如),而不是试图将您的问题纳入matlab,这将花费您更少的时间。