Can anyone please correct this code for me?
1 次查看(过去 30 天)
显示 更早的评论
Hi,
I am trying to extract data from a sequence of files. I also need to extract the value of x that corresponds to peak y value from each plot. I have tried the following code but I can't get results. I would be grateful if someone can check it for me. I have attached herewith the files for your kind reference.
close all; clear all; clc;
folder = cd;
for k = 1:2;
for j = 1:2;
matFilenameA = sprintf('X%d.out', k);
matData1 = load(fullfile(cd, matFilenameA));
%
matFilenameB = sprintf('Y%d.out', j);
matData2 = load(fullfile(cd, matFilenameB));
x = matFilenameA(:,2);
y = matFilenameB(:,2);
[maxvaly,idx] = max(y) ;
maxvalx = x(idx);
fid=fclose('all');
end
end
4 个评论
Birdman
2017-11-11
You do not assign numerical arrays to x and y. I think you should write
x= matData1(:,2);
y= matData2(:,2);
采纳的回答
KSSV
2017-11-11
files = dir('*.txt') ;
N = length(files) ;
iwant = zeros(N,2) ;
for i = 1:N
data = importdata(files(i).name) ;
[val,idx] = max(data(:,2)) ;
iwant(i,:) = [data(idx,1),val] ;
end
Copy all the text file sin one folder and runt his code.
5 个评论
KSSV
2017-11-11
That's what the first code does.....you asked the same question yesterday....without reading your question I answered that.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Matrices and Arrays 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!