Pandas Series - div() function
The Pandas div() function returns floating division of series and other, element-wise. It is equivalent to series / other, but with support to substitute a fill_value for missing data as one of the parameters.
Syntax
Series.div(other, level=None, fill_value=None)
Parameters
other |
Required. Specify scalar value or Series. |
level |
Optional. Specify int or name to broadcast across a level, matching Index values on the passed MultiIndex level. Default is None. |
fill_value |
Optional. Specify value to fill existing missing (NaN) values, and any new element needed for successful Series alignment. If data in both corresponding Series locations is missing the result will be missing. Default is None. |
Return Value
Returns the result of the arithmetic operation.
Example: Dividing the Series with a scalar value
In the example below, the div() function is used to divide the series with a given scalar value.
import pandas as pd import numpy as np x = pd.Series([10, 20, 30, 40, 50]) print("The Series contains:") print(x) #dividing the Series by 2 print("\nx.div(2) returns:") print(x.div(2))
The output of the above code will be:
The Series contains: 0 10 1 20 2 30 3 40 4 50 dtype: int64 x.div(2) returns: 0 5.0 1 10.0 2 15.0 3 20.0 4 25.0 dtype: float64
Example: Dividing two Series
A series can be divided with another series in the similar fashion. Consider the following example:
import pandas as pd import numpy as np x = pd.Series([10, np.NaN, 30, 40], index=['A', 'B', 'C', 'D']) y = pd.Series([1, 2, 3, np.NaN], index=['A', 'B', 'C', 'D']) print("The x contains:") print(x) print("\nThe y contains:") print(y) #dividing x by y print("\nx.div(y, fill_value=0) returns:") print(x.div(y, fill_value=0))
The output of the above code will be:
The x contains: A 10.0 B NaN C 30.0 D 40.0 dtype: float64 The y contains: A 1.0 B 2.0 C 3.0 D NaN dtype: float64 x.div(y, fill_value=0) returns: A 10.0 B 0.0 C 10.0 D inf dtype: float64
Example: Dividing columns in a DataDrame
The div() function can be applied in a DataFrame to get the division of two series/column element-wise. Consider the following example.
import pandas as pd import numpy as np df = pd.DataFrame({ "Bonus": [5, 3, 2, 4], "Salary": [60, 62, 65, 59]}, index= ["John", "Marry", "Sam", "Jo"] ) print("The DataFrame is:") print(df) #dividing 'Bonus' by 'Salary' column df['%Bonus'] = df['Bonus'].div(df['Salary']) #converting into percentage df['%Bonus'] = df['%Bonus'] * 100 print("\nThe DataFrame is:") print(df)
The output of the above code will be:
The DataFrame is: Bonus Salary John 5 60 Marry 3 62 Sam 2 65 Jo 4 59 The DataFrame is: Bonus Salary %Bonus John 5 60 8.333333 Marry 3 62 4.838710 Sam 2 65 3.076923 Jo 4 59 6.779661
❮ Pandas Series - Functions