数据集:
| 股票报价机|隔夜回程| overnight_return |
| --|--| ------------ |
| CLXT| 0.019556| 0.019556 |
| CLXT| 0.039778| 0.039778 |
| ETNB| -0.006186 | -0.006186 |
| ETNB| 0.024590| 0.024590 |
我在检验一个关于隔夜回报率的假设。我想对每个Date
的ticker
列中的所有唯一值应用排名,然后对排名进行z评分。我想用十分位数来排列它们。
获取一个日期的z分数的代码:
import scipy.stats as stats
stats.zscore(equity_daily[equity_daily.Date == "2017-07-20"].overnight_return.rank().dropna().values)
字符串
为了根据当天所有股票的排名来获得每天的z分数,我得到了透视表,然后创建了一个包含z分数的新表:
equity_daily.pivot(columns = "ticker", values = "overnight_return", index = "Date")
型
但发生了以下错误:
ValueError:索引包含重复条目,无法整形
预期结果:
| 股票报价机|隔夜回程|十分位秩| Decile_rank |
| --|--|--| ------------ |
| CLXT| 0.019556| 0| 0 |
| CLXT| 0.039778|二个| 2 |
| ETNB| -0.006186 |九| 9 |
| ETNB| 0.024590|八| 8 |
2条答案
按热度按时间qmelpv7a1#
没有更多的数据样本,很难测试自己,但是...
尝试使用
pivot_table()
而不是pivot()
。pivot
不进行聚合2wnc66cl2#
字符串