Matrix split in vector

3 visualizzazioni (ultimi 30 giorni)
steve Brian
steve Brian il 7 Apr 2020
Commentato: Stephen23 il 7 Apr 2020
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]

Risposta accettata

Stephen23
Stephen23 il 7 Apr 2020
Modificato: Stephen23 il 7 Apr 2020
>> B = nonzeros(A.')
B =
1
2
3
4
5
6
7
8
  2 Commenti
steve Brian
steve Brian il 7 Apr 2020
Modificato: steve Brian il 7 Apr 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 il 7 Apr 2020
"and if i want B to be in row?"
nonzeros(A.').'

Accedi per commentare.

Più risposte (1)

KSSV
KSSV il 7 Apr 2020
Modificato: KSSV il 7 Apr 2020
iwant = A(A>0)
If you want in the order you have given.
A = A' ;
iwant = A(A>0)

Categorie

Scopri di più su Operating on Diagonal Matrices in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by