Filtering with non-zero initial conditions

3 次查看(过去 30 天)
I have a matrix of time series data from an industrial furnace. The data is arranged in columns, and there are 9 columns of data. The length is about 15000 and there are 9 temperatures. So in this 15000 by 9 matrix (15000 rows and 9 columns) the 9 columns represent the individual temperature. The first row in the matrix is the oldest data, and the last row is the most recent. I want to filter this using one of the filter functions. Basically, I want to filter out noise by applying a 1 minute or 2 minute filter. The problem is that these temperatures range from about 450 F to about 610 F. I do not want to see a zero initial condition. What function should I use and how should I set it ?
  2 个评论
Rik
Rik 2020-3-4
Do you have the time difference for each of these rows? Some kind of moving average may be what you need.
Atique Malik
Atique Malik 2020-3-4
You could be right. This is sampled data from an industrial process. The dT is 30 seconds between samples.

请先登录,再进行评论。

采纳的回答

Rik
Rik 2020-3-5
See if the code below works for your purpose.
totaltime=2;%in minutes
samplerange=totaltime/0.5;%30 seconds/row
data=randi([450 610],15000,9);%generate some random data
output=movmean(data,samplerange,2);

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Digital Filter Analysis 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by