需求:将csv文件中的值为-8888的因子值替换为当日全市场因子的中值
原始数据:
解析:
实现:
import pandas as pd
def filter2median(invalid_number):
with open(r'C:\Users\Administrator\Documents\WeChat Files\xzr8510776\FileStorage\File\2019-04\test.csv',
encoding="UTF-8") as f:
df = pd.read_csv(f)
feature_list = df.columns.tolist()[2:]
median = df.groupby(df['Date']).median()
# for index in df.index:
# date = df.loc[index, 'Date']
# for feature in feature_list:
# if df.loc[index, feature] == invalid_number:
# df.loc[index, feature] = media.loc[date][feature]
for feature in feature_list:
df.loc[df[feature] == invalid_number, feature] = median.loc[
df.loc[df[feature] =&