Matrix split in vector

1 回表示 (過去 30 日間)
steve Brian
steve Brian 2020 年 4 月 7 日
コメント済み: Stephen23 2020 年 4 月 7 日
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]

採用された回答

Stephen23
Stephen23 2020 年 4 月 7 日
編集済み: Stephen23 2020 年 4 月 7 日
>> B = nonzeros(A.')
B =
1
2
3
4
5
6
7
8
  2 件のコメント
steve Brian
steve Brian 2020 年 4 月 7 日
編集済み: steve Brian 2020 年 4 月 7 日
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 2020 年 4 月 7 日
"and if i want B to be in row?"
nonzeros(A.').'

サインインしてコメントする。

その他の回答 (1 件)

KSSV
KSSV 2020 年 4 月 7 日
編集済み: KSSV 2020 年 4 月 7 日
iwant = A(A>0)
If you want in the order you have given.
A = A' ;
iwant = A(A>0)

カテゴリ

Help Center および File ExchangeOperating on Diagonal Matrices についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by