Parforループ内で保存先のアドレスを指定してdlmwriteを使う方法
1 vue (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Parforループを用いてシミュレーションを行い、dlmwriteを使ってCSVファイルに書き出して、その結果をそれぞれ別のフォルダに格納しようと考えています。方法が思いつかなかったため、それぞれ別の名前にして現在のディレクトリに保存した後にmovefileを用いてファイルを移動しているのですが、無駄が大きいので変更したいと考えています。どのようにすればよいでしょうか。
parfor i =1:length(j)
gain = j(1,i);
ditherfoldername = strcat('select','_',num2str(select),'_gain',num2str(gain));
mkdir(ditherfoldername);
[final]=Multi_OnebitlogPara(gain,select,dither_value);
nowname = strcat('adoutput',num2str(j(1,i)),'.csv');
movefile(nowname, ditherfoldername)
for f =1:4
if f == 3
else
nowname = strcat('adoutput',num2str(f),num2str(j(1,i)),'.csv');
movefile(nowname, ditherfoldername)
end
end
end
サブルーチンのプログラムの一部(入出力周り)
Ts =1;
a =gain;
bit = 1;
GAIN = dither_value;
q = 1/2^bit;
names = strcat('input.csv');
filename = names;
listing = dir(filename);
value = getfield(listing, 'bytes');
switch value
case 0
clear value
otherwise
clear value
IN=csvread(filename);
[Tsim,~] = size(IN);
IN_part = IN(1:Tsim,2);
IN_part2 = transpose(1:Tsim);
MAX = max(IN);
IN1 = [IN_part2 IN_part];
clear IN
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
IN_part(isnan(IN_part))=0;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
IN1 = [IN_part2 IN_part];
clear IN_part2 IN_part n
[B] = simModel(a,Tsim,IN1,Ts,select,GAIN,q);
A = (1:MAX(1,1));
n=Tsim/MAX(1,1);
OUT1 = reshape(repmat(A,[1,n]),[Tsim,1]);
OUT = [OUT1 B];
clear A OUT1 B n
outnames = strcat('adoutput',num2str(gain),'.csv');
dlmwrite(outnames,OUT,'newline','pc');
clear OUT outname
end
0 commentaires
Réponse acceptée
Tohru Kikawada
le 1 Mar 2018
修正前:
outnames = strcat('adoutput',num2str(gain),'.csv');
dlmwrite(outnames,OUT,'newline','pc');
修正後:
ditherfoldername = strcat('select','_',num2str(select),'_gain',num2str(gain));
outnames = strcat('adoutput',num2str(gain),'.csv');
dlmwrite(fullfile(ditherfoldername,outnames),OUT,'newline','pc');
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Parallel Computing Toolbox dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!