Compare segments of a vector
1 visualizzazione (ultimi 30 giorni)
Mostra commenti meno recenti
Ricardo Gutierrez
il 6 Mar 2018
Modificato: Fangjun Jiang
il 7 Mar 2018
Hello good day.
I have a problem, which I hope you can give me support or advice: I have the following column vector of 20 elements (the real one is 1000 elements): A=[6.9563; 6.9563; 6.9563; 6.9563; 6.9563; 7.4917; 5.8343; 5.3075; 5.8713; 7.1312; 11.2175; 11.2175; 11.2175; 11.2175; 11.2175; 10.4278; 10.9766; 11.2685; 9.4748; 11.3789] The question is how to compare (greater than>) the first 5 elements with the second 5 elements of vector A. 6.9563 6.9563 6.9563 6.9563 6.9563 Compare with 7.4917 5.8343 5.3075 5.8713 7.1312 and after third 5 elements with the fourth 5 elements of the vector A 11.2175 11.2175 11.2175 11.2175 11.2175 Compare with 10.4278 10.9766 11.2685 9.4748 11.3789 And so on automatically, if the vector A is 1000 elements
I hope you understand me and help me. Greetings.
5 Commenti
Jos (10584)
il 6 Mar 2018
I fail see the relationship between the values of B and the values of A ...
Risposta accettata
Fangjun Jiang
il 7 Mar 2018
Modificato: Fangjun Jiang
il 7 Mar 2018
What if none of the element in second 5 elements is greater than the first 5 elements? The code below might be easier to understand.
A=[2 2 2 2 2 3 6 3 4 5 1 1 1 1 1 0 0 0 0 0];
A=transpose(reshape(A,10,[]));
B=A(:,6:10);
A=A(:,1:5);
C=B>A;
ind=any(C,2);
B(~ind,:)=A(~ind,:)
B =
3 6 3 4 5
1 1 1 1 1
Più risposte (3)
David Fletcher
il 6 Mar 2018
Modificato: David Fletcher
il 6 Mar 2018
ind=repmat(logical([0 0 0 0 0 1 1 1 1 1]),1,100)
b=a(ind)
a(ind)=[]
c=a>b
0 Commenti
Fangjun Jiang
il 6 Mar 2018
This example should give you an idea
A=transpose(reshape(rand(20,1),5,[]))
B=diff(A)
C=B>0
C should tell you the relation
0 Commenti
Jos (10584)
il 7 Mar 2018
Modificato: Jos (10584)
il 7 Mar 2018
A = [2 2 2 2 2 3 6 3 4 5 1 1 1 1 1 2 3 4 5 6]
AA = reshape(A,5,[])
dA = diff(AA,[],2)
ix = all(dA>0)
ix = 2*find(ix(1:2:end))
B = reshape(AA(:,ix),1,[])
2 Commenti
Vedere anche
Categorie
Scopri di più su Matrix Indexing in Help Center e File Exchange
Prodotti
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!