save column values of different multiple .txt files without overwriting in a for loop.

1 Ansicht (letzte 30 Tage)
yr = [1951:2018]';
for j = 1:size(A)
fil = importdata([folder, A(j).name]);
file = dlmread(fullfile(folder , A(j).name));
for i = 1:size(yr,1)
a = find(file(:,1)==yr(i));
M(i,1) = sum(file(a,4));
end
end
I imported all files using 'dir' ansd stored in A. The problem is that Only Last file is getting operated on.
  2 Kommentare
Angana Borah
Angana Borah am 18 Sep. 2019
No. I want to bring the 4th column of all the files in the sructure to one data_array,M. Did you get my question? In the for loop, only the file file is getting read and sum of the column of only that file is calculated. Whereas, I want 4th column from all the files.

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

KALYAN ACHARJYA
KALYAN ACHARJYA am 18 Sep. 2019
I want to bring the 4th column of all the files in the sructure to one data_array,
  1. Read the txt file one by one (As you mentioned you have done it sucessfully)
  2. iter i=1
  3. Extract the 4th column from i file
  4. Save the column data in cell array
  5. Repeat, iter 2
Step 3:
col_data{i}=writetable(column_data,['file_test',num2str(i),'.txt'])
  1 Kommentar
Angana Borah
Angana Borah am 19 Sep. 2019
Thanks a lot. But I do not want to store column data from various files in different .txt files but want to input in the different columns of the same matrix if that is possible.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Low-Level File I/O finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by