我有一个股票的df 25年,我试图只保留I(1)。
我想将新值存储在dfi中 阈值= 5%
import statsmodels.tsa.stattools as stm
首先,我创建一个包含我的列名称的列表:
dflist = list(dftest.columns.values)
然后我这样做:
for dfi in dftest:
if stm.adfuller(df.loc[:,dflist][1] < threspvalue or stm.adfuller(df.loc[:,dflist].diff(1).dropna())[1] > threspvalue:
dflist.remove(dfi)
关于如何正确地做到这一点的任何想法?
编辑:我有错误代码“SyntaxError:invalid syntax”,其中第2行是箭头。
编辑2:我这样做并设法有了一些东西
stockremoved = []
threspvalue = 0.05
for dfi in dflist:
if stm.adfuller(df.loc[:,dfi])[1] < threspvalue or stm.adfuller(df.loc[:,dfi].diff(1).dropna())[1] > threspvalue:
dflist.remove(dfi)
stockremoved.append(dfi)