KPSS: The timeseries fails to reject the null hypothesis of stationarity (wtf? how can this timeseries be stationary if it clearly has a tendency upwards?) ADF: Can't reject tau (at 1%) and therefore there is a unit root, reject phi2 and therefore there must be drift, trend or both. There are two tests that we can use to see if a time series is stationary or non-stationary. The first test is called the ADF test, which stands for Augmented Dickey-Fuller test. The second test is called the Phillips-Perron test. The ADF test looks at the data points and checks to see if the average value of the data points is the same over ADF and KPSS test both rejected. When testing the stationarity of residuals after OLS estimation, the ADF and KPSS test have opposing conclusions when it comes to rejecting the null: KPSS: Rejection of null concludes evidence of non-stationarity. In addition, the sample size is fairly low (approx 40 observations). The selection of the number of lags in ADF can be done a variety of ways. A common way is to start with a large number of lags selected a priori and reduce the number of lags sequentially until the longest lag is statistically significant. You could test for serial correlation in the residuals after applying the lags in ADF. kpss.test is the one you are looking for, considering you only look for stationary series, if you use adf.test or pp.test you must know that this functions test is for "trend-Stationary", so its is not what you are looking for. i only use Box.test for residuals auto correlation test for Arima models for example. As far i know this test only take care of mean, not variance or covariance. #datascience #timeseries #timeseriesdataset used - can check my ent .

kpss test vs adf test