apricot icon indicating copy to clipboard operation
apricot copied to clipboard

Nearest neighbors doesn't work

Open devinity1337 opened this issue 4 years ago • 4 comments

from apricot import FacilityLocationSelection
import numpy

X = numpy.random.uniform(0, 1, size=(500, 500))


FacilityLocationSelection(100,n_neighbors=10, verbose=True).fit(X)

n_neighbors parameter gives an error, when I remove it it works fine.

devinity1337 avatar Oct 14 '21 07:10 devinity1337

Can you include the exact error you received? Thanks.

jmschrei avatar Oct 14 '21 16:10 jmschrei

I have a similar error when I import apricot.

Traceback (most recent call last): File "", line 1, in File "/Users/mac/opt/anaconda3/lib/python3.7/site-packages/apricot/init.py", line 4, in from .functions import FeatureBasedSelection File "/Users/mac/opt/anaconda3/lib/python3.7/site-packages/apricot/functions/init.py", line 4, in from .featureBased import FeatureBasedSelection File "/Users/mac/opt/anaconda3/lib/python3.7/site-packages/apricot/functions/featureBased.py", line 7, in from .base import BaseSelection File "/Users/mac/opt/anaconda3/lib/python3.7/site-packages/apricot/functions/base.py", line 12, in from ..optimizers import BaseOptimizer File "/Users/mac/opt/anaconda3/lib/python3.7/site-packages/apricot/optimizers.py", line 11, in from .utils import PriorityQueue File "/Users/mac/opt/anaconda3/lib/python3.7/site-packages/apricot/utils.py", line 20, in from sklearn.neighbors import KNeighborsTransformer ImportError: cannot import name 'KNeighborsTransformer' from 'sklearn.neighbors' (/Users/mac/opt/anaconda3/lib/python3.7/site-packages/sklearn/neighbors/init.py)

athossun avatar Jan 11 '22 08:01 athossun

What version of apricot and sklearn are you using?

jmschrei avatar Jan 11 '22 17:01 jmschrei

I have a similar error when I import apricot.

Traceback (most recent call last): File "", line 1, in File "/Users/mac/opt/anaconda3/lib/python3.7/site-packages/apricot/init.py", line 4, in from .functions import FeatureBasedSelection File "/Users/mac/opt/anaconda3/lib/python3.7/site-packages/apricot/functions/init.py", line 4, in from .featureBased import FeatureBasedSelection File "/Users/mac/opt/anaconda3/lib/python3.7/site-packages/apricot/functions/featureBased.py", line 7, in from .base import BaseSelection File "/Users/mac/opt/anaconda3/lib/python3.7/site-packages/apricot/functions/base.py", line 12, in from ..optimizers import BaseOptimizer File "/Users/mac/opt/anaconda3/lib/python3.7/site-packages/apricot/optimizers.py", line 11, in from .utils import PriorityQueue File "/Users/mac/opt/anaconda3/lib/python3.7/site-packages/apricot/utils.py", line 20, in from sklearn.neighbors import KNeighborsTransformer ImportError: cannot import name 'KNeighborsTransformer' from 'sklearn.neighbors' (/Users/mac/opt/anaconda3/lib/python3.7/site-packages/sklearn/neighbors/init.py)

This error can be fixed by replacing the following line in "utils.py" "# from sklearn.neighbors import KNeighborsTransformer" by "from sklearn.neighbors import KNeighborsClassifier as KNeighborsTransformer"

athossun avatar Jan 12 '22 07:01 athossun