Skip to content

Latest commit

 

History

History
229 lines (145 loc) · 8.13 KB

NEWS.md

File metadata and controls

229 lines (145 loc) · 8.13 KB

poorman 0.2.7

Eleventh CRAN release. This release:

  • Adds a new function fill() that mimics tidyr::fill() (#113, @etiennebacher).
  • Includes various performance improvements for grouped operations, pivot_wider() and pivot_longer() (@etiennebacher).
  • Fixes CRAN issues.

poorman 0.2.6

Tenth CRAN release.

This update adds the following features:

  • Initial versions of pivot_longer() and pivot_wider() have been added (#101, @etiennebacher).
  • The .names argument in across() now accepts {.col} and {.fn} to automatically name new columns (#100, @etiennebacher).
  • New function lst() to reproduce the outputs of tibble::lst(). It enables the creation of lists where elements are build sequentially (i.e depend on the previous ones) and are self-named (i.e the expression is used if no name is given) (#108).

The following fixes were also implemented:

  • arrange() now works for descending character vectors (#99, @etiennebacher).
  • arrange() now resets row names when they are numeric (#102, @etiennebacher).
  • distinct() now resets row names when they are numeric (#106, @etiennebacher).

The CICD pipeline was also fixed such that users can now tests pull requests. The documentation is now built using HTML5.

poorman 0.2.5

Ninth CRAN release.

This update has added the following new features:

  • summarise() can now revise grouping structures with the .groups argument (#57).
  • group_by() can now drop groups formed by factor levels that don't appear in the data with the .drop parameter (#63).
  • New cumulative functions have been added: cumall(), cumany() and cummean() (#64).
  • Additional tools for working with rownames have been added: has_rownames(), remove_rownames(), column_to_rownames(), rowid_to_column() (#66).
  • filter() gains the .preserve parameters (#81).
  • if_any() and if_all() were added (#80).

The following fixes were also implemented:

  • mutate() now successfully evaluates functions defined in the scope of a parent function (#68).
  • select_positions() now works if passed a combination of positive and negative values (#71).
  • transmute() now keeps unnamed columns that it creates (#72).

The following refactorisations took place:

  • When grouping data with group_by(), it will now create an object of class grouped_df and not grouped_data which keeps it consistent with the {dplyr} method name (#70). This should hopefully make transitioning packages from {dplyr} to {poorman} a little easier.

poorman 0.2.4

Eighth CRAN release.

This update has added the following new features:

  • group_by() can now create new columns, grouping by the result (#58).
  • with_groups() (#61).
  • nth() (#62).
  • mutate() can now relocate resulting mutations (#59).
  • mutate() can now keep all, used, unused or none of the resulting mutations (#60).
  • across() can now accept lambda style functions (#52).
  • Columns created by summarise() are now immediately available (#20).
  • cur_column() (#52).

The following fixes were also implemented:

  • across() can now accept function names as characters (#56) - thanks @Eyayaw for pointing this out.
  • An empty summarise() will now correctly return an empty data.frame (#55).

Other general refactorisations and improvements of note:

  • group_by() is now an S3 generic.
  • .default() methods are now .data.frame() methods.
  • get_groups() has been removed in favour of group_vars().
  • set_groups() has been replaced with groups_set() for API consistency.

poorman 0.2.3

Seventh CRAN release.

This update has added the following new features:

  • across() (#37).
  • na_matches and keep parameters have been added to mutate joins.
  • list columns can now be mutated.
  • Added the missing ability to use & in poor-select.

Fixes:

  • Use of variables in relocate().

In addition there have been lots of improvements to documentation and many, many more tests added.

poorman 0.2.2

Sixth CRAN release.

This update has added the following new features:

  • rename_with()
  • group_cols() (#42)
  • cur_data_all()
  • nest_by() (#44)
  • case_when() (#23)
  • bind_cols() (#32)
  • bind_rows() (#33)
  • unite()

Performance upgrades and code improvements:

  • pull() is now much faster thanks to @markfairbanks.
  • %>% now allows you to pipe into a .; my thanks go to @moodymudskipper.

The following bugs have been squashed:

  • Filter joins will no longer reduce to vectors thanks to @msberends.
  • contains() no longer returns lists.
  • relocate() can now use "tidy select" style column selections.

New documentation components have been added:

  • An FAQ vignette has been added (#31).
  • A {pkgdown} website has been added (#30).

poorman 0.2.1

Fifth CRAN release.

The update has added the following new features:

  • distinct() (#17)
  • slice_head(), slice_tail(), slice_min(), slice_max(), slice_sample() (#22)
  • where() (#27)
  • coalesce() (#28)
  • group_split(), group_keys() (#29)
  • na_if() (#34)
  • recode() (#35)
  • near() (#36)
  • replace_na() (#38)
  • group_data(), group_indices(), group_vars(), group_rows(), group_size(), n_groups(), groups() (#39)
  • glimpse() (#40)
  • cur_data(), cur_group(), cur_group_id(), cur_group_rows() (#41)

There have also been a lot of refactoring for the internals of the package, particularly focusing on context awareness which allows for quite a few of these features (#40, #41) and grouped operations should now be more consistent. This update of course comes with a host of bug fixes including the renaming of multiple columns when using {poorman}'s version of {tidyselect}.

poorman 0.2.0

Fourth CRAN release.

This update has added the following new features:

  • if_else() (#11)
  • between() (#12)
  • lead() and lag() (#13)
  • n_distinct() (#16)
  • window rank functions: cume_dist(), dense_rank(), min_rank(), ntile(), percent_rank(), row_number() (#18)

My thanks go to @msberends for their help on these features!

This update also refactors a lot of the code, hence the minor version bump. This includes:

  • More support for "tidyselect" features such as !, :, -, c() and ()
  • Removal of eval(parse(text = ...)
  • Rework of grouped summaries

Finally, 0.2.0 includes many bug fixes:

  • Joins now maintain their original order (#10)
  • group_by() + mutate() now preserve row order (#14)
  • Quote names are allowed in pull() (#15)

poorman 0.1.11

Third CRAN release.

This update adds the functions count(), tally(), add_count() and add_tally(). In order to achieve these, the functions n() and desc() have also been added. In addition, group_by() can now add additional groups to an already grouped data.frame.

poorman 0.1.10

Second CRAN release.

This update adds selection helper functions. See ?select_helpers for more information.

The following bugs have been fixed:

  • mutate() column creations are immediately available, e.g. mtcars %>% mutate(mpg2 = mpg * 2, mpg4 = mpg2 * 2) will create columns named mpg2 and mpg4
  • group_by() groups now persist in selections, e.g. mtcars %>% group_by(am) %>% select(mpg) will return am and mpg columns
  • slice() now duplicates rows, e.g. mtcars %>% slice(2, 2, 2) will return row 2 three times
  • summarize() is now exported

poorman 0.1.9

First CRAN release

poorman 0.1.8

This update adds relocate() and consolidates the selection method for select(), rename() and relocate() using select_positions().

poorman 0.1.7

This update adds semi_join() and anti_join().

poorman 0.1.6

This update adds inner_join(), left_join(), right_join() and full_join().

poorman 0.1.5

This update adds a full set of tests for the functions available in v0.1.5.

poorman 0.1.4

This update adds a copy of the pipe (%>%).

poorman 0.1.3

This update adds summarise().

poorman 0.1.2

This update adds rename().

poorman 0.1.1

This update includes group_by() and ungroup() operations.

poorman 0.1.0

This initial version includes the select(), pull(), arrange(), filter(), slice(), mutate() and transmute() functions. See the blog post for more details.