Message-ID: <053E0866-BA5B-42FC-A9A5-F70971A19803@comcast.net>
Date: 2017-02-20T16:50:15Z
From: David Winsemius
Subject: Confused about using data.table package,
In-Reply-To: <CABdHhvGrs4JJszrRQzORR+ZAi24Dt-2tHu2gqOnZoE6PRRz2jg@mail.gmail.com>
> On Feb 20, 2017, at 8:12 AM, Hadley Wickham <h.wickham at gmail.com> wrote:
>
> On Sun, Feb 19, 2017 at 3:01 PM, David Winsemius <dwinsemius at comcast.net> wrote:
>>
>>> On Feb 19, 2017, at 11:37 AM, C W <tmrsg11 at gmail.com> wrote:
>>>
>>> Hi R,
>>>
>>> I am a little confused by the data.table package.
>>>
>>> library(data.table)
>>>
>>> df <- data.frame(w=rnorm(20, -10, 1), x= rnorm(20, 0, 1), y=rnorm(20, 10, 1),
>>> z=rnorm(20, 20, 1))
>>>
>>> df <- data.table(df)
>>
>> df <- setDT(df) is preferred.
>
> Don't you mean just
>
> setDT(df)
>
> ?
>
> setDT() modifies by reference.
Thanks for the correction.
>
>>>
>>> df_3 <- df[, a := x-y] # created new column a using x minus y, why are we
>>> using colon equals?
>>
>> You need to do more study of the extensive documentation. The behavior of the ":=" function is discussed in detail there.
>
> You can get to that documentation with ?":="
That's a good place to start reading, but I was thinking of data.table::datatable-faq, data.table::datatable-intro which are on the Vignettes page from: help(pac=data.table).
>
> Hadley
>
> --
> http://hadley.nz
David Winsemius
Alameda, CA, USA