Линейный дискриминантный анализ от склеарна - PullRequest
0 голосов
/ 05 октября 2019

У меня проблема с тем, что sklearn.discriminant_analysis не распознает входные данные.

Я уже изменил все свои метки с str на числовые значения.

from sklearn.discriminant_analysis import LinearDiscriminantAnalysis as LDA
print(labels)
print(type(labels))
Fit_Features_2 = LDA(n_components = 1)
Fit_Features_2 = LDA.fit(features_NiFe, labels)

#The type for labels
<class 'pandas.core.frame.DataFrame'>

TypeError:fit () отсутствует 1 обязательный позиционный аргумент: 'y'

1 Ответ

0 голосов
/ 05 октября 2019

Вам необходимо использовать экземпляр LDA.

изменить

Fit_Features_2 = LDA.fit(features_NiFe, labels)

на

Fit_Features_2 .fit(features_NiFe, labels)

Убедитесь, что метки имеют тип массив. Поэтому преобразуйте кадр данных в массив numpy, используя df.to_numpy()

Также проверьте размеры параметров X и y функции соответствия

        X : array-like, shape (n_samples, n_features)
            Training data.
        y : array, shape (n_samples,)
            Target values.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...