Modulo Division of one pandas series by another pandas Series or by a Python Sequence

Overview:

  • The function Series.mod() performs a modulo division of values of a pandas.Series instance by another Series. The modulo division returns only the remainder from the division operation.
  • Calling Series.mod() function is similar to using the modulo division operator “%”. However using the Series.mod() function enables replacing None, NaN using the fill_value parameter.
  • In the same way, to perform floor division or integer division of one pandas.Series instance by another Series the Series.floordiv() can be used.
  • As apposed to modulo division operation the floor division returns only the quotient of the division operation.

Example:

# Example Python program to perform modulo division of a pandas.Series

# by another Series

import pandas as pds

firstSeries     = pds.Series([13, 25, 37, 49, 57]);

secondSeries    = pds.Series([2, 4, 6, 5, 10]);

remainders      = firstSeries.mod(secondSeries);

 

print("Contents of the first series:");

print(firstSeries);

 

print("Contents of the second series:");

print(secondSeries);

 

print("First series modulo divided by the second series:");

print(remainders);

 

Output:

Contents of the first series:

0    13

1    25

2    37

3    49

4    57

dtype: int64

Contents of the second series:

0     2

1     4

2     6

3     5

4    10

dtype: int64

First series modulo divided by the second series:

0    1

1    1

2    1

3    4

4    7

dtype: int64

 

Example – Modulo division of one pandas Series by a Python Sequence:

A pandas Series can be modulo divided by any Python sequence. This example uses a Python tuple to perform a modulo division on a pandas Series.

# Example Python program to perform modulo division of a pandas.Series

# by another Python Sequence

import pandas as pds

 

series1         = pds.Series([2, 22, 3, 33, 4, 44]);

pythonSequence  = (2, 3, 4, 5, 6, 7);

theRemainders   = series1.mod(pythonSequence);

 

print("Contents of series1:");

print(series1);

 

print("Contents of the Python Seuqence:");

print(pythonSequence);

 

print("Series1 modulo divided by the Python Seuqence:");

print(theRemainders);

 

Output:

Contents of series1:

0     2

1    22

2     3

3    33

4     4

5    44

dtype: int64

Contents of the Python Seuqence:

(2, 3, 4, 5, 6, 7)

Series1 modulo divided by the Python Seuqence:

0    0

1    1

2    3

3    3

4    4

5    2

dtype: int64

 

Example – Performing modulo division of one pandas Series by another while filling Nan/None values with a default value:

# Example Python program to perform modulo division of a pandas.Series

# by another while filling None/NaN with default values

import pandas as pds

 

# Create python lists

list1 = [6, 11, 17, 21, 28];

list2 = [1, 11, None, 4, 5];

 

# Create pandas Series objects from Python lists

s1 = pds.Series(list1);

s2 = pds.Series(list2);

 

# Perform modulo division

s3 = s1.mod(s2, fill_value=10);

 

print(s1);

print(s2);

print(s3);

 

 

Output:

0     6

1    11

2    17

3    21

4    28

dtype: int64

0     1.0

1    11.0

2     NaN

3     4.0

4     5.0

dtype: float64

0    0.0

1    0.0

2    7.0

3    1.0

4    3.0

dtype: float64

 


Copyright 2024 © pythontic.com