Github user VinceShieh commented on a diff in the pull request:
https://github.com/apache/spark/pull/14858#discussion_r76773626
--- Diff:
mllib/src/main/scala/org/apache/spark/ml/feature/QuantileDiscretizer.scala ---
@@ -114,10 +114,10 @@ final class QuantileDiscretizer @Since("1.6.0")
(@Since("1.6.0") override val ui
splits(0) = Double.NegativeInfinity
splits(splits.length - 1) = Double.PositiveInfinity
- val distinctSplits = splits.distinct
+ val distinctSplits = splits.filter(!_.isNaN).distinct
if (splits.length != distinctSplits.length) {
- log.warn(s"Some quantiles were identical. Bucketing to
${distinctSplits.length - 1}" +
- s" buckets as a result.")
+ log.warn(s"Bucketizing to ${distinctSplits.length - 1} buckets if
some quantiles" +
+ s" were identical; or ${distinctSplits.length} buckets if NaN
value existed")
--- End diff --
I think we just put it "the returned number of buckets might differ from
what was requested depending on the data sample values. " , since the result
number could be less than/equal to the requested number when same quantiles
were spotted. And if no same quantiles exists in the splits, but dataset has
NaN value, the actually number of buckets would then be greater than requested.
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]