如何將空陣列附加到(非空)元胞陣列?
例如,從
c={[1],[2]}
欲望
c={[1],[2],[]}
連接將洗掉空陣列,無論它是雙精度、字符還是單元格。
uj5u.com熱心網友回復:
除了@Adriaan 的回答,請注意,如果您小心的話,您也可以通過連接來執行此操作。
>> c = {1, 2}
c =
1x2 cell array
{[1]} {[2]}
>> [c, {[]}]
ans =
1x3 cell array
{[1]} {[2]} {0x0 double}
這里的訣竅是與另一個顯式連接cell(您的問題表明您嘗試[c, []]了它確實什么都不做,而在操作之前[c, 1]自動將原始1轉換為{1})。
(此外,雖然在可能的情況下,預分配絕對是首選,但在最近的 MATLAB 版本中,動態增長陣列的懲罰遠沒有以前那么嚴重)。
uj5u.com熱心網友回復:
您可以使用以下方法附加它end 1:
c={[1],[2]}
c =
[1] [2]
c{end 1} = [] % end 1 "appends"
c =
[1] [2] []
MATLAB 注意:追加通常用作在回圈中增加陣列大小的一種方式,在 MATLAB 中不建議這樣做。相反,盡可能使用預分配來最初應用最終大小。
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/456638.html
