how to split a 4x3 matrix in half

3 次查看(过去 30 天)
Alexya
Alexya 2022-10-7
编辑: dpb 2022-10-7
i have a 4x3 matrix that i need to split in half
arr1 = [1 2 3 4;5 6 7 8;9 10 11 12]
i need it to be
[1 2;5 6;9 10]

回答(3 个)

Torsten
Torsten 2022-10-7
If the number of columns of arr1 is divisible by 2:
arr1 = [1 2 3 4;5 6 7 8;9 10 11 12];
arr1_half = arr1(:,1:size(arr1,2)/2)
arr1_half = 3×2
1 2 5 6 9 10
  1 个评论
dpb
dpb 2022-10-7
编辑:dpb 2022-10-7
And depending on which way one wants to go, if odd then use either
arr1_half = arr1(:,1:fix(size(arr1,2))/2);
or
arr1_half = arr1(:,1:ceil(size(arr1,2))/2);
Either of those is general to handle both even and odd number of columns once a decision is made as to which way to round, up or down.

请先登录,再进行评论。


Ghazwan
Ghazwan 2022-10-7
Newarr1=arr1(:,1:length(arr1(1,:))/2)
%Note that the number of columns has to be even

Image Analyst
Image Analyst 2022-10-7
This is just very basic indexing. To learn other fundamental concepts, invest 2 hours of your time here:

类别

Help CenterFile Exchange 中查找有关 Matrix Indexing 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by