How to store several tables in one table using a loop
조회 수: 6 (최근 30일)
이전 댓글 표시
I want to store several csv files into tables which I then store in one table in order to plot them easily. Storing one csv file into one table works perfectly. Matlab won't use my counter for the for-loop as table fieldname, so it overwrites the first entry. This is my code so far:
counter = 1;
filename = ['measurement' sprintf( '%03d', counter) '.csv'];
while exist(filename, 'file') == 2
filename = ['measurement' sprintf( '%03d', counter) '.csv']
T.counter = readtable(filename) % this isn't working
counter = counter + 1;
end
The output is a 1x1 table T with the csv content named 'counter'. What I'd like to have is a n x 1 table T with n equals the amount of csv files.
댓글 수: 0
채택된 답변
Ameer Hamza
2020년 11월 11일
편집: Ameer Hamza
2020년 11월 11일
Creating a table of tables might not be a good strategy. The usual way is to create a cell array of tables. The following code shows an example
files = dir('measurement*.csv');
T = cell(size(files));
for i = 1:numel(files)
T{i} = readtable(files(i).name) % this isn't working
end
댓글 수: 5
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Startup and Shutdown에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!