Re: Basic programming

• To: mathgroup at smc.vnet.net
• Subject: [mg93589] Re: [mg93576] Basic programming
• From: DrMajorBob <btreat1 at austin.rr.com>
• Date: Sun, 16 Nov 2008 07:04:37 -0500 (EST)
• References: <200811151103.GAA16591@smc.vnet.net>

```Here's a bit of data:

data = RandomReal[{0, 1}, 100];

Here's the moving standard deviation, 10 elements at a time:

StandardDeviation /@ Partition[data, 10, 1]

(results omitted)

and here's the StandardDeviation applied to 1,2, .... ,100 elements:

Clear[stdev]
stdev[dat_List][n_] /; n < 2 = 0;
stdev[dat_List][n_] /; n <= Length@dat :=
StandardDeviation@Take[dat, n]
Array[stdev[data], 100]

(results omitted)

Bobby

On Sat, 15 Nov 2008 05:03:52 -0600, BionikBlue <frankflip at hotmail.com>
wrote:

> Hey I'm a beginner in mathematica and I'm trying to code a little
> something but can't seem to be able to make it work... I know its pretty
> basic and that's exactly my problem since the mathematica help is a bit
> overkill for what I need.
>
> I have daily stock prices for a stock on a 100 day period, I want to
> compute the standard deviation for a rolling 10 days period for the
> whole list of data.
>
> So basically, I would like to do something like this :
> stdev(1;;10)
> then stdev(2;;11)
> until stdev(91;;100)
> and get the results in a list
>
> Id also like to get it another way, by starting with only one
> observation and building my standard deviation calculation until I have
> my whole rolling period built up, for example :
> stdev(1)
> stdev(1,2)
> stdev(1,2,3)
> until stdev(1;;10)
> then same as before, roll the period until the end of dataset and
> produce a list of the results.
>
> Thanks for the help, if what I wrote is not clear enough let me know,
> Ill try to explain it in more details!
>

--
DrMajorBob at longhorns.com

```

• Prev by Date: Re: Complement ...
• Next by Date: Re: Fourier Transform
• Previous by thread: Re: Re: LatticeReduce
• Next by thread: RE: Basic programming