Thanks Roger; you are right. The non overlapping version is something like
a interval average. It reduces the number of data points but I dont know
how useful it is. I will try the others. Thanks again
On Feb 17, 2014 9:57 PM, "Roger Hui" <[email protected]> wrote:

>    20%~ each +/"1 each _20 <\ Prices
>
> This is not moving average as I understand it, because the windows don't
> overlap.  You have to use 20 instead of _20.  But a better way is:
>
>    avg=: +/ % #
>    20 avg\ Prices
>
> That is, you don't have to box everything up and then apply f to each; you
> can give the verb to the adverb, the way verbs and adverbs are meant to
> work together.
>
>
>
>
>
> On Mon, Feb 17, 2014 at 6:36 PM, Joe Bogner <[email protected]> wrote:
>
> > I thought it might be fun to post a J vs R side-by-side comparison. The
> > character counts aren't meant to be exact... The solutions are fairly
> > similar up until the moving averages. It wasn't meant as a code golf
> > exercise.
> >
> > http://jsbin.com/ihunin/337
> >
> > After reading R code for years, I actually think the J version is more
> > pleasant to look at
> >
> > I'd like to add an example where J really shines over R. The data.table
> > package in R makes it much more succint than normal R code. The most
> stark
> > example I came up with so far is the moving average. Are there any other
> > ideas?
> >
> > There's probably a more concise way to express this too:
> > plot > 20%~ each +/"1 each _20 <\ Prices
> >
> > I thought I could get atop or something to work but I gave up after about
> > 10 minutes.
> >
> >
> >
> >
> >
> >
> > On Mon, Feb 17, 2014 at 12:59 PM, Joe Bogner <[email protected]>
> wrote:
> >
> > > Here is the code:
> > >
> > > NB. retrieve stock prices from yahoo and do some graphing
> > > load 'web/gethttp'
> > > load 'tables/csv'
> > > load 'plot'
> > >
> > > URL=:'http://ichart.finance.yahoo.com/table.csv?s='
> > >
> > > quote=: 3 : 'fixcsv gethttp URL,y'
> > >
> > > Quotes=: quote each 'DAL';'UAL'
> > >
> > > 'DAL UAL'=:Quotes
> > >
> > > DALd =: |. }. DAL
> > >
> > > Prices=: > ". each 4{"1 DALd
> > > plot Prices
> > >
> > > MaxPrice=: >./ Prices
> > >
> > > plotPrices =: 3 : 0
> > >  pd (i. # y);(|. ,> y)
> > > )
> > >
> > > plotTickers =: 3 : 0
> > >  Tickers=.y
> > >  pd 'reset'
> > >  pd 'key',(, > ' '&, each Tickers)
> > >  Quotes=.quote each Tickers
> > >  AllPrices=. ". each > }. each 4{"1 each Quotes
> > >  plotPrices"1 AllPrices
> > >  pd 'show'
> > > )
> > > plotTickers 'UAL';'DAL';'JBLU'
> > >
> > > Years=. 4 {. each 0{"1 DALd
> > > groupBy=: 4 : '(((~.y) i. y)) ,/. x'
> > > YearGroups=:Prices groupBy Year
> > > MaxPricePerYear =: >. /"1 YearGroups
> > > ]YearKeys=: ". > ~. Year
> > > plot YearKeys;MaxPerYear
> > >
> > >
> > >
> > >
> > >
> > > On Mon, Feb 17, 2014 at 12:49 PM, Joe Bogner <[email protected]>
> > wrote:
> > >
> > >> This is a continuation of this thread:
> > >>
> http://jsoftware.com/pipermail/programming/2014-February/035222.htmlbut
> > >> moved to chat.
> > >>
> > >> I posted a video http://www.youtube.com/watch?v=qXFpgYvbogw with the
> > >> intent of showing some of J's capabilities.
> > >>
> > >> I would be happy to hear any feedback on the video.
> > >>
> > >> Looking back at it, I wish I bumped up the font size. It's best viewed
> > >> full screen.
> > >>
> > >> I tried to flip through things pretty quickly to fit in as much as
> > >> possible.  I probably unnecessarily explained things in a few cases. I
> > >> still need to practice using the right term for the operations too.
> > >>
> > >> In terms of my examples, I would like to know if I could put dates
> > >> somehow on on X-axis.
> > >>
> > >> I also worked up an example that used a secondary axis with % change,
> > but
> > >> I haven't recorded it yet. That might be a continuation. Plotting on a
> > >> secondary axis is something that J's plot does real easily compared to
> > R.
> > >>
> > >> Thanks for any feedback
> > >>
> > >
> > >
> > ----------------------------------------------------------------------
> > For information about J forums see http://www.jsoftware.com/forums.htm
> >
> ----------------------------------------------------------------------
> For information about J forums see http://www.jsoftware.com/forums.htm
>
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to