applying log to matrix converts from real to complex: why?
Show older comments
Hello everyone,
I'm experiencing a very strange behaviour from matlab: I have a 132x4 matrix of real numbers and I need to take their logs. Of course, if I take each number's log individually, it works fine. If I instead use the function log on the whole matrix transf = log(matrix); numbers are converted to their logs from row 1 to 64, but from row 65 to the end they are converted to complex numbers (NaNs as well).
What can this be caused by?
Thanks in advance
Accepted Answer
More Answers (1)
Wayne King
on 21 Sep 2012
Edited: Wayne King
on 21 Sep 2012
It makes perfect sense to me that log() can produce complex numbers, but I'm confused by the NaNs. Can you give an example of an entry in your matrix such that log(that_entry) = NaN?
Also, can you create a small matrix example such that the log of the individual elements is different than when you apply log() to the matrix.
a = randn(4,4);
log(a)
Whether they are in a matrix or not should not matter.
Categories
Find more on Characters and Strings in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!