Data filtering one-second averages

3 次查看(过去 30 天)
I have a data set that is collected at about 6.5hz. In the processing of the data, I put the data into Excel and just do a 3 second running average for the entire data set to smooth out the data. Next I would like for a Matlab program to just pick one point per second. I was thinking it could be the first data point each second. For example, if the times for the first second are 1.088, 1.242. 1.398, 1.553, 1.706, and 1.863, I would just want to pull the row of data at 1.088 and output it into a new a variable.
What would be the best way to go about doing this. If there's code to automate the 3 second running average (about 20 lines in excel), that'd be awesome too. Thanks!
  3 个评论
Azzi Abdelmalek
Azzi Abdelmalek 2016-3-28
The question is not clear, can you illustrate with an example?
Chad Wiggins
Chad Wiggins 2016-3-29
Pretty much, I just want to pull one line of data each second. In the case above, I would want it to have the line where time = 0, 1.088, 2.020, 3.103, 4.033, and 5.12
This will just downsample the data and make it easier to work with and do different analysis with.
Help a little?

请先登录,再进行评论。

采纳的回答

MHN
MHN 2016-3-30
编辑:MHN 2016-3-30
Load your data in a matrix which the name is Data, then
EndSecond = 3;
NewData = zeros(EndSecond+1,5);
for i = 0:EndSecond
ind = find(Data>=i & Data<i+1,1,'first');
NewData(i+1,:) = Data(ind, :);
end
  2 个评论
Chad Wiggins
Chad Wiggins 2016-3-30
Thank you. This works. Only issue is that it throws an error (Improper assignment with rectangular empty matrix.) after the line with NewData(i+1,:) = Data(ind, :);
The NewData variable looks to be correct. Will this prevent me from putting any other commands after this though?
Chad Wiggins
Chad Wiggins 2016-3-30
Only change you need to make is to add in the first line of the for-loop statement. must add a "-1" to keep from getting an error
for i= 0:EndSecond-1

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Performance and Memory 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by