If loop with character and two conditions

3 visualizaciones (últimos 30 días)
Andreas Bull
Andreas Bull el 13 de Abr. de 2021
Comentada: J Chen el 13 de Abr. de 2021
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

Respuestas (1)

J Chen
J Chen el 13 de Abr. de 2021
Editada: J Chen el 13 de Abr. de 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 comentarios
Andreas Bull
Andreas Bull el 13 de Abr. de 2021
Isn´t for example the first example...
if isequal(t_adf.reject, 'reject H0') &&...
isequal(t_kpss_level.reject, 'do not reject H0')
The same as saying: "if t_adf = reject and t_kpss = do not reject"
In that case this statement can be true.
J Chen
J Chen el 13 de Abr. de 2021
The strcmp(t_adf.reject,t_kpss_level.reject) will not be true in the first place in this case.

Iniciar sesión para comentar.

Categorías

Más información sobre Assessments, Criteria, and Verification en Help Center y File Exchange.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by