因子表达式的问题


(yangziriver) #1

请教老师,这个表达式有什么问题吗?
roe_ratio=where(shift(fs_roe_ttm,4)<0,where(fs_roe_ttm>=0,1,-1),fs_roe_ttm/shift(fs_roe_ttm,4)-1
是想计算fs_roe_ttm的同比增长率的,当上期值为负,同时当期值为负则取-1,当期值为正或0取1,当上期值为正时按正常的公式计算。将这个因子进行衍生特征提取时,出现错误,
SyntaxError: unexpected EOF while parsing
请问要怎样处理呢?
使用这个表达式是可以的:roe_ratio=where(((shift(fs_roe_ttm,4)<0) & (fs_roe_ttm>0)),1,fs_roe_ttm/shift(fs_roe_ttm,4)-1) 但当上期值和当期值都为负时,增长率计算值不真实


(达达) #2

roe_ratio=where(shift(fs_roe_ttm,4)<0,where(fs_roe_ttm>=0,1,-1),fs_roe_ttm/shift(fs_roe_ttm,4)-1
最后少了一个括回吧?


(yangziriver) #3

多谢老师!是我的粗心。