dont want the number if its a part of a complex number

1 次查看(过去 30 天)
So I know that doing;
Z = [0.5i 1+3i -2.2];
X = real(Z)
would give me
X = 0 1.0000 -2.2000
but what should I do if I only want pure real numbers and not even the real part of the complex number?
for example;
Z = [0.5i 1+3i -2.2];
"..."
would give me
X = 0 0 -2.2000
Thanks any help is appreciated.

采纳的回答

Tanveer ul haq
Tanveer ul haq 2019-10-23
Z = [0.5 1+3i -2.2];
Z(~imag(Z))

更多回答(1 个)

Bhaskar R
Bhaskar R 2019-10-23
MATALB convert all numbers float if any number is float in the array as it Auto type cast so we need to convert from the manipulation as shown
flag = abs(real(Z)) == abs(Z);
X = real(Z).*flag;
  1 个评论
Brian S.
Brian S. 2019-10-23
编辑:Brian S. 2019-10-23
not exactly the method I was going for but it did answer the question, thanks a ton

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Title 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by