Azzera filtri
Azzera filtri

how to split a 4x3 matrix in half

1 visualizzazione (ultimi 30 giorni)
Alexya
Alexya il 7 Ott 2022
Modificato: dpb il 7 Ott 2022
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]

Risposte (3)

Torsten
Torsten il 7 Ott 2022
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 Commento
dpb
dpb il 7 Ott 2022
Modificato: dpb il 7 Ott 2022
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.

Accedi per commentare.


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

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

Community Treasure Hunt

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

Start Hunting!

Translated by