Splitting n by 1 matrix
現在この質問をフォロー中です
- フォローしているコンテンツ フィードに更新が表示されます。
- コミュニケーション基本設定に応じて電子メールを受け取ることができます。
エラーが発生しました
ページに変更が加えられたため、アクションを完了できません。ページを再度読み込み、更新された状態を確認してください。
古いコメントを表示
0 投票
Hi, I have n by 1 matrix, I want to splitt this matrix into systematically into several smaller matrices of the same dimension. For example let A=transpose([1:1:12552), I want to make other matrices of (24 by 1) from the A. Is there a short command I can use? I have tried 'mat2cell' function but it returns error. Is there something am missing?
採用された回答
A = transpose(1:12552);
C = num2cell(reshape(A,24,[]),1)
C = 1×523 cell array
{24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double} {24×1 double}
You can eaily access the content of the cell array C using indexing, e.g. the second cell:
C{2}
ans = 24×1
25
26
27
28
29
30
31
32
33
34
4 件のコメント
okoth ochola
2022 年 7 月 18 日
Thank you so much, it has worked perfectly well. Is there a fucntion that I can use to calculate mean of each submatrix within C, so as to end up with 523 by 1 matrix?
Dyuman Joshi
2022 年 7 月 18 日
A = transpose(1:12552);
C = num2cell(reshape(A,24,[]),1);
Cm=cellfun(@mean,C')
Cm = 523×1
12.5000
36.5000
60.5000
84.5000
108.5000
132.5000
156.5000
180.5000
204.5000
228.5000
okoth ochola
2022 年 7 月 18 日
It worked, thank you so much
" Is there a fucntion that I can use to calculate mean of each submatrix within C, so as to end up with 523 by 1 matrix?"
The simple and efficient MATLAB approach would avoid the cell array:
A = transpose(1:12552);
B = mean(reshape(A,24,[]),1).'
B = 523×1
12.5000
36.5000
60.5000
84.5000
108.5000
132.5000
156.5000
180.5000
204.5000
228.5000
その他の回答 (0 件)
カテゴリ
ヘルプ センター および File Exchange で Creating and Concatenating Matrices についてさらに検索
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Web サイトの選択
Web サイトを選択すると、翻訳されたコンテンツにアクセスし、地域のイベントやサービスを確認できます。現在の位置情報に基づき、次のサイトの選択を推奨します:
また、以下のリストから Web サイトを選択することもできます。
最適なサイトパフォーマンスの取得方法
中国のサイト (中国語または英語) を選択することで、最適なサイトパフォーマンスが得られます。その他の国の MathWorks のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
- América Latina (Español)
- Canada (English)
- United States (English)
ヨーロッパ
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)
