[R] dplyr and function length()
Jeff Newmiller
jdnewmil at dcn.davis.CA.us
Tue Aug 4 12:20:36 CEST 2015
I can confirm that the drop default is different, but keep in mind that it is only changed for a tbl_df so just convert back to data.frame at the end of your dplr operations to get back to your familiar data.frame behavior.
---------------------------------------------------------------------------
Jeff Newmiller The ..... ..... Go Live...
DCN:<jdnewmil at dcn.davis.ca.us> Basics: ##.#. ##.#. Live Go...
Live: OO#.. Dead: OO#.. Playing
Research Engineer (Solar/Batteries O.O#. #.O#. with
/Software/Embedded Controllers) .OO#. .OO#. rocks...1k
---------------------------------------------------------------------------
Sent from my phone. Please excuse my brevity.
On August 4, 2015 5:06:44 AM EDT, peter dalgaard <pdalgd at gmail.com> wrote:
>
>On 04 Aug 2015, at 10:50 , Karl Schilling <karl.schilling at uni-bonn.de>
>wrote:
>
>> Dear All,
>>
>> I have an observation / question about how the function length()
>works once package dplyr is loaded.
>>
>> Say we have a data.frame df with n rows and m columns. Then a way to
>get the number of rows is to use
>>
>> length(df$m1) (m1 here stand is as the header of the first column)
>>
>> or, alternatively
>>
>> length(df[,1]).
>>
>> Both commands will return n.
>>
>> However, once dplyr is loaded,
>>
>> length(df[,1]) will return a value of 1.
>>
>> length(df$m1) and also length(df[[1]]) will correctly return n.
>>
>> I know that using length() may not be the most elegant or efficient
>way to get the value of n. However, what puzzles (and somewhat
>disturbs) me is that loading of dplyr affects how length() works,
>without there being a warning or masking message upon loading it.
>>
>> Any clarification or comment would be welcome.
>
>Presumably, dplyr changes how [.data.frame works (by altering the
>default for drop=, I expect) so that df[,1] is a data frame with 1
>variable and not a vector. And yes, that _is_ somewhat disturbing.
>
>-pd
>
>>
>> Thank you so much,
>>
>> Karl
>>
>>
>> --
>> Karl Schilling
>>
>> ______________________________________________
>> R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see
>> https://stat.ethz.ch/mailman/listinfo/r-help
>> PLEASE do read the posting guide
>http://www.R-project.org/posting-guide.html
>> and provide commented, minimal, self-contained, reproducible code.
More information about the R-help
mailing list