Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

NumPy log2() Function



The NumPy log2() function is used to compute the logarithm of all elements in an input array with base 2. It calculates log2(x) for each element x in the array.

This function can be applied to scalars, lists, or NumPy arrays and will return an array of the same shape with the logarithm (base 2) of each input value.

Syntax

Following is the syntax of the NumPy log2() function −

numpy.log2(x, /, out=None, where=True, casting='same_kind', order='K', dtype=None, subok=True[, signature, extobj])

Parameters

This function accepts the following parameters −

  • x: The input array or scalar. The function computes the base-2 logarithm of each element of the array or scalar.
  • out (optional): A location into which the result is stored. If provided, it must have a shape that the inputs broadcast to. If not provided or None, a freshly-allocated array is returned.
  • where (optional): This condition is broadcast over the input. At locations where the condition is True, the result will be computed. Otherwise, the result will retain its original value.
  • casting (optional): Controls what kind of data casting may occur. Defaults to 'same_kind'.
  • order (optional): Controls the memory layout order of the result. 'C' means C-order, 'F' means Fortran-order, 'A' means 'F' if inputs are all F, 'C' otherwise, 'K' means match the layout of the inputs as closely as possible.
  • dtype (optional): The type of the returned array and of the accumulator in which the elements are processed. The dtype of x is used by default unless dtype is specified.
  • subok (optional): If True, then sub-classes will be passed-through, otherwise the returned array will be forced to be a base-class array.

Return Value

This function returns an array where each element is the base-2 logarithm of the corresponding element in the input array x. If out is provided, it returns a reference to out.

Example: Basic Usage of log2() Function

In the following example, we use the log2() function to compute the base-2 logarithm for each element in a 1-dimensional array −

import numpy as np

# Creating a 1-dimensional array
arr = np.array([1, 2, 4, 8])

# Applying log2 to each element
result = np.log2(arr)
print(result)

The output obtained will be −

[0. 1. 2. 3.]

Example: log2() Function with Broadcasting

In this example, we demonstrate the use of broadcasting with the log2() function. We create a 2-dimensional array and apply log2 on it −

import numpy as np

# Creating a 2-dimensional array
arr = np.array([[1, 2, 4], [8, 16, 32]])

# Applying log2 to each element
result = np.log2(arr)
print(result)

This will produce the following result −

[[0. 1. 2.]
 [3. 4. 5.]]

Example: log2() Function with Scalar

In this example, we apply the log2() function to a scalar value −

import numpy as np

# Scalar value
scalar = 64

# Applying log2 to the scalar
result = np.log2(scalar)
print(result)

The output obtained is −

6.0

Example: log2() Function with Negative Values (Warning)

In this example, we apply the log2() function to an array with negative values. The logarithm of a negative number is undefined, so a warning will be raised −

import numpy as np

# Creating a 1-dimensional array with negative values
arr = np.array([-1, -2, -3])

# Applying log2 to each element (will raise a warning for negative values)
result = np.log2(arr)
print(result)

This will produce the following warning −

/home/cg/root/673acdd6238d1/main.py:7: RuntimeWarning: invalid value encountered in log2
  result = np.log2(arr)
[nan nan nan]
numpy_arithmetic_operations.htm
Advertisements