Python - ValueError: («Может сравнивать только идентично помеченные объекты Series», «произошло с индексом Alkaline_Phosphotase») - PullRequest
0 голосов
/ 04 февраля 2019

У меня есть dataFrame с именем data2, который состоит из 583 наблюдений и 11 переменных.в данных имеются выбросы.Я хочу приписать выбросы моих трех переменных, названных a, b и c.Все они типа int64.используя IQR и метод среднего вменения. Я создал две переменные из моих данных2 Q1 и Q3.

Q1 = data2[['a','b','c']].quantile(0.25)
Q3 = data2[['a','b','c']].quantile(0.75)
IQR = Q3 - Q1
print (IQR)

Затем я определил еще две переменные, т.е. lower_limit и upper_limit.

lower_limit = Q1 - 1.5 * IQR
upper_limit = Q3 + 1.5 * IQR

ЗатемЯ нахожу средние значения a, b и c.

mean_value = data2[['a','b','c']].mean()
print(mean_value)

Затем я создал одну функцию.

def imputer(value):
if value < lower_limit or value > upper_limit:
    return mean_value
else:
    return value

Теперь, когда я хочу поместить значения в фрейм данных, используя функцию imputeкоторый я создал ранее.

results = data2[['a','b','c']].apply(imputer) #Error Line

Это показывает мне ошибку, говоря ValueError: «Может сравнивать только идентично помеченные объекты Series.

Любая помощь приветствуется.

1 Ответ

0 голосов
/ 06 февраля 2019

Я попытался сделать это, изменив атрибут axis метода apply, я также проверил метод Series' где , но не помог.После всего этого я пришел к выводу, что не используйте ваш метод импутераможет быть отличным

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...