Как я могу рассчитать z-счет для каждой группы в Python? - PullRequest
0 голосов
/ 21 ноября 2018

Я рассчитываю вычислить z-показатель независимой переменной "цена" на основе каждой группы proiperty, используя python.

Другими словами, мне нужно вызвать z-преобразование группы «квартиры» в «Типе», z-значение группы «домов» в «Типе» и z-значение для «NoInfo»."group in" Введите с изменением цены в независимой переменной "price" всех групп свойств со значениями z-показателя всех групп. Примечание. Я не собираюсь помещать значения z-показателя всех групп в отдельные столбцы. IЯ собираюсь поместить все значения z-показателя всех групп в один столбец «цена».

Например, если у меня есть кадр данных, как показано ниже, как я могу рассчитать z-преобразование для каждой группы свойств:квартира, NoInfo и NoInfo?

df =

     Name         Type               price 

0    gg         apartment            8 

1    hh         apartment            4

2    tty        apartment            0

3    ttyt       NoInfo               6

4    re         house                6 

5    ew         house                2

6    rr         house                0

7    tr         NoInfo               5

8    mm         NoInfo               0

Я пишу код ниже, но я получил ошибку "Несоответствие длины: ожидаемая ось имеет 4906 элементов, новые значения имеют 4910 элементов"Есть ли у вас какие-либо идеи, как я могу исправить эту ошибку:

name = ['price']

price_zscore = lambda x: (x - x.mean()) / x.std()

df[name] = df.groupby([df.Type])[name].transform(price_zscore)

Большое спасибо

...