how to split a 4x3 matrix in half

1 ビュー (過去 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:

カテゴリ

Find more on Operators and Elementary Operations in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by