Improvements
- new
location()andchanges()functions which provide more information
about how data frames are stored in memory so that you can see what
gets copied. - renamed
explain_tbl()toexplain()(#182). tally()gainssortargument to sort output so highest counts
come first (#173).ungroup.grouped_df(),tbl_df(),as.data.frame.tbl_df()now only
make shallow copies of their inputs (#191).- The
benchmark-baseballvignette now contains fairer (including grouping
times) comparisons withdata.table. (#222)
Bug fixes
filter()(#221) andsummarise()(#194) correctly propagate attributes.summarise()throws an error when asked to summarise an unknown variable
instead of crashing (#208).group_by()handles factors with missing values (#183).filter()handles scalar results (#217) and better handles scoping, e.g.
filter(., variable)wherevariableis defined in the function that calls
filter. It also handlesTandFas aliases toTRUEandFALSE
if there are noTorFvariables in the data or in the scope.select.grouped_dffails when the grouping variables are not included
in the selected variables (#170)all.equal.data.frame()handles a corner case where the data frame has
NULLnames (#217)mutate()gives informative error message on unsupported types (#179)- dplyr source package no longer includes pandas benchmark, reducing
download size from 2.8 MB to 0.5 MB.