how generating evenly spaced vectors with overlap?

2 ビュー (過去 30 日間)
pietro
pietro 2014 年 6 月 26 日
コメント済み: pietro 2014 年 6 月 27 日
Hi all,
I need to generate evenly spaced vectors with overlap. How can I do it? Here an example:
Input: [0 5 10 15 20];
Output: [0 5, 4 10,9,15,20];
I know they are not even, but also like that is fine.
Thanks cheers
  3 件のコメント
the cyclist
the cyclist 2014 年 6 月 26 日
I don't understand the rule for going from input to output.
Also, numeric matrices in MATLAB cannot be "uneven". Do you want to put a placeholder of "NaN" (not-a-number), or use some other class of variable, such as a cell array?
pietro
pietro 2014 年 6 月 26 日
By istance I want to create 4 slices of a 20 seconds long time history with an overlap of 0%. So I do:
SeparationPoints=linspace(0,20,5);
and I get: [0 5 10 15 20] and my signal slices are: [0 5; 5 10;10 15;15 20];
with a 5% overlap, that it will be: 20*5/100=1 so my signal slices will be something like [0 5; 4 10 ;9 15; 14 20]; The 5% of overlapping is the difference between the end of the slice and the beginning of the following one.
Is it clearer now?

サインインしてコメントする。

採用された回答

Joseph Cheng
Joseph Cheng 2014 年 6 月 26 日
編集済み: Joseph Cheng 2014 年 6 月 26 日
Starting with the linspace above that people suggested you can get the over lap you by doing this:
input = [0 5 10 15 20];
overlap = 5; % percent
overlap = input(end)*(overlap/100);
output = [input(1:end-1)'-overlap input(2:end)']
output(output<0) = 0;
disp(output)

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeMatched Filter and Ambiguity Function についてさらに検索

タグ

製品

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by