Unit 2 - Binary operations in a Data Frame
CBSE Revision Notes
Class-11 Computer Science (New Syllabus)
Unit 2: Data Handling (DH-1)
Binary operations in a Data Frame
pandas.DataFrame.add
DataFrame.
add
(other, axis='columns', level=None, fill_value=None)Addition of dataframe and other, element-wise (binary operator add).
Equivalent to
dataframe + other
, but with support to substitute a fill_value for missing data in one of the inputs.Parameters: other : Series, DataFrame, or constant axis : {0, 1, ‘index’, ‘columns’}
For Series input, axis to match Series index onlevel : int or name
Broadcast across a level, matching Index values on the passed MultiIndex levelfill_value : None or float value, default None
Fill existing missing (NaN) values, and any new element needed for successful DataFrame alignment, with this value before computation. If data in both corresponding DataFrame locations is missing the result will be missingReturns: result : DataFrame Notes : Mismatched indices will be unioned together
Examples
>>> a = pd.DataFrame([1, 1, 1, np.nan], index=['a', 'b', 'c', 'd'],
... columns=['one'])
>>> a
one
a 1.0
b 1.0
c 1.0
d NaN
>>> b = pd.DataFrame(dict(one=[1, np.nan, 1, np.nan],
... two=[np.nan, 2, np.nan, 2]),
... index=['a', 'b', 'd', 'e'])
>>> b
one two
a 1.0 NaN
b NaN 2.0
d 1.0 NaN
e NaN 2.0
>>> a.add(b, fill_value=0)
one two
a 2.0 NaN
b 1.0 2.0
c 1.0 NaN
d 1.0 NaN
e NaN 2.0pandas.DataFrame.sub
DataFrame.
sub
(other, axis='columns', level=None, fill_value=None)Subtraction of dataframe and other, element-wise (binary operator sub).
Equivalent to
dataframe - other
, but with support to substitute a fill_value for missing data in one of the inputs.Parameters: other : Series, DataFrame, or constant axis : {0, 1, ‘index’, ‘columns’}
For Series input, axis to match Series index onlevel : int or name
Broadcast across a level, matching Index values on the passed MultiIndex levelfill_value : None or float value, default None
Fill existing missing (NaN) values, and any new element needed for successful DataFrame alignment, with this value before computation. If data in both corresponding DataFrame locations is missing the result will be missingReturns: result : DataFrame Notes : Mismatched indices will be unioned together
Examples
>>> a = pd.DataFrame([2, 1, 1, np.nan], index=['a', 'b', 'c', 'd'],
... columns=['one'])
>>> a
one
a 2.0
b 1.0
c 1.0
d NaN
>>> b = pd.DataFrame(dict(one=[1, np.nan, 1, np.nan],
... two=[3, 2, np.nan, 2]),
... index=['a', 'b', 'd', 'e'])
>>> b
one two
a 1.0 3.0
b NaN 2.0
d 1.0 NaN
e NaN 2.0
>>> a.sub(b, fill_value=0)
one two
a 1.0 -3.0
b 1.0 -2.0
c 1.0 NaN
d -1.0 NaN
e NaN -2.0pandas.DataFrame.mul
DataFrame.
mul
(other, axis='columns', level=None, fill_value=None)Multiplication of dataframe and other, element-wise (binary operator mul).
Equivalent to
dataframe * other
, but with support to substitute a fill_value for missing data in one of the inputs.Parameters: other : Series, DataFrame, or constant axis : {0, 1, ‘index’, ‘columns’}
For Series input, axis to match Series index onlevel : int or name
Broadcast across a level, matching Index values on the passed MultiIndex levelfill_value : None or float value, default None
Fill existing missing (NaN) values, and any new element needed for successful DataFrame alignment, with this value before computation. If data in both corresponding DataFrame locations is missing the result will be missingReturns: result : DataFrame Notes : Mismatched indices will be unioned together
pandas.DataFrame.div
DataFrame.
div
(other, axis='columns', level=None, fill_value=None)Floating division of dataframe and other, element-wise (binary operator truediv).
Equivalent to
dataframe / other
, but with support to substitute a fill_value for missing data in one of the inputs.Parameters: other : Series, DataFrame, or constant axis : {0, 1, ‘index’, ‘columns’}
For Series input, axis to match Series index onlevel : int or name
Broadcast across a level, matching Index values on the passed MultiIndex levelfill_value : None or float value, default None
Fill existing missing (NaN) values, and any new element needed for successful DataFrame alignment, with this value before computation. If data in both corresponding DataFrame locations is missing the result will be missingReturns: result : DataFrame Notes : Mismatched indices will be unioned together
pandas.DataFrame.radd
DataFrame.
radd
(other, axis='columns', level=None, fill_value=None)Addition of dataframe and other, element-wise (binary operator radd).
Equivalent to
other + dataframe
, but with support to substitute a fill_value for missing data in one of the inputs.Parameters: other : Series, DataFrame, or constant axis : {0, 1, ‘index’, ‘columns’}
For Series input, axis to match Series index onlevel : int or name
Broadcast across a level, matching Index values on the passed MultiIndex levelfill_value : None or float value, default None
Fill existing missing (NaN) values, and any new element needed for successful DataFrame alignment, with this value before computation. If data in both corresponding DataFrame locations is missing the result will be missingReturns: result : DataFrame Notes : Mismatched indices will be unioned together
Examples
>>> a = pd.DataFrame([1, 1, 1, np.nan], index=['a', 'b', 'c', 'd'],
... columns=['one'])
>>> a
one
a 1.0
b 1.0
c 1.0
d NaN
>>> b = pd.DataFrame(dict(one=[1, np.nan, 1, np.nan],
... two=[np.nan, 2, np.nan, 2]),
... index=['a', 'b', 'd', 'e'])
>>> b
one two
a 1.0 NaN
b NaN 2.0
d 1.0 NaN
e NaN 2.0
>>> a.add(b, fill_value=0)
one two
a 2.0 NaN
b 1.0 2.0
c 1.0 NaN
d 1.0 NaN
e NaN 2.0pandas.DataFrame.rsub
DataFrame.
rsub
(other, axis='columns', level=None, fill_value=None)Subtraction of dataframe and other, element-wise (binary operator rsub).
Equivalent to
other - dataframe
, but with support to substitute a fill_value for missing data in one of the inputs.Parameters: other : Series, DataFrame, or constant axis : {0, 1, ‘index’, ‘columns’}
For Series input, axis to match Series index onlevel : int or name
Broadcast across a level, matching Index values on the passed MultiIndex levelfill_value : None or float value, default None
Fill existing missing (NaN) values, and any new element needed for successful DataFrame alignment, with this value before computation. If data in both corresponding DataFrame locations is missing the result will be missingReturns: result : DataFrame Notes : Mismatched indices will be unioned together
Examples
>>> a = pd.DataFrame([2, 1, 1, np.nan], index=['a', 'b', 'c', 'd'],
... columns=['one'])
>>> a
one
a 2.0
b 1.0
c 1.0
d NaN
>>> b = pd.DataFrame(dict(one=[1, np.nan, 1, np.nan],
... two=[3, 2, np.nan, 2]),
... index=['a', 'b', 'd', 'e'])
>>> b
one two
a 1.0 3.0
b NaN 2.0
d 1.0 NaN
e NaN 2.0
>>> a.sub(b, fill_value=0)
one two
a 1.0 -3.0
b 1.0 -2.0
c 1.0 NaN
d -1.0 NaN
e NaN -2.0