How can i generalize what is inside the ndgrid function?
3 ビュー (過去 30 日間)
古いコメントを表示
I have a Values Matrix
Values={[3 4],[2],[3 4 5]} %% which is randomly created.
[Numbers{1:length(Values)}]=ndgrid(Values{1},Values{2},Values{3}); which i want to find.
The problem is that i want to generalize the right sidet so that if Values changes i dont want to re-write my code again.
This is what i tried but couldnt worked it out
for i=1:length(Values)
c(i)={'Values'};
end
Pattern=strjoin(strcat(c,'{%d}'),',');
for a=1:length(Values)
b(a)=a;
end
a=sprintf(Pattern,b) %%%%% which gives me Values{1},Values{2},Values{3}
when i put it in a ndgrid function it doesnt give me the correct answer.
ndgrid(a)
How can i solve this problem? Thanks!
2 件のコメント
採用された回答
Walter Roberson
2019 年 3 月 10 日
編集済み: Walter Roberson
2019 年 3 月 10 日
nv = length(Values);
Numbers = cell(nv, 1);
[Numbers{:}] = ndgrid(Values{:});
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Matrix Indexing についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!