您好我将Excel数据导入MATLAB,它是一个约200米名称的列表,每个名称约28行
问题是每个方向都有一个副本,其后面有一个'x'
的相同仪表名称。
有没有人知道如何在'x'
之后删除这些内容?
以下是导入数据的代码部分:
清除所有
fid=fopen('sue1.csv'); % Open the file sue1.csv and read it all and put it into an array
data = textscan(fid,'%s %s %s %s %s %s %s %s %s %s %s %s %s %s %s %s %s %s %s %s %s %s %s %s %s %s %s %s %s %s %s %s %s %s %s %s %s %s %s %s %s %s %s %s %s %s %s %s %s %s','Delimiter',',','CollectOutput',1);
fclose(fid)
j = 1; k = 1; % j - turbine number, k - date number
for i = 1:length(data{1,1}) % Run through all the data
if strcmp(data{1,1}(i),'') == 0
meterold{j}(k,:) = data{1,1}(i,:);
% if strcmp(data{1,1}(i),'MeterName') == 0
% nummeter{j}(k,:) = str2num(data{1,1}(i,3:end));
% end
k = k + 1;
else
% These commands are followed in the strings match (empty line)
k = 1; % Reset the day counter as we're back to the beginning
j = j + 1; % Add one to the meter counter as we're now looking at
% a new turbine
end
end
答案 0 :(得分:0)
很难用样本回答这个问题但也许这会有所帮助。
你可以判断字符串是否以'x'结尾:
if myString(end) == 'x'
你可以从矩阵中删除一行,如下所示:
M = [1 2 3; 4 5 6; 7 8 9]
M(2,:) = [];
希望您可以将这两者结合起来解决您的问题。