(arr1, arr22, /, out=None, *, where=True, casting=’same_kind’, order=’K’, dtype=None, ufunc ‘true_divide’) :
Array element from first array is divided by the elements from second array(all happens element-wise). Both arr1 and arr2 must have same shape. Returns true division element-wise.
Python traditionally follow ‘floor division’. Regardless of input type, true division adjusts answer to its best.
“//” is floor division operator.
“/” is true division operator.
Parameters :
arr1 : [array_like]Input array or object which works as numerator. arr2 : [array_like]Input array or object which works as denominator. out : [ndarray, None, optional]Output array with same dimensions as Input array, placed with result. **kwargs : allows you to pass keyword variable length of argument to a function. It is used when we want to handle named argument in a function. where : [array_like, optional]True value means to calculate the universal functions(ufunc) at that position, False value means to leave the value in the output alone.
Return :
If inputs are scalar then scalar; otherwise array with arr1 / arr2(element- wise) i.e. true division
Code 1 : arr1 divided by arr2
# Python program explaining # true_divide() function import numpy as np # input_array arr1 = [ 6 , 7 , 2 , 9 , 1 ] arr2 = [ 2 , 3 , 4 , 5 , 6 ] print ( "arr1 : " , arr1) print ( "arr1 : " , arr2) # output_array out = np.true_divide(arr1, arr2) print ( "\nOutput array : \n" , out) |
Output :
arr1 : [6, 7, 2, 9, 1] arr1 : [2, 3, 4, 5, 6] Output array : [ 3. 2.33333333 0.5 1.8 0.16666667]
Code 2 : elements of arr1 divided by divisor
# Python program explaining # true_divide() function import numpy as np # input_array arr1 = [ 2 , 7 , 3 , 11 , 4 ] divisor = 3 print ( "arr1 : " , arr1) # output_array out = np.true_divide(arr1, divisor) print ( "\nOutput array : " , out) |
Output :
arr1 : [2, 7, 3, 11, 4] Output array : [ 0.66666667 2.33333333 1. 3.66666667 1.33333333]
Code 3 : Comparison between floor_division(//) and true-division(/)
# Python program explaining # true_divide() function import numpy as np # input_array arr1 = np.arange( 5 ) arr2 = [ 2 , 3 , 4 , 5 , 6 ] print ( "arr1 : " , arr1) print ( "arr1 : " , arr2) # output_array out = np.floor_divide(arr1, arr2) out_arr = np.true_divide(arr1, arr2) print ( "\nOutput array with floor divide : \n" , out) print ( "\nOutput array with true divide : \n" , out_arr) print ( "\nOutput array with floor divide(//) : \n" , arr1 / / arr2) print ( "\nOutput array with true divide(/) : \n" , arr1 / arr2) |
Output :
arr1 : [0 1 2 3 4] arr1 : [2, 3, 4, 5, 6] Output array with floor divide : [0 0 0 0 0] Output array with true divide : [ 0. 0.33333333 0.5 0.6 0.66666667] Output array with floor divide(//) : [0 0 0 0 0] Output array with true divide(/) : [ 0. 0.33333333 0.5 0.6 0.66666667]
References :
https://docs.scipy.org/doc/numpy-1.13.0/reference/generated/numpy.floor_divide.html
.