提个问题:
```
#7 获得因子信息
# stocks_list调用g.feasible_stocks factors调用字典g.factors
# 输出所有对应数据和对应排名,DataFrame
def get_factors(stocks_list, context, factors):
# 从可行股票池中生成股票代码列表
df_all_raw = pd.DataFrame(stocks_list)
# 修改index为股票代码
**df_all_raw['code'] = df_all_raw[0]
df_all_raw.index = df_all_raw['code']
# 格式调整,没有一步到位中间有些东西还在摸索,简洁和效率的一个权衡
del df_all_raw[0]
stocks_list300 = list(df_all_raw.index)**
# 每一个指标量都合并到一个dataframe里
for key,value in g.factors.items():
# 构建一个新的字符串,名字叫做 'get_df_'+ 'key'
tmp='get_df' + '_' + key
# 声明字符串是个方程
aa = globals()[tmp](stocks_list, context, value)
# 合并处理
df_all_raw = pd.concat([df_all_raw,aa], axis=1)
# 删除code列
del df_all_raw['code']
# 对于新生成的股票代码取list
stocks_list_more = list(df_all_raw.index)
# 可能在计算过程中并如的股票剔除
for stock in stocks_list_more[:]:
if stock not in stocks_list300:
df_all_raw.drop(stock)
return df_all_raw
```
以上
```
df_all_raw['code'] = df_all_raw[0]
df_all_raw.index = df_all_raw['code']
del df_all_raw[0]
stocks_list300 = list(df_all_raw.index)
```
是否与后面的
```
aa = globals()[tmp](stocks_list, context, value)
```
重复?
因为df_all_raw是根据stock_list生成的,index是stockcode,仅有的一列也是code;而aa是根据stock_list生成的,index是stockcode,列为ALR、ALR_SORTED_RANK,所以两者重复,不需要生成df_all_raw。
不知道对不对,请指教。我是一个初学者,见谅哦。
2016-12-09