The version I sent earlier appeared to work, but actually does not. This
version does:
tblcsv =: 4 : 0
r=. y-.'"/'
r=, '_' ((r='-')#i.$r) } r
r=.([: < ;._1 ',',]) ;._2 r
ttl=. {.r
dat=. |:}.r
for_k. (x e. 'dn')#i.$x do.
dat=. (><&.>".'0',"1>k{dat) k}dat
end.
ttl,|:dat
)
Thanks again to everyone for all the help.
On Thu, Jan 12, 2012 at 8:59 AM, Tom Szczesny <[email protected]> wrote:
> Thanks much.
> Since I create the csv files, I was able to take some shortcuts:
> 1) All " are spurious (no commas in columns containing comments)
> 2) - only occurs in negative numbers
> 3) / only occus in dates 2004/12/15 (remove the / and don't need
> getdate at all)
>
> This definition is working fine:
>
> tblcsv =: 4 : 0
> r=. y-.'"/'
> r=, '_' ((r='-')#i.$r) } r
> r=.([: < ;._1 ',',]) ;._2 r
> ttl=. {.r
> dat=. |:}.r
> for_i. (x e. 'dn')#i.$x do.
> dat=. (<"".>i{ dat) i} dat
> end.
> ttl,|:dat
> )
>
> For large files, the biggest time user might be the need to do transpose
> twice.
> tx=:'ssdndssnnnnnnnnnnnnndnns' tblcsv 1!:1 <'t.csv'
>
> On Thu, Jan 12, 2012 at 6:16 AM, R.E. Boss <[email protected]> wrote:
>
>> If you have a lot of dates, say >100k, getdate will be rather slow.
>> But since the nub of these dates probably will contain <10k dates, you can
>> use nubindex http://www.jsoftware.com/help/dictionary/d221.htm
>> For that the following adverb will do (tested long time ago)
>>
>> nbind=:1 : '](i.!.0~ { u @:]) ~.'
>>
>>
>> R.E. Boss
>>
>>
>> > -----Oorspronkelijk bericht-----
>> > Van: [email protected] [mailto:general-
>> > [email protected]] Namens R.E. Boss
>> > Verzonden: woensdag 11 januari 2012 21:48
>> > Aan: 'General forum'
>> > Onderwerp: Re: [Jgeneral] Data from csv files
>> >
>> > require 'dates'
>> >
>> > 100 #. getdate'2012/01/12'
>> > 20120112
>> >
>> > I would transpose (|:) the matrix and then work a row at a time,
>> depending
>> > on the control vector.
>> > Recently I learned techniques to assign different verbs to different
>> items.
>> >
>> >
>> > R.E. Boss
>> >
>> >
>> > > -----Oorspronkelijk bericht-----
>> > > Van: [email protected] [mailto:general-
>> > > [email protected]] Namens Tom Szczesny
>> > > Verzonden: woensdag 11 januari 2012 21:13
>> > > Aan: General forum
>> > > Onderwerp: Re: [Jgeneral] Data from csv files
>> > >
>> > > Thanks, that is very nice to know, but ...
>> > >
>> > > Since the csv files I need were created by me, I also know that
>> > > - the only occurrences of " are spuriously added.
>> > > - the only occurrences of - are in the representation of negative
>> > > numbers, so I can define
>> > >
>> > > tblcsv=: 3 : 0
>> > > r=: (-.y='"')#y
>> > > r=: '_' ((r='-')#i.$r) } r
>> > > ([: < ;._1 ',',]) ;._2 r
>> > > )
>> > >
>> > > Next, I plan to figure out how to convert the columns with character
>> > > strings representing numbers into actual numbers,
>> > > and the columns with character strings representing dates (
>> 2012/01/12 )
>> > > into numbers representing dates ( 20120112 ),
>> > > where tblcsv becomes dyadic with a control vector like 'SDSSNDNSNS' as
>> > the
>> > > left argument
>> > > indicating which columns are strings, dates & numbers.
>> > >
>> > > On Wed, Jan 11, 2012 at 2:27 PM, Ric Sherlock <[email protected]>
>> wrote:
>> > >
>> > > > Note that you don't need to define tblcsv explicitly:
>> > > > tblcsv=: ([: <;._1 ','&,);._2
>> > > > or
>> > > > tblcsv=: ([: <;._1 ',' , ]);._2
>> > > >
>> > > > On Thu, Jan 12, 2012 at 6:29 AM, Tom Szczesny <[email protected]>
>> > > wrote:
>> > > > > tested ...... works . ..... thanks!
>> > > > >
>> > > > > On Wed, Jan 11, 2012 at 12:23 PM, R.E. Boss <[email protected]>
>> > wrote:
>> > > > >
>> > > > >> tblcsv =: 3 : 0
>> > > > >> ([: <;._1 ',',]) ;._2 y
>> > > > >> )
>> > > > >> (untested)
>> > > > >>
>> > > > >> R.E. Boss
>> > > > >>
>> > > > >>
>> > > > >> > -----Oorspronkelijk bericht-----
>> > > > >> > Van: [email protected] [mailto:general-
>> > > > >> > [email protected]] Namens Tom Szczesny
>> > > > >> > Verzonden: woensdag 11 januari 2012 17:55
>> > > > >> > Aan: General forum
>> > > > >> > Onderwerp: Re: [Jgeneral] Data from csv files
>> > > > >> >
>> > > > >> > Given
>> > > > >> >
>> > > > >> > cutc =: 3 : 0
>> > > > >> > < ;._1 ',',y
>> > > > >> > )
>> > > > >> >
>> > > > >> > tblcsv =: 3 : 0
>> > > > >> > cutc ;._2 y
>> > > > >> > )
>> > > > >> >
>> > > > >> > tblcsv 1!:1 <'test.csv'
>> > > > >> >
>> > > > >> > I assumed that I would be able to represent this as a single
>> > > > definition,
>> > > > >> > such as
>> > > > >> >
>> > > > >> > tblcsv =: 3 : 0
>> > > > >> > ( <;._1 ',',) ;._2 y
>> > > > >> > )
>> > > > >> >
>> > > > >> > or
>> > > > >> >
>> > > > >> > tblcsv =: 3 : 0
>> > > > >> > (( <;._1',',)&) ;._2 y
>> > > > >> > )
>> > > > >> >
>> > > > >> > I've tried several other vaiations, and all result in 'syntax
>> > error'.
>> > > > Am
>> > > > >> I
>> > > > >> > missing something, or does the verb applied to each 'cut'
>> interval
>> > > > need
>> > > > >> to
>> > > > >> > be defined separately?
>> > > > >> >
>> > > > >> > On Mon, Jan 9, 2012 at 5:00 PM, Arthur Anger <[email protected]>
>> > > wrote:
>> > > > >> >
>> > > > >> > > I often use Rank to select sub-arrays from an array:
>> > > > >> > > <"0 i. 7
>> > > > >> > > --Art
>> > > > >> > > ------------------
>> > > > >> > > Quoting [email protected]:
>> > > > >> > > . . .
>> > > > >> > > > Message: 2
>> > > > >> > > > Date: Mon, 9 Jan 2012 11:46:24 -0500
>> > > > >> > > > From: Tom Szczesny <[email protected]>
>> > > > >> > > > Subject: Re: [Jgeneral] Data from csv files
>> > > > >> > > > To: General forum <[email protected]>
>> > > > >> > > > Message-ID:
>> > > > >> > > > <CABn7SNYFw2gyAPKcjx1DMLEru97NMTst6zoGx=
>> > > > >> > > [email protected]>
>> > > > >> > > > Content-Type: text/plain; charset=ISO-8859-1
>> > > > >> > > >
>> > > > >> > > > As mentioned in the dictionary entry for cut:
>> > > > >> > > > the phrase u;._2 y applies the verb u to each
>> interval
>> > > > created
>> > > > >> by
>> > > > >> > > cut,
>> > > > >> > > > where the fret is the last item, and marks the ends of the
>> > > > intervals.
>> > > > >> > > >
>> > > > >> > > > What is the notation for applying the "each" concept to a
>> verb
>> > > > >> > > independent
>> > > > >> > > > of cut ?
>> > > > >> > > > For example,
>> > > > >> > > > <i.7
>> > > > >> > > > +-------------+
>> > > > >> > > > |0 1 2 3 4 5 6|
>> > > > >> > > > +-------------+
>> > > > >> > > >
>> > > > >> > > > How do you express
>> > > > >> > > > < each i.7
>> > > > >> > > > and get 7 individually boxed items?
>> > > > >> > > > (I could not find an entry for "each" in the Index, nor in
>> the
>> > > > >> > > Vocabulary.)
>> > > > >> > > . . .
>> > > > >> > > > End of General Digest, Vol 76, Issue 8
>> > > > >> > > > **************************************
>> > > > >> > >
>> > > > >> > >
>> > > >
>> ----------------------------------------------------------------------
>> > > > >> > > 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
>> > > >
>> ----------------------------------------------------------------------
>> > > > 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
>>
>
>
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm