我正在用Matlab寫一個函數。應該有什麼問題。我的函數的輸出是一個向量。當我看到我的矢量的每個元素時,我都看到NaN
(不是數字)和NaNi
,那我真的不知道?NaNi是什麼,它與NaN有什麼不同?
有誰知道什麼是NaNi?
我正在用Matlab寫一個函數。應該有什麼問題。我的函數的輸出是一個向量。當我看到我的矢量的每個元素時,我都看到NaN
(不是數字)和NaNi
,那我真的不知道?NaNi是什麼,它與NaN有什麼不同?
有誰知道什麼是NaNi?
NaNi
是一個虛構的Not-A-Number:
>>NaN*i
ans =
0 + NaNi
其實納尼並沒有在Matlab中存在。
當你有一個複雜的數字時,顯示的值是'真實部分'+'複雜部分'+'我'。這是在不第i之前的空間中示出,嘗試:
(-1)^0.5 %This will give 0.0000 + 1.0000i
這意味着,如果所述數目的複雜的部分是NaN,則與I一起打印,似乎是一個字納尼。例如:
NaN*(1+i) % This will give NaN + NaNi
x = NaN*i % This will give 0 + NaNi
你會發現,這是不可能單獨評估納尼或具有1
此外檢查結果,當預期的產出生產相乘:
real(x) % This will give 0
imag(x) % This will give NaN
+ 1:有史以來最好的答案'一個虛構的非數字':-) – 2010-11-11 15:23:49
@高性能標記:我想知道是否有可能比這更少。 – Jonas 2010-11-11 18:03:14
我不同意這種解釋。 _NaNi_本身不會退出。 @Dennis Jaheruddin給出了正確的解釋,其中NaNi是_NaN_和_i_(matlab想象符號)的控制檯連接。 – marsei 2013-07-23 10:10:21