def do_adfuller(path, srv, p_values):
filename = os.path.join(path, srv["filename"])
df = load_timeseries(filename, srv)
columns = []
for c in df.columns:
if (not df[c].isnull().all()) and df[c].var() != 0:
columns.append(c)
df = df[columns]
if len(columns) == 0: return []
for i, col in enumerate(df.columns):
serie = df[col].dropna()
if is_monotonic(serie):
serie = serie.diff()[1:]
for reg in p_values:
v = adfuller(serie, regression=reg)[1]
if math.isnan(v): # uncertain
p_values[reg].append(-0.1)
else:
p_values[reg].append(v)
return p_values
评论列表
文章目录