matlab中元胞數組(cell)轉換為矩陣、
cell轉換為矩陣函數為:cell2mat(c),其中c為待轉換的元胞數組;
轉化之后的矩陣可能不滿足我們對矩陣維數的要求,那么也許還需要下面兩個函數:
——reshape(A,m,n,p,...),將矩陣A變換為m*n*p*...的矩陣;
——permute(A,[1,3,2]),將矩陣A的第3維和第2維交換,從而滿足順序要求;
下面舉一個我自己用過的例子:
H——<K*1>cell,其中每個元素為U*S*N*T的四維矩陣(H為WINNERII的信道矩陣)
U:接收天線數目 S:發送天線數目 N:多徑數目 T:每條鏈路采樣點數 K:鏈路數
為了將H變換為U*S*N*T*K的五維矩陣,進行下述變換:
(1)H1=cell2mat(H);%轉換為矩陣,如下圖所示,則H1為(U*K)*S*N*T的四維矩陣
(2)H2=reshape(H2,U,K,S,N,T);%改變矩陣H1的形狀
(3)H3=permute*(H2,[1,3,4,5,2];%將矩陣變化為U*S*N*T*K的矩陣

