dear
I want to apply loop in a way that there is a window of 2000 samples and will increment by 500 samples...
means window size (w) increase like: 0-2000, 2500-4500, 5000-7000, 7500-9500....till 30000.
then the window (w) apply in same way on data (x) like = 0-2000, 2500-4000 etc...
how can i do this?
x = dath001 % data, size 30000x4
w = hann(2000); % window
datawindow = w.*x(1:2000,:); % apply window in data

 采纳的回答

Star Strider
Star Strider 2019-8-7

0 个投票

You have the Signal Processing Toolbox, so see if the buffer function will do what you want.

5 个评论

ill look into buffer function.
dear
clear all,close all, clc
load ('dath001.mat');
x = dath001; % 30000x4 size
w = hann(2000);
datawindow1 = w.*buffer(x(:,1),2000,-500);
datawindow2 = w.*buffer(x(:,2),2000,-500);
datawindow3 = w.*buffer(x(:,3),2000,-500);
datawindow4 = w.*buffer(x(:,4),2000,-500);
above program give
datwindow1 = 2000x12
datwindow2 = 2000x12
.
.
datwindow4 = 2000x12
I want one variable
datawindow give 24000x4 values.
also tell how i apply loop for datawindow1-4...
Thank you
You do not need a loop. Just create column vectors from the individual ‘datawindow’ results, and concatenate them horizontally.
This will probably work:
datawindow = [datawindow1(:), datawindow2(:), datawindow3(:), datawindow4(:)];
I do not have your data, so I cannot test it with them.
Thanks alot dear....
As always, my pleasure.

请先登录,再进行评论。

更多回答(0 个)

类别

在 帮助中心 和 File Exchange 中查找有关 Geology 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by