[datatable-help] changing data.table by-without-by syntax to require a "by"
Arunkumar Srinivasan
aragorn168b at gmail.com
Wed May 7 12:10:57 CEST 2014
The change of the defaults in 1.9.3 breaks existing code, which shoud not be
(see. DT FAQ 1.8).
Thanks. Yes, that's what will be the case when it hits CRAN. There will be an option to use the older feature, IIUC. Matt can clarify this point further.
I know that 1.9.3 is a development version, but I can't use 1.9.2 due to
http://r.789695.n4.nabble.com/Change-in-list-behavior-inside-join-td4687469.html
Can you show us an example that 1.9.2 doesn't but 1.9.3 does?
In your case, you should be using stable 1.9.2 version (at least until counter measures are in place for by=.EACHI). And you should ask your administrators to downgrade R, if you don't want that bug to bite you, until this is fixed. But I'm repeating myself.
Arun
From: nachti kpm.nachtmann at gmail.com
Reply: nachti kpm.nachtmann at gmail.com
Date: May 7, 2014 at 11:02:30 AM
To: datatable-help at lists.r-forge.r-project.org datatable-help at lists.r-forge.r-project.org
Subject: Re: [datatable-help] changing data.table by-without-by syntax to require a "by"
The change of the defaults in 1.9.3 breaks existing code, which shoud not be
(see. DT FAQ 1.8). Would be fine if there is a possibility that code works
with different versions of DT and R (e.g. for usage in packages).
See the example here: https://gist.github.com/nachti/34b2dc46868b9268c5af
<https://gist.github.com/nachti/34b2dc46868b9268c5af>
I know that 1.9.3 is a development version, but I can't use 1.9.2 due to
http://r.789695.n4.nabble.com/Change-in-list-behavior-inside-join-td4687469.html
<http://r.789695.n4.nabble.com/Change-in-list-behavior-inside-join-td4687469.html>
and I can't switch back to an older R-Version because of missing permissions
on the server. I have to use a different versions of R and DT parallel.
If I rewrite my code that it works for 1.9.3, it doesn't work with 1.8.10
any more. (see also
http://stackoverflow.com/questions/23289646/update-subset-of-data-table-based-on-join-using-data-table-1-9-3-does-not-work-a
<http://stackoverflow.com/questions/23289646/update-subset-of-data-table-based-on-join-using-data-table-1-9-3-does-not-work-a>
by = key(something) is not the same as by = .EACHI, but even if I can get a
solution using the first, 1.8.10 gives a warning, that I shouldn't do that:
In addition: Warning message:
In `[.data.table` ...:
by is not necessary in this query; it equals all the join columns in the
same order. j is already evaluated by group of x that each row of i matches
to (by-without-by, see ?data.table). Setting by will be slower because a
subset of x is taken and then grouped again. Consider removing by, or
changing it.
nachti
--
View this message in context: http://r.789695.n4.nabble.com/changing-data-table-by-without-by-syntax-to-require-a-by-tp4664770p4690100.html
Sent from the datatable-help mailing list archive at Nabble.com.
_______________________________________________
datatable-help mailing list
datatable-help at lists.r-forge.r-project.org
https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/datatable-help
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.r-forge.r-project.org/pipermail/datatable-help/attachments/20140507/cb19459e/attachment.html>
More information about the datatable-help
mailing list