同じ型のcell配列​2つを1つのcell​配列にまとめることは​できますか?

14 views (last 30 days)
Gamma1990
Gamma1990 on 6 Jul 2021
Commented: Atsushi Ueno on 7 Jul 2021
・実現したいこと
したいことは,同じ型のcell配列2つを1つのcell配列にまとめることです.
例えば,1番目の画像(変数:data1)の1行目と,2番目の画像(変数:data2)の1行目を組み合わせて3番目の画像(変数:data)のようなcell配列を作れないでしょうか?
・試したこと
data={data1;data2}
上のように式を組んだら,上の画像のようになってしまいました.
初歩的な質問で恐縮ですが,よろしくお願いします.

Accepted Answer

Atsushi Ueno
Atsushi Ueno on 6 Jul 2021
>1番目の画像(変数:data1)の1行目と,2番目の画像(変数:data2)の1行目を組み合わせて3番目の画像(変数:data)のようなcell配列を作れないでしょうか?
data1 = {1,2,9,5,8,10,8,7,7,5,4,1,9}
data1 = 1×13 cell array
{[1]} {[2]} {[9]} {[5]} {[8]} {[10]} {[8]} {[7]} {[7]} {[5]} {[4]} {[1]} {[9]}
data2 = {[0;0;0;1;0;0],[1;0;0;1;0;1],[0;0;1;0;1;0],[1;0;0;0;1;1],[0;1;1;0;0;1],[0;1;0;0;1;0],[0;1;1;1;1;1],[1;1;1;0;0;1],[0;1;1;0;0;0],[0;1;1;0;0;1],[0;1;1;0;0;0],[0;1;0;1;0;1],[0;1;0;0;1;0]}
data2 = 1×13 cell array
{6×1 double} {6×1 double} {6×1 double} {6×1 double} {6×1 double} {6×1 double} {6×1 double} {6×1 double} {6×1 double} {6×1 double} {6×1 double} {6×1 double} {6×1 double}
data={data1;data2} % 上のように式を組んだら,上の画像のようになってしまいました.
data = 2×1 cell array
{1×13 cell} {1×13 cell}
data={data1{:};data2{:}} % こうです
data = 2×13 cell array
{[ 1]} {[ 2]} {[ 9]} {[ 5]} {[ 8]} {[ 10]} {[ 8]} {[ 7]} {[ 7]} {[ 5]} {[ 4]} {[ 1]} {[ 9]} {6×1 double} {6×1 double} {6×1 double} {6×1 double} {6×1 double} {6×1 double} {6×1 double} {6×1 double} {6×1 double} {6×1 double} {6×1 double} {6×1 double} {6×1 double}
  4 Comments
Gamma1990
Gamma1990 on 7 Jul 2021
色々な連結方法があるとは驚きです.
大変参考になります.
ありがとうございました.
Atsushi Ueno
Atsushi Ueno on 7 Jul 2021
@Hernia Babyさん参考になります。大括弧で連結も併記しようとしましたが「data=[data1(:);data2(:)]かな?あれなんか変だな?」とか混乱していました

Sign in to comment.

More Answers (0)

Categories

Find more on イメージ in Help Center and File Exchange

Products


Release

R2020b

Community Treasure Hunt

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

Start Hunting!