MAINT Use isinstance(x, numbers.Integral) to check for integer dtype#14004
Merged
thomasjpfan merged 3 commits intoscikit-learn:masterfrom Jun 12, 2019
Merged
MAINT Use isinstance(x, numbers.Integral) to check for integer dtype#14004thomasjpfan merged 3 commits intoscikit-learn:masterfrom
thomasjpfan merged 3 commits intoscikit-learn:masterfrom
Conversation
thomasjpfan
reviewed
Jun 3, 2019
Member
thomasjpfan
left a comment
There was a problem hiding this comment.
benchmarks/bench_plot_nmf.py uses from sklearn.decomposition.nmf import INTEGER_TYPES, which should be updated.
Member
Author
|
Good point, thanks -- fixed. |
jeremiedbb
approved these changes
Jun 7, 2019
Member
jeremiedbb
left a comment
There was a problem hiding this comment.
lgtm.
(failing tests are unrelated)
jnothman
approved these changes
Jun 10, 2019
Member
|
Although I do recall vaguely that some numpy int types behaved differently to others... |
Member
Author
Maybe some time ago in numpy? Both on latest numpy and v1.11 (latest supported verson) it works for all numpy int types, >>> import numpy as np
>>> import numbers
>>> isinstance(np.int_(2), numbers.Integral)
True
>>> isinstance(np.intc(2), numbers.Integral)
True
>>> isinstance(np.int64(2), numbers.Integral)
True
>>> isinstance(np.uint8(2), numbers.Integral)
True |
thomasjpfan
approved these changes
Jun 12, 2019
koenvandevelde
pushed a commit
to koenvandevelde/scikit-learn
that referenced
this pull request
Jul 12, 2019
This file contains hidden or 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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #5786
On the discussion whether,
should be used for testing integer dtype (including
np.integer), a better choice is to useisinstance(x, numbers.Integral)as mentionned in #5786 (comment)