Как заставить SVM хорошо работать с отсутствующими данными в scikit -Learn?

Я использую scikit -Learn для некоторого анализа данных, и в моем наборе данных есть некоторые пропущенные значения (, представленныеNA). Я загружаю данные с помощью genfromtxtс помощью dtype='f8'и приступаю к обучению своего классификатора.

Классификация подходит для объектов RandomForestClassifierи GradientBoostingClassifier, но использование SVCиз sklearn.svmвызывает следующую ошибку:

    probas = classifiers[i].fit(train[traincv], target[traincv]).predict_proba(train[testcv])
  File "C:\Python27\lib\site-packages\sklearn\svm\base.py", line 409, in predict_proba
    X = self._validate_for_predict(X)
  File "C:\Python27\lib\site-packages\sklearn\svm\base.py", line 534, in _validate_for_predict
    X = atleast2d_or_csr(X, dtype=np.float64, order="C")
  File "C:\Python27\lib\site-packages\sklearn\utils\validation.py", line 84, in atleast2d_or_csr
    assert_all_finite(X)
  File "C:\Python27\lib\site-packages\sklearn\utils\validation.py", line 20, in assert_all_finite
    raise ValueError("array contains NaN or infinity")
ValueError: array contains NaN or infinity

Что дает? Как я могу заставить SVM хорошо работать с отсутствующими данными? Имея в виду, что отсутствующие данные отлично работают для случайных лесов и других классификаторов..

22
задан Jim 12 July 2012 в 02:16
поделиться