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

 Réponse acceptée

Star Strider
Star Strider le 7 Août 2019

0 votes

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

5 commentaires

Ali Asghar
Ali Asghar le 8 Août 2019
ill look into buffer function.
Ali Asghar
Ali Asghar le 10 Août 2019
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
Star Strider
Star Strider le 10 Août 2019
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.
Ali Asghar
Ali Asghar le 11 Août 2019
Thanks alot dear....
Star Strider
Star Strider le 11 Août 2019
As always, my pleasure.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Loops and Conditional Statements dans Centre d'aide et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by