我有一个包含 700 多只股票的 list :
excesslist.nlargest(5)
OLED 4.551521
NBIX 4.538618
ALNY 4.526540
AMD 4.502308
IONS 4.484968
...
我想为每只股票赋予一个值(1/100%)。例如,前 1% 的得分为 .99,前 2% 的得分为 .98……后 1% 的得分为 .01。
无法使用 np.percentile 来增加 ea 值,只能坚持手动执行,并且不确定如何分配值:
In: np.percentile(excesslist,[0,1,2,3])
Out: array([ 0.72803527, 0.78873332, 0.83364907, 0.85492285])
预期输出是要为列表的 ea 1/100% 分配一个公共(public)值
最佳答案
初始化一个dataframe,然后使用df.qcut
:
df = pd.DataFrame({'Stocks' : excesslist})
df['Percentile'] = pd.qcut(df.Stocks, 100, labels=False) / 100
关于python - 将百分位值分配给python中的一长串股票,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45559088/