复制矢量,八度中没有第一个元素

问题描述 投票:0回答:2

我需要复制不包含Octave中第一个元素的向量。我该怎么做呢?尝试过

    newTheta = theta([2,length(theta)],:) 

但是newTheta只有[0;0]

谢谢,卡科利

octave
2个回答
1
投票

end关键字可用于索引:

vslice = v(2:end)

您也可以切片行和/或列:

rowslice = m(2:end,:)
colslice = m(:,2:end)

在这种情况下,请不要使用length


0
投票
octave:1> theta = linspace(0,pi,6)
theta =

   0.00000   0.62832   1.25664   1.88496   2.51327   3.14159

octave:2> newTheta = theta(2:length(theta))
newTheta =

   0.62832   1.25664   1.88496   2.51327   3.14159

在这种情况下,:是实际的运算符。它在python中称为切片,但我不知道他们在八度中如何称呼它。

您写的实际上返回了theta的第二行和最后一行,我猜测这是列矢量的第二和最后一位为零。

octave:7> b = [1; 0; 2; 3; 4; 5; 6; 7; 0]
b =

   1
   0
   2
   3
   4
   5
   6
   7
   0

octave:8> b([2,length(b)],:)
ans =

   0
   0
© www.soinside.com 2019 - 2024. All rights reserved.