P
反復ごとにサイズと値が変化する大きな配列があります。指定された反復に一致するように出力配列のタイトルを変更できる必要があります。つまり、ビン1.4の場合、出力をp1.4またはp14にします。
誰か助けてもらえますか?
for bin = 1:0.1:2;
rows = find(DAT(:,27) > bin);
p{bin} = DAT(rows,:);
end
私があなたを正しく理解していれば、コードは
for bin = 1:0.1:2;
rows = find(DAT(:,27) > bin);
current_p = DAT(rows,:);
eval(sprintf('p%0.f=current_p;', bin * 10));
end
しかし、なぜこれが必要なのですか?container.Mapのようなよりスマートなコンテナーの使用を検討してください。
p = containers.Map('KeyType', 'double', 'ValueType', 'double')
for bin = 1:0.1:2
rows = find(DAT(:,27) > bin);
p(bin) = DAT(rows,:);
end
disp(p(1.2))
もっと便利かもしれません。
どうですか
bins = 1:0.1:2;
for ii = 1: numel(bins)
bin = bins(ii);
rows = find( DAT(:,27) > bin );
p{ii} = DAT(rows,:);
end