[FEA] Unify distinct_count column/table APIs.
- Dominant language
- C++
- Stars
- 9.8k
- Forks
- 1.1k
- Avg merge
- 3d 6m
- Merged PRs (30d)
- 278
Description
**Is your feature request related to a problem? Please describe.**
While reviewing #10030, I found that the column and table algorithms for `distinct_count` have completely different flags for null and NaN handling. The column API has `null_policy` (include/exclude) and `nan_policy` (NaN is/isn't null), while the table API has `null_equality` (nulls are equal/unequal).
This also applies to `unordered_distinct_count`, introduced in #10030.
**Describe the solution you'd like**
The distinct count APIs for column/table should use the same flags (meaning that all three flags should probably be available to both APIs). This would also allow the column API to be a pass-through implementation of the table API, with a table composed of only that column, rather than having two implementations ([table](https://github.com/rapidsai/cudf/blob/2c6b0dac61a6671642bb5b076e910e20e2bdd1b6/cpp/src/stream_compaction/distinct_count.cu#L38-L62), [column](https://github.com/rapidsai/cudf/blob/2c6b0dac61a6671642bb5b076e910e20e2bdd1b6/cpp/src/stream_compaction/distinct_count.cu#L140-L168)).
Contributor guide
Assessment
This issue has not been assessed yet.