1

以下に示すように、サイズが 4x1の行列があります。ここに示すように、行列の要素を含むAベクトルを作成したいので、誰かアドバイスをお願いしますBAB= 145, 144, 192, 145, 197, 307, 143, 198, 309

A=
145
[144;192]
[145;197;307]
[143;198;309]
4

3 に答える 3

3

A行列ではなく、セル配列のように見えます。その場合、次のことができます。

B = [A{:}];

または、あなたの例では個々の要素Aが列ベクトルであるため、

At = cellfun(@transpose, A, 'uniformoutput', false);
B = [At{:}];

あるいは単に

B = vertcat(A{:});

(シンプルなことを思い出させてくれた@horchlerに感謝します...)

于 2013-08-21T14:40:32.657 に答える
1

まず、 A のすべての要素を行に転置する必要があります。

A = cellfun(@transpose, A,'UniformOutput', false)   

[]次に、カンマ区切りのリスト (つまり) を水平方向に連結 (つまり) します{:}

B = [A{:}]
于 2013-08-21T14:42:45.970 に答える
1

Aが次のように定義されていると仮定します。

A={145
[144;192]
[145;197;307]
[143;198;309]}

垂直連結を使用できます。

vertcat(A{:})'

A のベクトルが転置されている場合は、[]またはを使用できます。horzcat

于 2013-08-21T14:47:27.890 に答える