Вычислить стандартное отклонение для каждой строки и группы по определенной переменной c - PullRequest
0 голосов
/ 02 марта 2020

Я свободно sh пользователь python, моя задача - вычислить стандартное отклонение для столбца Остаток . чтобы сделать это:

  1. Мне нужно вычислить среднее значение остатка в каждой группе
  2. Мне нужен размер идентификатора для каждой группы

Мне довелось выполните некоторые вычисления, и это мой код:

import pandas as pd 
import statsmodels.api as sm
import statsmodels.formula.api as sm
from statistics import stdev
import statistics
from math import * 

#Enumerate the data 1,2,3.. for each variable 
A['Rec'] = A.groupby(['code ']).cumcount().add(1)

## Defining companies by their IDs
A['ID']=A.groupby('code ').ngroup().add(1)

### FINDING RESIDUALS 
results = sm.ols(formula='Y ~ X', data=A).fit()
Y_pred = results.predict(A[["X"]])
Y_pred
A['residual'] = A["Y"].values-Y_pred

###SIZE 
A['size']=A.groupby(['ID']).size()



###SD of residuals
for i in A['ID']:
    A['Std'] = sqrt((A['residual']-A['MEAN'])**2)/(A['size']-1)))

Это мой фрейм данных введите описание изображения здесь

группы теперь относятся к идентификатору (1,2, 3,4,5); в каждой группе есть ряды. В каждой строке и по группам я хотел бы иметь SD остатка столбца.

1 Ответ

0 голосов
/ 02 марта 2020

Я прошу прощения, потому что у меня недостаточно очков, чтобы просто оставить комментарий, должен быть ответ. В любом случае, не могли бы вы попробовать что-то вроде этого:

new_df = df.loc[:, 'residual'].groupby(df['ID']).std()

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