If loop with character and two conditions
1 visualizzazione (ultimi 30 giorni)
Mostra commenti meno recenti
Hello,
I am trying to create a loop, where I have ran two hypothesis tests, (ADF and KPSS test). And I want matlab to return the concltion in the command window, there is three outcomes, based on the conclution from the test.
This is what I got so far, but the problem is that in the case where the variable is not equal matlab returns: "Arrays have incompatible sizes for this operation."...
% Stationarity conclution loop
if t_adf_fdiff.reject == t_kpss_fdiff.reject
disp('Inconclusive test');
if isequal(t_adf_fdiff.reject, 'reject H0') &&...
isequal(t_kpss_fdiff.reject, 'do not reject H0')
disp(['The time series does not containt a unit root, and are '...
'stationary']);
if isequal(t_adf_fdiff.reject, 'do not reject H0') &&...
isequal(t_kpss_fdiff.reject, 'reject H0')
disp(['The time series containt a unit root, and are not'...
'stationary']);
end
end
end
0 Commenti
Risposte (1)
J Chen
il 13 Apr 2021
Modificato: J Chen
il 13 Apr 2021
Use
strcmp(t_adf_fdiff.reject,t_kpss_fdiff.reject)
insteafd of t_adf_fdiff.reject == t_kpss_fdiff.reject. The two if statements under the top if statement are meaningless since t_adf_fdiff.reject will be always equal to t_kpss_fdiff.reject.
4 Commenti
J Chen
il 13 Apr 2021
The strcmp(t_adf.reject,t_kpss_level.reject) will not be true in the first place in this case.
Vedere anche
Categorie
Scopri di più su Hypothesis Tests in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!