Skip to content

v0.4.0rc1

Compare
Choose a tag to compare
@machow machow released this 13 Oct 22:47
· 57 commits to main since this release

This PR mainly implements the functions tbl(), across(), pivot_longer(), pivot_wider(). It ensures verbs work with grouped data. As part of implementing across(), it refactored tidyselection and SQL support.

What's Changed

  • feat(tbl): add tbl() function for pandas and sqla (#446)
  • feat pivot_longer() and pivot_wider() (#440)
  • feat across() by (#452)
  • feat: count() and add_count() support the name argument. (#452)
  • feat: a new symbolic "formula" object, Fx, now exposed as a top level import. This is used to represent operations in across() and the pivot functions. (#452)
  • feat: implement grouped distinct for both pandas and sql. (#452)
  • feat(tidyselect)!: a lambda can no longer be used to create a tidyselection specifier. Instead we match dplyr's behavior (#452):
    • old: lambda _: _.startswith("abc") was equivalent to _.startswith("abc")
    • Now, when select() is given a callable function, it passes each column of data to it, and expects back a boolean.
    • new: select(cars, lambda ser: ser.dtype == "int")
  • feat: forcats functions: fct_inseq(), fct_infreq() (#435)
  • feat: show_query simplify option uses "*" when possible (#344)
  • feat(siu): new pipe() and call() functions (#413)
    • pipe() allows you to manually create a pipe
    • call() call you to represent a call to an external function (e.g. call(pd.to_datetime, _.some_col))
  • feat: Add new datasets (#434)
  • feat(sql): add LazyTbl.last_select to simplify queries (#449)

.

  • fix(pandas)!: gather default selection is all columns (#451)
  • fix!: if_else and case_when now return Series (#432)
  • fix(sql)!: calling arrange() twice now resets the order_by variables set by the first call (matching dbplyr behavior) (#452).
  • fix: add_count() now correctly handles named arguments, is tested for most cases count() is tested on (#452).
  • fix: support negative index, multislice in tidyselect (#430)
  • fix(pandas): ensure verbs accept DataFrameGroupBy (#445)
  • fix(experimental): fix tab completions (#444)

.

  • tests: speed snowflake tests by removing reflection (#428)
  • tests(sql): update failing test, due to duckdb change (#441)

.

  • docs: using an OR condition in filter (#427)
  • docs: complete docstrings for all verbs (#439)
  • chore: Fix typos by @kianmeng in #433

New Contributors

Full Changelog: v0.3.0...v0.4.0rc1