Относительные квинтили - PullRequest
0 голосов
/ 26 июня 2018

My df:

      Date       AAPL      NFLX       INTC    AAPL_Ret   NFLX_Ret   INTC_Ret
0 2008-01-31  27.834286  3.764286  25.350000       
1 2008-02-29  27.847143  3.724286  24.670000   -0.07     0.25       -0.05     
2 2008-03-31  25.721428  3.515714  22.670000    0.15     0.10       0.06  
3 2008-04-30  25.377142  3.554286  22.879999    etc
4 2008-05-31  24.464285  3.328571  22.260000

Я хочу рассчитать квинтили для доходности акций, проходящей через rows в моем df.Я подумал, что, возможно, я смогу использовать pd.qcut с чем-то вроде axis=1 в формуле, но метод не принимает такой аргумент.Есть идеи?

Спасибо за помощь!

Ответы [ 2 ]

0 голосов
/ 26 июня 2018

Хммм хорошо.

Итак, вы хотите это:

def QuantScore(x,p,d):
    if x <= d[p][0.25]:
        return 4
    elif x <= d[p][0.50]:
        return 3
    elif x <= d[p][0.75]: 
        return 2
    else:
        return 1

df['AAPL_quartile'] = df['AAPL'].apply(QuantScore, args=('AAPL',quintiles ,))
0 голосов
/ 26 июня 2018

Вы можете использовать метод ".quantile":

quintiles = df[['AAPL','NFLX','INTC']].quantile(q=[0.2,0.4,0.6,0.8])
quintiles = quintiles.to_dict()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...