Comments (3)
Yeah, it seems the warning only triggers for the "passing function by string name" case.
This doesn't warn - but I'm unsure if this use of count is deprecated also?
aggregate_function = pl.element().count()
Would the non-null len()
need to be used instead?
aggregate_function = pl.element().drop_nulls().len()
from polars.
Before we rename pl.count
to pl.len
: pl.count()
means the length of df, including the null value. But pl.count("a")
equals to pl.col("a").count()
, this doesn't include null value. This is sort of odd, so we rename the no-argument pl.count
to pl.len
.
If I remember correctly, aggregate_function='count'
count the null value even when it is not deprecated(Because it actually uses pl.count()
instead of pl.element().count()
). You can manually use aggregate_function = pl.element().count()
to achieve the behavior you expected. Of course, you could propose that aggregate_function=count
shouldn't be deprecated and it's behave should be fixed as the same as pl.element().count()
.
from polars.
Yes, I propose this indeed, even if the workaround pl.element().count()
works perfectly fine. I've seen #13673, but IMO the deprecation is not justified in this case. I've never come across a use case for including the nulls in a count in the context of a pivot, so if anything, the pl.element().count()
behaviour should have priority over what len
does.
If there is no support for un-deprecating count
and implementing it as pl.element().count()
, then I think the deprecation message should at least be changed so that it suggests using pl.element().count()
if one is looking for a way to exclude the nulls.
from polars.
Related Issues (20)
- Copy logic-plan from one LazyFrame to another LazyFrame? HOT 1
- Support converting DataFrames with matching Array types to multidimensional NumPy array
- ColumnNotFoundError appears in lazy mode only in version 0.20.28 HOT 9
- Multiple combination of expressions with Lazyframe raises PanicException
- `cluster_with_optimizer` PanicException during `scan_csv` call
- Opening large CSV files on some Macs is extremely slow. HOT 3
- Use more appropriate error variants in various places across the API
- Change `DataFrame.write_parquet(write_statistics)` to a more granular type
- LazyFrame.schema fails with "Option::unwrap()` on a `None` value" HOT 6
- Schema of `LazyFrame.with_context` does not match result of collect HOT 2
- Following a selector with .exclude() is not considered a selector HOT 3
- predicate pushdown with `pl.Expr.cut`
- `.list.to_struct()` has non-deterministic behavior HOT 5
- Add `Expr.list.map_elements(func)` to perform a custom function on every element in a list HOT 2
- pl.from_pandas(..., nan_to_null=True) does not convert NaN to Null HOT 3
- Example of `.over()` 900x slower than group_by.agg.join (and over 50x slower than pandas) HOT 3
- Non-deterministic failure when materializing LazyFrame
- LazyFrame - Unnested columns are missing in Lazy Frame HOT 1
- Add section about using `pipe` to the user guide HOT 1
- Regression: `list.sum()` inside WhenThen now returns a list
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from polars.