sliding window and keeping as a vector

I have D-1 data of points 1-500 I would like to slide this data to have 20points in each window and be as a vector [123...20, 21...40 ect] I was trying to do it but it is showing a matrix (20x25) I am new to matlab anyone could help me please?

답변 (1개)

Image Analyst
Image Analyst 2014년 9월 9일

0 개 추천

How about
array2D = reshape(data, [20,25]);
Is that what you meant and want?

댓글 수: 9

Nessa
Nessa 2014년 9월 9일
I would like to divide this 500 points into windows where I have first 20 points then another 20 points...and another (stored as a vectors) that I could make other operation on the data later (like what is an average of each bin of this 20 points, medians )
So:
median(array2D,2)
Start with something simple, data = 1:6 , and build from there. reshape and transpose (.') will be your friends
Image Analyst
Image Analyst 2014년 9월 9일
Nessa, if you have the Image Processing Toolbox, look at blockproc() which will let you apply some function/operation to a vector or image in "jumps" of 20. I.e. the window slides along in jumps of 20 pixels (or whatever you specify) rather than one element at a time. Though you could also process array2D row by row.
Nessa
Nessa 2014년 9월 9일
편집: Image Analyst 2014년 9월 9일
thank you, what I did is reshape(data,20,[]); and that is showing me is a matrix instead of vector :(
and Ive read online that there is a way of sliding windows data into n-samples and keep it as a vector not as a matrix.
Image Analyst
Image Analyst 2014년 9월 9일
Well you said you were starting with a vector, so what's the problem? It's already a vector. What operation do you want to do? Moving average, moving mean, some custom linear filter, some highly customized set of operations you've encapsulated into a custom function? What?
Image Analyst
Image Analyst 2014년 9월 9일
Nessa's "Answer" moved here:
calculate an average from each 20 points and further 20 points up to 500
Try this:
data = randi(9, 1, 500); % Sample data
array2D = reshape(data, [20, 25]);
means = mean(array2D, 1)
Nessa
Nessa 2014년 9월 9일
thank you :)
Image Analyst
Image Analyst 2014년 9월 9일
You're welcome. If we're done, then can you please mark the answer as "Accepted"? Thanks.

댓글을 달려면 로그인하십시오.

카테고리

도움말 센터File Exchange에서 Resizing and Reshaping Matrices에 대해 자세히 알아보기

태그

질문:

2014년 9월 9일

댓글:

2014년 9월 9일

Community Treasure Hunt

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

Start Hunting!

Translated by