Python | Pandas dataframe.div()

Python is a great language for doing data analysis, primarily because of the fantastic ecosystem of data-centric python packages. Pandas is one of those packages and makes importing and analyzing data much easier.

Pandas dataframe.div() is used to find the floating division of the dataframe and other element-wise. This function is similar to datafram/other, but with an additional support to handle missing value in one of the input data.

Syntax: DataFrame.div(other, axis=’columns’, level=None, fill_value=None)



Parameters:
other : Series, DataFrame, or constant
axis : For Series input, axis to match Series index on
fill_value : Fill missing (NaN) values with this value. If both DataFrame locations are missing, the result will be missing
level : Broadcast across a level, matching Index values on the passed MultiIndex level

Returns: result : DataFrame

Example #1: Use div() function to find floating division of dataframe elements with a constant value. Also handle the NaN value present in the dataframe.

filter_none

edit
close

play_arrow

link
brightness_4
code

# importing pandas as pd
import pandas as pd
  
# Creating the dataframe with NaN value
df = pd.DataFrame({"A":[5, 3, None, 4],
                   "B":[None, 2, 4, 3], 
                   "C":[4, 3, 8, 5],
                   "D":[5, 4, 2, None]})
  
# Print the dataframe
df

chevron_right


Now find the division of each dataframe element with 2

filter_none

edit
close

play_arrow

link
brightness_4
code

# Find the division with 50 being substituted
# for all the missing values in the dataframe
df.div(2, fill_value = 50)

chevron_right


Output :

The output is a dataframe with cells containing the result of the division of each cell value with 2. All the NaN cells have been filled with 50 before performing the division.
 
Example #2: Use div() function to find the floating division of a dataframe with a series object over the index axis.

filter_none

edit
close

play_arrow

link
brightness_4
code

# importing pandas as pd
import pandas as pd
  
# Creating the dataframe 
df = pd.DataFrame({"A":[5, 3, 6, 4],
                   "B":[11, 2, 4, 3],
                   "C":[4, 3, 8, 5],
                   "D":[5, 4, 2, 8]})
  
# Create a series object with no. of elements 
# equal to the element along the index axis.
  
# Creating a pandas series object
series_object = pd.Series([2, 3, 1.5, 4])
  
# Print the series_obejct
series_object

chevron_right


Output :

Note: If the dimension of the index axis of the dataframe and the series object is not same then an error will occur.

Now, find the division of dataframe elements with the series object along the index axis

filter_none

edit
close

play_arrow

link
brightness_4
code

# To find the division
df.div(series_object, axis = 0)

chevron_right


Output :

The output is a dataframe with cells containing the result of the division of the current cell element with the corresponding series object cell.



My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.