2014-11-27 12 views
9

Quando si importa la funzione check_array dal modulo sklearn.utils.validation, è stato rilevato un errore di importazione (ImportError: cannot import name check_array). Il completamento della scheda ottenuto check_arrays, ma mi chiedo esiste solo una funzione denominata check_array in validation.py (source code on Github). Inoltre, l'algoritmo di clustering spettrale implementato in scikit-learn/sklearn/cluster/spectral.py utilizzava anche from ..utils.validation import check_array, non check_arrays. Sono abbastanza confuso su questo, e la mia versione di impara scikit è '0.15.0b1'. Spero che qualcuno mi dia un indizio.ImportError: impossibile importare il nome check_array da sklearn.utils.validation

codice di esempio
import numpy as np 
from sklearn.utils.validation import check_array 
def my_fit_affinity(X, affinity_type, n_neighbors, **kernel_params): 
    """ Create an affinity matrix for X using the selected affinity type 
    """  
    X = check_array(X, accept_sparse = ['csr', 'csc', 'coo']) 
    .... 
    return affinity_matrix_ 
+1

Esempio di codice più breve per riprodurre il tuo errore, per favore. –

+0

@ AndréLaszlo Ho aggiunto il codice di esempio – AnnabellChan

+3

Questo è cambiato di recente. Quindi è probabilmente un problema di versione. Assicurati di essere l'ultimo e che non ci siano file residui dei precedenti ovunque. – eickenberg

risposta

1

Per coloro che cercano, come @eickenberg menzionato nei commenti, questo era qualcosa che è stato modificato tra le versioni. L'utilizzo dell'ultima versione di scikit-learn ha risolto il problema.

Problemi correlati