How to split array based condition

20 vues (au cours des 30 derniers jours)
Rajib Deyana
Rajib Deyana le 30 Mai 2018
Modifié(e) : KSSV le 30 Mai 2018
Suppose I have an array like this A = [0 1 0 2 3 0]. How can i get A1 = [1] and A2 = [2 3] based their position between 0.

Réponses (1)

KSSV
KSSV le 30 Mai 2018
Modifié(e) : KSSV le 30 Mai 2018
A = [0 1 0 2 3 0] ;
ii = zeros(size(A));
jj = A > 0;
ii(strfind([0,jj(:)'],[0 1])) = 1;
idx = cumsum(ii).*jj;
iwant = accumarray( idx(jj)',A(jj)',[],@(x){x'})

Catégories

En savoir plus sur Cell Arrays dans Help Center et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by