Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Fix Python generating Terrible, Horrible, No Good, Very Bad IR (#5107)
* Fixes #5100 Fix Python generating Terrible, Horrible, No Good, Very Bad IR This PR changes the Python select and key_by operators to generate the IR we'd expect them to be generating (e.g. `ht.select('x')` emits a `SelectFields` instead of a `MakeStruct`). In the process, I found and fixed a bug in group expressions for `GroupedMatrixTable`. This is tested for both tables and matrix tables in the new tests in `test_table` and `test_matrix_table`. Some timings: >>> mt = hl.read_matrix_table('/Users/tpoterba/data/profile.mt') >>> %timeit mt.select_entries('GT')._force_count_rows() master: 1.64 s ± 106 ms per loop PR: 967 ms ± 61.1 ms per loop * Fix groupby * address comments * Fix * add unfilter to fix pca * address check_annotate_exprs issue
- Loading branch information
Showing
10 changed files
with
423 additions
and
362 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.