0
0
NumpyHow-ToBeginner ยท 3 min read

How to Use log Function in NumPy for Natural Logarithms

Use numpy.log() to calculate the natural logarithm (base e) of a number or each element in an array. Pass a number or a NumPy array as input, and it returns the natural log values as output.
๐Ÿ“

Syntax

The basic syntax of the numpy.log() function is:

  • numpy.log(x): Computes the natural logarithm (base e) of x.
  • x can be a single number or a NumPy array.
  • The output is the natural log of each element in x.
python
import numpy as np

np.log(x)
๐Ÿ’ป

Example

This example shows how to calculate the natural logarithm of a single number and an array of numbers using numpy.log().

python
import numpy as np

# Natural log of a single number
num = 10
log_num = np.log(num)

# Natural log of an array
arr = np.array([1, np.e, 10, 100])
log_arr = np.log(arr)

print(f"Natural log of {num}: {log_num}")
print("Natural log of array:", log_arr)
Output
Natural log of 10: 2.302585092994046 Natural log of array: [0. 1. 2.30258509 4.60517019]
โš ๏ธ

Common Pitfalls

Common mistakes when using numpy.log() include:

  • Passing zero or negative numbers causes warnings or nan results because the natural log is undefined for these values.
  • Confusing numpy.log() (natural log) with numpy.log10() (log base 10).
  • Not using NumPy arrays when working with multiple values, which can slow down calculations.
python
import numpy as np

# Wrong: log of zero or negative number
print(np.log(0))  # Warning and -inf
print(np.log(-5)) # Warning and nan

# Right: check values before log
x = np.array([1, 10, -3, 0])
x_safe = x[x > 0]
print(np.log(x_safe))
Output
-inf nan [0. 2.30258509]
๐Ÿ“Š

Quick Reference

FunctionDescription
numpy.log(x)Natural logarithm (base e) of x
numpy.log10(x)Logarithm base 10 of x
numpy.log2(x)Logarithm base 2 of x
numpy.log1p(x)Natural log of (1 + x), useful for small x
โœ…

Key Takeaways

Use numpy.log() to compute the natural logarithm of numbers or arrays.
Input values must be positive; zero or negative inputs cause warnings or nan results.
For base 10 logarithms, use numpy.log10() instead of numpy.log().
Check or filter input data to avoid invalid values before applying log.
NumPy functions work element-wise on arrays for efficient calculations.