how to convert cell to mat

I have a cell array of size h=4X1. Inside it has 4 different matrices of size 32X64. How to convert it to matrix. I used htemp=cell2mat(h). Now the size is 128x64. After that i try to separate the real and imaginary parts of htemp using htempreal=zeros(128,64,2). then htempreal(:,:,1)=real(htemp) and htempreal(:,:,2)=imag(htemp). at this point it shows error unable to perform assignment because the size of the left side is 128 by 64 and the size of the right side is 32 by 64.

Risposte (1)

KSSV
KSSV il 28 Mar 2023
REad about real and imag
R = real(htemp);
C = imag(htemp) ;

4 Commenti

No this is not what i want
Check the size of htemp it is 32x64. You cannot store it in LHS of size 128x64. Check you data h, which is a cell. Try:
htemp = cell2mat(reshape(h,2,2)) ;
htempreal=zeros(128,64,2) ;
htempreal(:,:,1)=real(htemp);
htempreal(:,:,2)=imag(htemp);
OR
htemp = cell2mat(h) ;
[m,n] = size(htemp) ;
htempreal = zeros(m,n,2) ;
htempreal(:,:,1)=real(htemp);
htempreal(:,:,2)=imag(htemp);
Upto step htemp=cell2mat(h). the size is 128X64. once i go to next step it changes to 32X64. i dont understand why
KSSV
KSSV il 28 Mar 2023
May be you are overwrititng the variable.......we can only help on looking into your full code.

Accedi per commentare.

Categorie

Tag

Richiesto:

il 28 Mar 2023

Commentato:

il 28 Mar 2023

Community Treasure Hunt

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

Start Hunting!

Translated by