getting 1hertz data from 10 hertz

16 次查看(过去 30 天)
Hi,
I have a 10htz data file. I want to convert that into 1htz. Is there an easy way to downshift the points.
for example: Time 0.1, 0.2, -- -- -- 0.9, 1.0, 1.1, 1.2, -- -- 1.9, 2.0.
I want my output to be just 1, 2, 3, --

采纳的回答

sri satya ravi
sri satya ravi 2017-1-10
There is an easier function in matlab called downsample. That works for me ..
Thanks....!!!

更多回答(1 个)

Image Analyst
Image Analyst 2016-9-24
You can get what you asked for (in the second half of your question) from your signal like this:
newSignal = signal(10:10:end);
Of course subsampling a signal speeds it up because the time is now shorter, if you're using the same time scale. Instead of a sound playing in (say) 100 seconds, it will now play the complete sound in only 10 seconds - ten times faster than before. To make a signal be 1 Hz instead of 10 Hz on the same time scale you need to stretch things out - add samples, not get rid of them.
  2 个评论
sri satya ravi
sri satya ravi 2016-12-27
Matlab has a simple function called downsample.....That helped but thanks a lot for replying.
Image Analyst
Image Analyst 2016-12-28
Yes, if you have the Signal Processing Toolbox you can use downsample() though I don't know why you'd need a function to do such a simple thing.

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Audio Processing Algorithm Design 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by