Eventual-Inc / Daft

Distributed DataFrame for Python designed for the cloud, powered by Rust
https://getdaft.io
Apache License 2.0
1.76k stars 105 forks source link

[FEAT] pivot #2183

Closed colin-ho closed 2 weeks ago

colin-ho commented 3 weeks ago

Pivot with single groupby (aka index column), pivot column, and values column.

Todo:

codecov[bot] commented 2 weeks ago

Codecov Report

Attention: Patch coverage is 97.14286% with 1 lines in your changes are missing coverage. Please review.

Project coverage is 85.56%. Comparing base (a0fd6ec) to head (0f9ae96). Report is 11 commits behind head on main.

Additional details and impacted files [![Impacted file tree graph](https://app.codecov.io/gh/Eventual-Inc/Daft/pull/2183/graphs/tree.svg?width=650&height=150&src=pr&token=J430QVFE89&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=Eventual-Inc)](https://app.codecov.io/gh/Eventual-Inc/Daft/pull/2183?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=Eventual-Inc) ```diff @@ Coverage Diff @@ ## main #2183 +/- ## ========================================== + Coverage 85.10% 85.56% +0.45% ========================================== Files 68 71 +3 Lines 7391 7549 +158 ========================================== + Hits 6290 6459 +169 + Misses 1101 1090 -11 ``` | [Files](https://app.codecov.io/gh/Eventual-Inc/Daft/pull/2183?dropdown=coverage&src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=Eventual-Inc) | Coverage Δ | | |---|---|---| | [daft/dataframe/dataframe.py](https://app.codecov.io/gh/Eventual-Inc/Daft/pull/2183?src=pr&el=tree&filepath=daft%2Fdataframe%2Fdataframe.py&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=Eventual-Inc#diff-ZGFmdC9kYXRhZnJhbWUvZGF0YWZyYW1lLnB5) | `90.16% <100.00%> (+1.07%)` | :arrow_up: | | [daft/execution/execution\_step.py](https://app.codecov.io/gh/Eventual-Inc/Daft/pull/2183?src=pr&el=tree&filepath=daft%2Fexecution%2Fexecution_step.py&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=Eventual-Inc#diff-ZGFmdC9leGVjdXRpb24vZXhlY3V0aW9uX3N0ZXAucHk=) | `93.58% <100.00%> (+0.41%)` | :arrow_up: | | [daft/execution/rust\_physical\_plan\_shim.py](https://app.codecov.io/gh/Eventual-Inc/Daft/pull/2183?src=pr&el=tree&filepath=daft%2Fexecution%2Frust_physical_plan_shim.py&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=Eventual-Inc#diff-ZGFmdC9leGVjdXRpb24vcnVzdF9waHlzaWNhbF9wbGFuX3NoaW0ucHk=) | `96.00% <100.00%> (+0.16%)` | :arrow_up: | | [daft/logical/builder.py](https://app.codecov.io/gh/Eventual-Inc/Daft/pull/2183?src=pr&el=tree&filepath=daft%2Flogical%2Fbuilder.py&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=Eventual-Inc#diff-ZGFmdC9sb2dpY2FsL2J1aWxkZXIucHk=) | `90.62% <100.00%> (+0.22%)` | :arrow_up: | | [daft/table/micropartition.py](https://app.codecov.io/gh/Eventual-Inc/Daft/pull/2183?src=pr&el=tree&filepath=daft%2Ftable%2Fmicropartition.py&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=Eventual-Inc#diff-ZGFmdC90YWJsZS9taWNyb3BhcnRpdGlvbi5weQ==) | `90.54% <100.00%> (+0.21%)` | :arrow_up: | | [daft/table/table.py](https://app.codecov.io/gh/Eventual-Inc/Daft/pull/2183?src=pr&el=tree&filepath=daft%2Ftable%2Ftable.py&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=Eventual-Inc#diff-ZGFmdC90YWJsZS90YWJsZS5weQ==) | `57.05% <50.00%> (+0.92%)` | :arrow_up: | ... and [12 files with indirect coverage changes](https://app.codecov.io/gh/Eventual-Inc/Daft/pull/2183/indirect-changes?src=pr&el=tree-more&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=Eventual-Inc)