问答交流

一个还差临门一脚的技术问题求助

由pp_mm_fox创建,最终由small_q 被浏览 25 用户

原始数据是A~I 列的df_startwith_6(见图一),现在要 求 滚动5天,stock>index的天数的和,


用以下代码计算:diff_count = df_startwith_6.groupby('instrument').apply(lambda x: (x['stocks'] > x['index']).rolling(window=5).sum())

打印结果(图二): {w:100}{w:100}{w:100}

检查689009.SHA,跟期望的结果(见图一右下角红色部分)验证相同。

但是,想将结果赋值给df_startwith_6['diff_count']时:

df_startwith_6['diff_count'] = df_startwith_6.groupby('instrument').apply(lambda x: (x['stocks'] > x['index']).rolling(window=5).sum()).reset_index(drop=True),生成的结果就是图一是右下的紫色部分,结果显然跟期望的不一样,想请教一下大佬怎么来射这临门一脚?

还望不吝赐教,谢谢!

文档

ERROR: moduleinvoker: module name: hfbacktest, module version: v1, trackeback: RuntimeError: zipline
评论
  • 因为执行操作后会生成multi-index使用reset_index(level=0, drop=True)即可,问题close