我正在尝试改组尚未定义的向量
向量由[0 0 0 ... 0 0 1 2 3 ... (n-zer)]
-
n
:向量的长度 -
zer
:开头的零个数字
像这样:
PartZeroPartNum=@(zer,n) [zeros(1,zer),1:(n-zer)];
shuffled=@(zer,n) PartZeroPartNum(zer,n)(randperm(n));
这部分不起作用
PartZeroPartNum(zer,n)(randperm(n))
给出错误:
无法调用或索引到临时数组
相反,如果我这样操作,它将起作用:
n=100;
PartZeroPartNum=logical([zeros(1,1:(n-zer)]);
shuffled=@() PartZeroPartNum(randperm(n));
是否可以像我上面尝试的那样改组更通用的矢量?也许以另一种方式?
原因是我需要许多随机向量的示例,因此我想先创建此匿名函数,然后像下面这样轻松地采样:
ShVec= shuffled(50,100);