Hello everyone! I need a little help, I'm at the beginning and I would like to create a function that receives a matrix with positive elements (0 included) and returns in a vector line by line the elements of the matrix without zeros. A little help, please?
ex: A = [1 2 0 3; 0 0 4 5; 6 0 7 8]
newA= [1, 2, 3, 4, 5, 6, 7, 8]

 Réponse acceptée

Stephen23
Stephen23 le 7 Avr 2020
Modifié(e) : Stephen23 le 7 Avr 2020

0 votes

>> B = nonzeros(A.')
B =
1
2
3
4
5
6
7
8

2 commentaires

steve Brian
steve Brian le 7 Avr 2020
Modifié(e) : steve Brian le 7 Avr 2020
and if i want B to be in row?
I have something like this:
function [values] = ceva(A)
B = A(A>0)
values = B';
endfunction
when i insert A, only display B = columne
edit: i fix it
Stephen23
Stephen23 le 7 Avr 2020
"and if i want B to be in row?"
nonzeros(A.').'

Connectez-vous pour commenter.

Plus de réponses (1)

KSSV
KSSV le 7 Avr 2020
Modifié(e) : KSSV le 7 Avr 2020

0 votes

iwant = A(A>0)
If you want in the order you have given.
A = A' ;
iwant = A(A>0)

Catégories

Community Treasure Hunt

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

Start Hunting!

Translated by