Arrays 如何在Matlab中构造递增子集数组
在Matlab中,假设有一个大的向量XArrays 如何在Matlab中构造递增子集数组,arrays,matlab,vector,functional-programming,subset,Arrays,Matlab,Vector,Functional Programming,Subset,在Matlab中,假设有一个大的向量X X = [1 2 3 4 5 6 ... 1000] 如何选择索引递增的K元素子集数组?(请不要打圈) 谢谢 -----更新-------- 谢谢你的快速回复。我讨厌问愚蠢的问题 现在,我有一个更具挑战性的(我真正想知道的)。 鉴于: 你是怎么生产的 Y = foo(X,k); >> Y = 1 2 3 ... 900 2 3 4 ... 901 3 4 5 ... 902
X = [1 2 3 4 5 6 ... 1000]
如何选择索引递增的K元素子集数组?(请不要打圈)
谢谢
-----更新--------
谢谢你的快速回复。我讨厌问愚蠢的问题
现在,我有一个更具挑战性的(我真正想知道的)。
鉴于:
你是怎么生产的
Y = foo(X,k);
>> Y = 1 2 3 ... 900
2 3 4 ... 901
3 4 5 ... 902
. . . ... .
. . . ... .
. . . ... .
100 101 102... 1000
再次感谢非常简单:使用:
或者,如果您有通信工具箱,您可以使用:
我能说什么。这是一个简单的例子……:)@很简单,是的。我不知道那句话!:-)当我读到这篇问答时,我的脑海中浮现出。。。唐人街。说真的,我试着想出一个聪明的替代方案,但这似乎是其中一个只有一个合理解决方案的例子。也许有人会证明我错了?@chappjc我打赌你可以用
accumarray
!:-欺骗了这个问题。感谢路易斯和其他人。
X = [1 2 3 4 5 6 ... 1000];
k = 900;
Y = foo(X,k);
>> Y = 1 2 3 ... 900
2 3 4 ... 901
3 4 5 ... 902
. . . ... .
. . . ... .
. . . ... .
100 101 102... 1000
X = 1:1000;
k = 100;
Y = reshape(X,k,[]).';
Y = vec2mat(X,k);