需要TRUE/FALSE值的地方不可以用缺少值

R语言 时间序列分析 中 平稳性分析时出现如下情况:

adfTest(x,lags=1,type = c("c"))
#第一次adfTest 时 正常输出结果
#从第二次开始 就报错  不知什么原因,希望高手帮忙解答解答   谢谢。

adfTest(x,lags=2,type = c("c"));
#     Error in if (PVAL == min(tablep)) { : 
#  需要TRUE/FALSE值的地方不可以用缺少值

#下面这些 都报同样的错。
adfTest(x,lags=3,type = c("c"));
adfTest(x,lags=1,type = c("nc"));
adfTest(x,lags=2,type = c("nc"));
adfTest(x,lags=3,type = c("nc"));
adfTest(x,lags=1,type = c("ct"));
adfTest(x,lags=2,type = c("ct"));
adfTest(x,lags=3,type = c("ct"));

该回答引用NewBing

这个错误信息是因为在adfTest函数中,type参数的值应该是一个字符向量,而不是一个缺失值。你可以尝试将type参数的值改为 "c" 或 "ct" 或 "ctt"。这些字符向量分别代表不同的ADF检验类型。例如,"c"代表常数项,"ct"代表常数项和趋势项,"ctt"代表常数项、趋势项和季节性项。(1)


如果你想了解更多关于ADF检验的内容,可以参考这篇文章:时间序列与R语言应用(part2)--ADF单位根检验。(1)(2)


源: 与必应的对话, 2023/4/20