how to change variable name in loop
2 次查看(过去 30 天)
显示 更早的评论
Hi, so far I have created a code that reads several .txt files and put the into cell array, see the code below.
clc
clear all
close all
x='Vnesi stevilo .txt datotek za analizo ';
NumFiles=input(x)
for m=1:NumFiles
filename=sprintf('meritev%d.txt',m);
fileID=fopen(filename, 'r');
pc{m}=textscan(fileID,'%f%f%f%f%f%f%f%f%f%f%f%f%f%f%f%f%f','Delimiter','\t');
fclose(fileID);
end
p1=cell2mat(pc{1});
Now I am trying to specify name for each column for example, first column of the p1 would be T_1_1. I would like to create the loop that would input names so that the first coulmn of the p2 would be T_1_2 and so on. All the text files are made of the same numbers of columns and rows. Is possible to do something like that :D?
Many thanks,
Ziga
0 个评论
采纳的回答
Stephen23
2016-6-23
编辑:Stephen23
2019-6-19
2 个评论
Stephen23
2016-6-23
编辑:Stephen23
2019-6-19
Use indexing.
In a nutshell: preallocate one array, and then use indexing in the loop to allocate the data from each file to a different position in that variable.
Something like this (pseudocode):
C = cell(..);
for k = 1:N
C{k} = get kth file
end
and bingo, all of your data is in C, and can be accessed using indexing (so you can loop over it and do all sorts of other magic).
This is an extremely common topic, so why not take the opportunity to do some reading and learning:
更多回答(1 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Entering Commands 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!