[BUG] fix np.ndarray
incompatibility in BaseDetector.fit_transform
#8329
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.
Reference Issues/PRs
Fixes #8325
What does this implement/fix? Explain your changes.
Fixes SubLOF detector crash when using numpy arrays as input. The detector was trying to access .index attribute on numpy arrays which don't have this attribute.
Changes:
Added conditional check for .index attribute in base detection class and SubLOF detector
Created pandas RangeIndex fallback for numpy arrays
Fixed test import path and added numpy array test case
Does your contribution introduce a new dependency? If yes, which one?
No.
What should a reviewer concentrate their feedback on?
Numpy array handling logic correctness
Backward compatibility with pandas DataFrames/Series
Test coverage for both input types
Any other comments?
Maintains 100% backward compatibility. Before fix: model.fit_transform(np_array) crashed with AttributeError. After fix: works seamlessly.
PR checklist
For all contributions
[Y]The PR title starts with either [ENH], [MNT], [DOC], or [BUG]