2014-11-27 16 views
9

Khi tôi nhập hàm check_array từ mô-đun sklearn.utils.validation, nó gặp lỗi nhập (ImportError: cannot import name check_array). Hoàn tab đã check_arrays, nhưng tôi đang tự hỏi chỉ có tồn tại một hàm gọi là check_array trong validation.py (source code on Github). Bên cạnh đó, các thuật toán phân nhóm phổ thực hiện trong scikit-learn/sklearn/cluster/spectral.py cũng sử dụng from ..utils.validation import check_array, không check_arrays. Tôi khá bối rối về điều này, và phiên bản scikit-learning của tôi là '0.15.0b1'. Hy vọng ai đó cho tôi một đầu mối.NhậpError: không thể nhập tên check_array từ sklearn.utils.validation

mẫu mã
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

mẫu mã ngắn nhất để tái tạo lỗi của bạn, xin vui lòng. –

+0

@ AndréLaszlo Tôi đã thêm mã mẫu – AnnabellChan

+3

Điều này gần đây đã thay đổi. Vì vậy, nó có lẽ là một vấn đề phiên bản. Hãy chắc chắn rằng bạn đang ở trên mới nhất và rằng không có tập tin còn lại của những người trước đó bất cứ nơi nào. – eickenberg

Trả lời

1

Đối với những tìm kiếm, như @eickenberg đề cập trong các ý kiến, đây là một cái gì đó đã thay đổi giữa các phiên bản. Sử dụng phiên bản mới nhất của scikit-learn đã giải quyết được sự cố.

Các vấn đề liên quan