93 有没有办法通过使向量重复自身来扩展向量? >v = [1 2]; >v10 = v x 5; %x represents some function. Something like "1 2" x 5 in perl 那么v10将是: >v10 1 2 1 2 1 2 1 2 1 2 这应该适用于一般情况,而不仅仅是[1 2] matlab vector octave — 汤姆 source 您可以使用kron-Kroencker产品操作员。例如v=[1 2]和v100=kron(ones(1,100),v)是向量v100=[v v ... v](100次)。如果您想将某些列向量y与其自身K时间串联起来,请使用yK=kron(ones(K,1),y)。 — Pantelis Sopasakis
140 您要寻找的功能是repmat()。 v10 = repmat(v, 1, 5) — 安德鲁·谢泼德 source 1 链接到八度音程文档:http — //www.gnu.org/software/octave/doc/interpreter/Special-Utility-Matrices.html#Special-Utility-Matrices
6 如果知道要向哪个方向扩展向量,显然repmat是可行的方法。 但是,如果您希望始终在最长的方向上重复向量的一般解决方案,则repmat和索引的这种结合应该可以解决问题: v10=v(repmat(1:length(v),1,5)) — 丹尼斯·贾赫鲁丁 source
v=[1 2]
和v100=kron(ones(1,100),v)
是向量v100=[v v ... v]
(100次)。如果您想将某些列向量y
与其自身K
时间串联起来,请使用yK=kron(ones(K,1),y)
。