Doug,  I found some shelter after months of being bit by git using this 
(free for non-commercial use) www.syntevo.com/smartgit/ 



On Friday, February 12, 2016 at 12:49:27 PM UTC-5, Douglas Bates wrote:
>
> On Thursday, February 11, 2016 at 3:06:45 PM UTC-6, ivo welch wrote:
>>
>>
>> hi doug---and vice-versa.  it's interesting that a core function (reading 
>> a .csv file) would not be in a native julia library.  when are you 
>> switching your students to julia?  regards,  /iaw
>>
>
> Writing a function to read a .csv file is not trivial - partly because CSV 
> is not well-defined.  It is also the case of an itch getting scratched - if 
> those working on Julia with the skills to write such a function don't have 
> a need to read .csv files that particular functionality stagnates.
>
> The definition and functionality of data frames, which are the natural 
> output when reading a CSV file,  in Julia is still being debated.  In R the 
> choices were much easier because R was designed to emulate S version 3 in 
> which a data frame was a central construct.  Sacrifices in performance were 
> made to allow for checking for NA's during each atomic arithmetic 
> operation.  That trade-off wouldn't fly in Julia.  Also R vector structures 
> all allow for element names - again at an expense in performance.
>
> I'm not really in the position to convert my students as I am now an 
> Emeritus Professor.  I do still offer a seminar series on "Statistics with 
> Julia" and have convinced some students to use Julia in thesis research.
>
> I would be quite happy with Julia if only git and I got along better.  I 
> just lost three days worth of work this morning because of yet another git 
> disaster.
>
>>
>> ----
>> Ivo Welch (ivo....@gmail.com)
>> http://www.ivo-welch.info/
>> J. Fred Weston Distinguished Professor of Finance
>> Anderson School at UCLA, C519
>> Free Finance Textbook, http://book.ivo-welch.info/
>> Exec Editor, Critical Finance Review, 
>> http://www.critical-finance-review.org/
>> Editor and Publisher, FAMe, http://www.fame-jagazine.com/
>>
>> On Thu, Feb 11, 2016 at 12:37 PM, Douglas Bates <dmb...@gmail.com> wrote:
>>
>>> Hi Ivo,
>>>
>>> Good to hear from you.
>>>
>>> On Wednesday, February 10, 2016 at 9:58:37 AM UTC-6, ivo welch wrote:
>>>>
>>>>
>>>> ladies and gents---I am not (yet) a julia user.
>>>>
>>>> may I suggest adding more examples into two places where julia users 
>>>> will face starting hurdles?
>>>>
>>>> [1] the I/O docs of julia.  like, reading and writing csv files that 
>>>> are compressed and decompressed on-the-fly, even if not in the ultimate 
>>>> efficient manner.    a large fraction of the time and frustration of new 
>>>> users is consumed by the task of shoehorning data into and out of new 
>>>> computer languages.  with all of R's problem, the ' d <- 
>>>> read.csv("f.csv")' 
>>>> and 'd<-read.csv(pipe(paste("gzcat ", fname)))' reduced this entry 
>>>> frustration greatly.  perhaps xml file reading and writing.  perhaps...
>>>>
>>>> [2] more 'standard task' programs would be great.  read a csv file, run 
>>>> a regression according to variable names on the command line, print 
>>>> output, 
>>>> draw a graph.  I know there are fragments throughout the docs, but some 
>>>> section with ready to run complete programs would be good, perhaps at the 
>>>> end of the manual.
>>>>
>>>> in a year, I hope to switch my students from R to julia.
>>>>
>>>
>>> My main use of the RCall package is to import datasets from R into 
>>> Julia.  If I have a dataset in an R package I use, e.g.
>>>
>>>  julia> using RCall
>>>
>>> julia> ds = rcopy("lme4::Dyestuff")
>>> 30x2 DataFrames.DataFrame
>>> | Row | Batch | Yield  |
>>> |-----|-------|--------|
>>> | 1   | "A"   | 1545.0 |
>>> | 2   | "A"   | 1440.0 |
>>> | 3   | "A"   | 1440.0 |
>>> | 4   | "A"   | 1520.0 |
>>> | 5   | "A"   | 1580.0 |
>>> | 6   | "B"   | 1540.0 |
>>> | 7   | "B"   | 1555.0 |
>>> | 8   | "B"   | 1490.0 |
>>> | 9   | "B"   | 1560.0 |
>>> | 10  | "B"   | 1495.0 |
>>> | 11  | "C"   | 1595.0 |
>>> | 12  | "C"   | 1550.0 |
>>> | 13  | "C"   | 1605.0 |
>>> | 14  | "C"   | 1510.0 |
>>> | 15  | "C"   | 1560.0 |
>>> | 16  | "D"   | 1445.0 |
>>> | 17  | "D"   | 1440.0 |
>>> | 18  | "D"   | 1595.0 |
>>> | 19  | "D"   | 1465.0 |
>>> | 20  | "D"   | 1545.0 |
>>> | 21  | "E"   | 1595.0 |
>>> | 22  | "E"   | 1630.0 |
>>> | 23  | "E"   | 1515.0 |
>>> | 24  | "E"   | 1635.0 |
>>> | 25  | "E"   | 1625.0 |
>>> | 26  | "F"   | 1520.0 |
>>> | 27  | "F"   | 1455.0 |
>>> | 28  | "F"   | 1450.0 |
>>> | 29  | "F"   | 1480.0 |
>>> | 30  | "F"   | 1445.0 |
>>>
>>> If I wanted to read a CSV file using the facilities in R I could use
>>>
>>> julia> rcopy("read.csv('/usr/share/distro-info/debian.csv')")
>>> 17x6 DataFrames.DataFrame
>>> | Row | version | codename       | series         | created      | 
>>> release      | eol          |
>>>
>>> |-----|---------|----------------|----------------|--------------|--------------|--------------|
>>> | 1   | 1.1     | "Buzz"         | "buzz"         | "1993-08-16" | 
>>> "1996-06-17" | "1997-06-05" |
>>> | 2   | 1.2     | "Rex"          | "rex"          | "1996-06-17" | 
>>> "1996-12-12" | "1998-06-05" |
>>> | 3   | 1.3     | "Bo"           | "bo"           | "1996-12-12" | 
>>> "1997-06-05" | "1999-03-09" |
>>> | 4   | 2.0     | "Hamm"         | "hamm"         | "1997-06-05" | 
>>> "1998-07-24" | "2000-03-09" |
>>> | 5   | 2.1     | "Slink"        | "slink"        | "1998-07-24" | 
>>> "1999-03-09" | "2000-10-30" |
>>> | 6   | 2.2     | "Potato"       | "potato"       | "1999-03-09" | 
>>> "2000-08-15" | "2003-07-30" |
>>> | 7   | 3.0     | "Woody"        | "woody"        | "2000-08-15" | 
>>> "2002-07-19" | "2006-06-30" |
>>> | 8   | 3.1     | "Sarge"        | "sarge"        | "2002-07-19" | 
>>> "2005-06-06" | "2008-03-30" |
>>> | 9   | 4.0     | "Etch"         | "etch"         | "2005-06-06" | 
>>> "2007-04-08" | "2010-02-15" |
>>> | 10  | 5.0     | "Lenny"        | "lenny"        | "2007-04-08" | 
>>> "2009-02-14" | "2012-02-06" |
>>> | 11  | 6.0     | "Squeeze"      | "squeeze"      | "2009-02-14" | 
>>> "2011-02-06" | "2014-05-31" |
>>> | 12  | 7.0     | "Wheezy"       | "wheezy"       | "2011-02-06" | 
>>> "2013-05-04" | ""           |
>>> | 13  | 8.0     | "Jessie"       | "jessie"       | "2013-05-04" | 
>>> "2015-04-25" | ""           |
>>> | 14  | 9.0     | "Stretch"      | "stretch"      | "2015-04-25" | ""   
>>>         | ""           |
>>> | 15  | 10.0    | "Buster"       | "buster"       | "2018-07-01" | ""   
>>>         | ""           |
>>> | 16  | NA      | "Sid"          | "sid"          | "1993-08-16" | ""   
>>>         | ""           |
>>> | 17  | NA      | "Experimental" | "experimental" | "1993-08-16" | ""   
>>>         | ""           |
>>>
>>>
>>> (It turns out that R's allowing either ' or " for enclosing strings is 
>>> an advantage for quoting strings within strings.)
>>>
>>
>>

Reply via email to