How to Assign These Values to This Struct?

As an example, I want to dynamically assign four output arguments of ttest function to four field of struct A, but I get the error: “Subscripted assignment dimension mismatch.” What is the solution?
for i = 1:5
[A.B.h(i,1), A.B.p(i,1), A.B.ci(i,1), A.B.stats(i,1)] = ttest(X1, X2);
end;

 Risposta accettata

Try like this:
for i = 1:5
[out1,out2,out3,out4] =ttest(X1, X2);
A.B.h(i,1) = out1 ;
A.B.p(i,1)= out2 ;
A.B.ci(i,1) = out3 ;
A.B.stats(i,1) =out4 ;
end

4 Commenti

Thanks! So I cannot assign values to the fields directly inside the function?
It can be done...but we need to see the function ttest
it is a built-in function of MATLAB. Like here
Then it is better to follow as what I suggested.

Accedi per commentare.

Più risposte (0)

Community Treasure Hunt

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

Start Hunting!

Translated by