Can anyone please correct this code for me?

1 回表示 (過去 30 日間)
Ismail Qeshta
Ismail Qeshta 2017 年 11 月 11 日
コメント済み: Ismail Qeshta 2017 年 11 月 11 日
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
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);
Ismail Qeshta
Ismail Qeshta 2017 年 11 月 11 日
Thanks. I have tried it, but the it still shows the following error message:
Index exceeds matrix dimensions.
Error in Try2 (line 14)
maxvalx = x(idx);

サインインしてコメントする。

採用された回答

KSSV
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
KSSV 2017 年 11 月 11 日
That's what the first code does.....you asked the same question yesterday....without reading your question I answered that.
Ismail Qeshta
Ismail Qeshta 2017 年 11 月 11 日
Thank you KSSV for your great help yesterday and today. Yes, I actually could get the the code yesterday work for only one set of data. But I still have confusion about how to get it worked in a loop.

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeLoops and Conditional Statements についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by