Creating 3D array from 2D with increment

조회 수: 1 (최근 30일)
Jiayun Liu
Jiayun Liu 2022년 10월 13일
댓글: Jiayun Liu 2022년 10월 13일
Suppose I have a 2D array of integers A and I want to create another 2D array B = A+1 and I want to combine them into 1 3D array. I will do something like cat(3,A,B). Now I want to add another 2D array C = B+1 to it. The simple way I can think of would be to loop it through a for loop. I was wondering if there are any other way of doing this without using for loop.

채택된 답변

Chunru
Chunru 2022년 10월 13일
A = randi([1, 10], [3, 5])
A = 3×5
5 9 3 6 5 7 8 1 8 6 9 3 8 10 1
C = A + reshape(0:2, [1,1,3]) % increment 0, 1, 2 for example
C =
C(:,:,1) = 5 9 3 6 5 7 8 1 8 6 9 3 8 10 1 C(:,:,2) = 6 10 4 7 6 8 9 2 9 7 10 4 9 11 2 C(:,:,3) = 7 11 5 8 7 9 10 3 10 8 11 5 10 12 3

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Creating and Concatenating Matrices에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by