Confirming Mike's assertion...

   load 'stats'
   $'acgt' {~ 3 permrep 4
64 3


On Sun, 13 Oct 2019, 11:59 'Jim Russell' via Programming, <
programm...@jsoftware.com> wrote:

> Only 64?  So worst case ascii text summaries would be 64^ 3 rows?
>
> > On Oct 12, 2019, at 6:36 PM, 'Mike Day' via Programming <
> programm...@jsoftware.com> wrote:
> >
> > Yes, that’s me.
> >
> > Sorry about the “Nb”s ... I was adding comments and trying to make the
> lines runnable.
> >
> > I should have said that I wrote these example functions just for this
> discussion. They’re not well tested, nor, likely/possibly, proof against
> edge conditions such as empty datasets.
> >
> > BTW, I guess the “alphabet” for trigrams of DNA sequences has 4^3 = 64
> elements.
> >
> > Mike
> >
> >
> >
> > Sent from my iPad
> >
> >>> On 12 Oct 2019, at 21:00, 'Jim Russell' via Programming <
> programm...@jsoftware.com> wrote:
> >>>
> >>>
> >>>
> >>>> On Oct 12, 2019, at 1:52 PM, 'Mike Day' via Programming <
> programm...@jsoftware.com> wrote:
> >>>
> >>> Sorry, I wasn’t considering trigrams in my off the cuff stuff,
> >>>
> >>> Mike
> >>
> >> Thanks Mike (Day?). Can’t always tell with fourm replies until I reply…
> >>
> >> I appreciate (and am still studying) your stuff, and learning a lot
> from all these exchanges.  I converted your reply to a script also, and so
> far have {with my comments enclosed like this}:
> >>
> >> NB.> eg for Ric Sherlock’s example, modified for unequal sample sizes:
> >> NB.> Apologies for non-alignment, as seen on iPad anyway.
> >>
> >> NB. {Defs moved to front, earlier results commented, and expected to
> >> NB. change -- due to ?, but kept to sompare shape and type.}
> >> NB. {Still trying to understand the monad/duad stuff...}
> >> NB. {Changed a couple of Nb.'s t0 NB.}
> >>
> >> NB. absolute frequencies for one set
> >> fr1 =: 3 : 0
> >> y fr1~ /:~ ~. y
> >> :
> >> alf =. x
> >> ser =. y
> >> <:@#/.~ alf, ser
> >> )
> >> NB. relative frequencies for one set
> >> rfr1 =: (%+/)@:fr1
> >> NB. compare frequencies
> >> cfr =: 3 : 0
> >> y cfr~ /:~ ~.;y
> >> :
> >> alf =. x
> >> sers=. y
> >> alf&fr1 every y
> >> )
> >> NB. compare relative frequencies
> >> crfr =: 3 : 0
> >> y crfr~ /:~ ~.;y NB. Default base is sorted nub of all inputs.
> >> :
> >> alf =. x
> >> sers=. y
> >> alf&rfr1 every y
> >> )
> >> ]'X Y'=: 'actg' {~ 2 30 ?@$ 4
> >> tttgcctataaacaatgcagaccagcacgt
> >> ggcttcaacgactccagagtcttgctgagt
> >> NB.catctaagtcgataatccacttacttccgg
> >> NB.cagcaaggacaggtgctaatacacactcgc
> >> [X =: 'actg' {~ 40?@$ 4
> >> attaggtgccgacagaagtggccaacctcatcgacaaagg
> >> NB.ttagcacttccctcagagttacccacactagctggtgcag
> >> [each NB. in Z?
> >> [&.>
> >> fr1 each X;Y NB. Absolute frequencies, using sorted nubs as base
> >> +----------+-------+
> >> |13 10 11 6|6 8 8 8|
> >> +----------+-------+
> >> NB.+---------+--------+
> >> NB.|9 13 8 10|10 9 7 4|
> >> NB.+---------+--------+
> >> rfr1 each X;Y NB. Relative freqs
> >> +---------------------+------------------------------+
> >> |0.325 0.25 0.275 0.15|0.2 0.266667 0.266667 0.266667|
> >> +---------------------+------------------------------+
> >> NB.+--------------------+------------------------------+
> >> NB.|0.225 0.325 0.2 0.25|0.333333 0.3 0.233333 0.133333|
> >> NB.+--------------------+------------------------------+
> >> NB. Comparisons
> >> crfr X;Y NB. Absolute
> >> 0.325 0.25 0.275 0.15
> >> 0.2 0.266667 0.266667 0.266667
> >> NB.9 13 8 10
> >> NB.10 9 7 4
> >> NB. load'~/user/temp.ijs'
> >> crfr X;Y NB. Relative
> >> 0.325 0.25 0.275 0.15
> >> 0.2 0.266667 0.266667 0.266667
> >> NB. 0.225 0.325 0.2 0.25
> >> NB.0.333333 0.3 0.233333 0.133333
> >> NB.You can supply your “alphabet” as Left argument..
> >> 'tagc' fr1 X NB. In your preferred order!
> >> 6 13 11 10
> >> NB.10 9 8 13
> >> NB.fns below sign off,{now moved to front}
> >> NB.Mike
> >> NB.
> >> ----------------------------------------------------------------------
> >> 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
>
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to