我有兩個向量,idx1
和idx2
,我想獲取它們之間的值。如果idx1
和idx2
是數字,而不是載體,我能做到這一點的方式如下:向量化冒號(:)的概念 - MATLAB中兩個向量之間的值
idx1=1;
idx2=5;
values=idx1:idx2
% Result
% values =
%
% 1 2 3 4 5
但在我的情況下,idx1
和idx2
是可變長度的向量。例如,對於長度= 2:
idx1=[5,9];
idx2=[9 11];
可否使用結腸操作員直接獲得的值?這一點,類似於下面的內容:
values = [5 6 7 8 9 9 10 11]
我知道我可以做idx1(1):idx2(1)
和idx1(2):idx2(2)
,這是單獨提取各列的值,因此,如果沒有其他的解決方案,我可以用做for-loop,但也許Matlab可以更輕鬆地做到這一點。
'values'在MATLAB中是不可能的。由3矢量垂直排列的5矢量? – petrichor
是的,你說得對,對不起。我要糾正這一點。我不介意這些值是否都在同一行,我只需要這些索引之間的所有值。 – Digna
在Mathworks上有一篇關於此主題的優秀博客文章:[矢量化Colon的概念(:)](http://blogs.mathworks.com/loren/2008/10/13/vectorizing-the-notion-冒號) – knedlsepp