How to change string name?
조회 수: 9 (최근 30일)
이전 댓글 표시
Hey!
I have a function e.g. y=a*x.
How can I change later string name of y to y306 or sth like that?
댓글 수: 4
Stephen23
2019년 1월 13일
"I tried to load multiple data which was previously saved like a 'y'; but all of these, despite the different external filename, they have the same name of "internal" variable and they are overwriting."
Aaah, that is an entirely different question to what you asked about: http://xyproblem.info/
채택된 답변
Stephen23
2019년 1월 13일
편집: Stephen23
2019년 1월 13일
The solution is to simply use indexing. For example, you could put all of your imported data into one cell array. You did not give much information in your question (e.g. the file format, what function you are using to import the data, the data class, whether you generate the name with sprintf or use dir to obtain the names of existing files, etc), so I will show an example that imports data from .mat files using load:
S = dir('*.mat');
N = numel(S);
C = cell(1,N); % preallocate.
for k = 1:N
C{k} = load(S(k).name);
end
A = [C{:}] % optional, create non-scalar structure.
Then all of the imported data will be available in the cell array C or (even better) the non-scalar structure A:
If the loaded .mat files only contain one (or a few) variables that you need, you can easily access them inside the loop and put that data into on (or a few) array, e.g.:
S = dir('*.mat');
N = numel(S);
C = cell(1,N); % preallocate.
for k = 1:N
T = load(S(k).name);
C{k} = T.y;
end
Feel free to adapt the class and size to suit your data: depending on your data you could import into a numeric/char/string array, with columns/rows to suit number of variables, etc..
You should read this too:
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Cell Arrays에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!