Skip to content
Related Articles

Related Articles

Python NumPy – Return real parts if input is complex with all imaginary parts close to zero

View Discussion
Improve Article
Save Article
Like Article
  • Last Updated : 01 May, 2022

In this article, we will discuss how to return real parts if the input is complex with all imaginary parts close to zero in Python.

The numpy np.real_if_close() method is used to return the real parts if the input is a complex number with all imaginary parts close to zero. “Close to zero” is defined as tol * (machine epsilon of the type for a).

syntax: numpy.real_if_close(a, tol=100)

parameters:

  • a: array like object. input array.
  • tot: Machine epsilons tolerance for the complex component of the array’s elements.

returns:

out: The type of an is utilized for the output if an is true. The returning type is float if has complex elements.

Example 1:

In this example, the NumPy package is imported. An array is created using numpy.array() method which contains complex numbers where the imaginary parts are near 0 and np.real_if_close() returns the real parts. The shape, datatype, and dimensions of the array can be found by .shape, .dtype, and .ndim attributes.

Python3




import numpy as np
  
# Creating an array
array = np.array([1,2+3.e-18j,-3+4.e-14j])
print(array)
  
# shape of the array is
print("Shape of the array is : ",array.shape)
  
# dimension of the array
print("The dimension of the array is : ",array.ndim)
  
# Datatype of the array
print("Datatype of our Array is : ",array.dtype)
  
# returning real part
print(np.real_if_close(array, tol= 1000))

Output:

[ 1.+0.e+00j  2.+3.e-18j -3.+4.e-14j]
Shape of the array is :  (3,)
The dimension of the array is :  1
Datatype of our Array is :  complex128
[ 1.  2. -3.]

Example 2:

In this case, imaginary numbers are not close to zero so the same array is returned back.

Python3




import numpy as np
  
# Creating an array
array = np.array([1+5j,3-6j])
print(array)
  
# shape of the array is
print("Shape of the array is : ",array.shape)
  
# dimension of the array
print("The dimension of the array is : ",array.ndim)
  
# Datatype of the array
print("Datatype of our Array is : ",array.dtype)
  
# returning real part
print(np.real_if_close(array, tol= 1000))

Output:

[1.+5.j 3.-6.j]
Shape of the array is :  (2,)
The dimension of the array is :  1
Datatype of our Array is :  complex128
[1.+5.j 3.-6.j]

My Personal Notes arrow_drop_up
Recommended Articles
Page :

Start Your Coding Journey Now!