利用MATLAB将矢量分解为子矢量

利用MATLAB将矢量分解为子矢量,matlab,math,Matlab,Math,我试图弄明白如何在matlab中将向量分解成子向量 我正在使用dde23数值求解一个微分方程。执行此操作时,解决方案向量的长度会发生变化。因此,我发现使用mat2cell命令并不像许多人建议的那样容易 我所要做的就是(尽可能均匀地)将长度为N的向量分成任意数量的子向量,这些子向量的长度可能随时间向量的长度而变化。我这样做,然后我可以找到每个间隔中每个向量的最大值。如果我理解这个问题,也许你可以尝试使用下面的代码来拆分它 dataset=[ 1 2 3 4 5 6 7 8 9 10]

我试图弄明白如何在matlab中将向量分解成子向量

我正在使用
dde23
数值求解一个微分方程。执行此操作时,解决方案向量的长度会发生变化。因此,我发现使用mat2cell命令并不像许多人建议的那样容易


我所要做的就是(尽可能均匀地)将长度为N的向量分成任意数量的子向量,这些子向量的长度可能随时间向量的长度而变化。我这样做,然后我可以找到每个间隔中每个向量的最大值。

如果我理解这个问题,也许你可以尝试使用下面的代码来拆分它

dataset=[ 1 2 3 4 5 6 7 8 9 10]

     splitpoint = randi[2 length(dataset)-1]

     subset1 = dataset(1,1:splitpoint)

     splitpoint = randi[length(subset1)+1 length(dataset)-1]

     subset2 = dataset(1,length(subset1)+1:splitpoint)

之后,您可以选择在何处完成并接受最后一个子集的其余部分,也可以定义一个列表来保存列表行中的每个子集。因此,您可以定义while循环,通过定义stop_标准来自动处理它。

请提供示例输入/输出和您尝试过的内容。请以书面形式回答你的问题