我有4865 1
-by- 1
單元格數組,我需要通過cell2mat
將它們轉換爲普通數組。當我運行它,我得到以下錯誤:循環cell2mat將單元格數組轉換爲數組
In an assignment A(I) = B, the number of elements in B and I must be the same.
for i=1:4865,
c(i) = cell2mat(A(i))
end
我有4865 1
-by- 1
單元格數組,我需要通過cell2mat
將它們轉換爲普通數組。當我運行它,我得到以下錯誤:循環cell2mat將單元格數組轉換爲數組
In an assignment A(I) = B, the number of elements in B and I must be the same.
for i=1:4865,
c(i) = cell2mat(A(i))
end
不能在整個矩陣(這是在細胞)分配到一個指數
讓我們下面的例子
>> cell_test ={[1 2 3;4 5 6],[1 2 3; 7 8 9]}
cell_test =
[2x3 double] [2x3 double]
你在做什麼是這個
>> cell_test{1}
ans =
1 2 3
4 5 6
>> b(1) = cell_test{1}
Subscripted assignment dimension mismatch.
其中一個選項是,你通過eval()
爲每一個新的索引創建一個新的變量名稱,如ofcourse有許多其他的選擇
>> i = 1
i =
1
eval(['B_',num2str(i) ,'=cell_test{i}'])
B_1 =
1 2 3
4 5 6
更新:結構方法B(i).data = =cell_test{i}
你有4000個電池陣列或一個單元有4000個元素的數組? 「A」是一個有4865個元素的單元陣列,每個元素由一個'1'-by-'1'單元陣列組成?每個細胞中都有什麼? – Dan
您無法將整個矩陣轉換爲矢量的單個元素 – Umar
您能告訴我們您的初始單元格數組實際包含的是什麼? – Suever