Re: Multiple application of LinearFilter
- To: mathgroup at smc.vnet.net
- Subject: [mg64852] Re: Multiple application of LinearFilter
- From: Peter Pein <petsie at dordos.net>
- Date: Sun, 5 Mar 2006 03:19:38 -0500 (EST)
- References: <dubjps$h0t$1@smc.vnet.net>
- Sender: owner-wri-mathgroup at wolfram.com
Lea Rebanks schrieb:
>
> Hi All,
>
> I have been using LinearFilter on my data with great success & achieve
> better results the more times I pass my data through the LinearFilter. (
> I have had to adjust data length to maintain correct indexing with
> PadLeft - but this is not my question here.)
>
> Below is how I am applying the multiple LinearFilter.
>
> EG
>
> originaldata
>
> Data1=LinearFilter[originaldata, {1/2,1/2}];
> Data2=LinearFilter[Data1, {1/2,1/2}];
> Data3=LinearFilter[Data2, {1/2,1/2}];
>
>
> My question is - Is there a shorter way of writing multiple passes of
> the above.
>
> If there is a way, please show the code.
>
> It would be great if I could simply adjust the number of passes from say
> three above to any number of passes to find optimum setting for data.
>
> Many thanks for your attention.
>
> Best Regards - Lea Rebanks...
>
>
>
Hi Lea,
what about a simple Nest[LinearFilter[#, {1/2, 1/2}] &, originaldata, 5];
Choose any number instead of 5.
Example:
originaldata = Table[Sin[x] + (Random[] - 1/2)/5, {x, 0, 2Ï?, Ï?/1000.}];
ListPlot[originaldata];
and
ListPlot@Nest[LinearFilter[#, {1/2, 1/2}] &, originaldata, 100];
HTH,
Peter