Make a table with variable names which are saved as strings.
조회 수: 19 (최근 30일)
이전 댓글 표시
Let's assume that there are data files having a column of nubmers.
abc.dat
cdc.dat
usa.dat
I'd like combine them into a table.Can I use the file names as variable names?
ex) table T =
abc cdc usa
10 100 5
20 200 10
30 300 15
40 400 20
50 500 25
Matlab table is great for handling my data, but I am struggling to name variables.
I was looking at the 'eval' function, but it was not recommended from many thread here.
댓글 수: 0
채택된 답변
Sulaymon Eshkabilov
2021년 6월 6일
filename = {'abc', 'bcd', 'cde'};
A = magic(3);
T = array2table(A, 'variablenames', filename);
추가 답변 (1개)
Walter Roberson
2021년 6월 6일
dinfo = dir('*.dat');
filenames = {dinfo.name};
T = table();
for K = 1 : length(filenames)
thisfile = filenames{K};
[~, varname, ~] = fileparts(thisfile);
thisdata = load(thisfile, '-ascii');
T.(varname) = thisdata;
end
참고 항목
카테고리
Help Center 및 File Exchange에서 Data Type Conversion에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!