[datatable-help] Advance warning: removal of J() outside of DT[...]

Matthew Dowle mdowle at mdowle.plus.com
Thu Jun 28 20:55:51 CEST 2012


All,

Now in v1.8.1 on R-Forge. Please shout if this causes any problems.

o New DT[.(...)] syntax (in the style of package plyr) is identical to 
  DT[list(...)], DT[J(...)] and DT[data.table(...)]. The J() alias
  has been removed from data.table's namespace, but still works inside 
  DT[...], as in DT[J(...)]. J() was conflicting with function J() in 
  package XLConnect (#1747) and rJava (#2045). For data.table to change 
  was easier, with some efficiency advantages too.
  If you have used J() independently (i.e. outside DT[...]) then you   
  may see
      'Error: could not find function "J"'
  and if so merely type
      J = data.table
  at the prompt and your code should work (albeit by reintroducing the 
  conflict with XLConnect and rJava) until you can replace your calls 
  to J() with list() or data.table(). This should work if any packages 
  you use have themselves used J() outside of DT[...], too.
  Aside: we plan to add ..(), so that .() and ..() are analogous to
  the file system's ./ and ../; i.e., .() evaluates within the frame
  of DT, ..() in the parent scope.

Matthew




More information about the datatable-help mailing list