pandas.DataFrame.__add__#

DataFrame.__add__(other)[source]#

Get Addition of DataFrame and other, column-wise.

Equivalent to DataFrame.add(other).

Parameters:
otherscalar, sequence, Series, dict or DataFrame

Object to be added to the DataFrame.

Returns:
DataFrame

The result of adding other to DataFrame.

See also

DataFrame.add

Add a DataFrame and another object, with option for index- or column-oriented addition.

Examples

>>> df = pd.DataFrame(
...     {"height": [1.5, 2.6], "weight": [500, 800]}, index=["elk", "moose"]
... )
>>> df
       height  weight
elk       1.5     500
moose     2.6     800

Adding a scalar affects all rows and columns.

>>> df[["height", "weight"]] + 1.5
       height  weight
elk       3.0   501.5
moose     4.1   801.5

Each element of a list is added to a column of the DataFrame, in order.

>>> df[["height", "weight"]] + [0.5, 1.5]
       height  weight
elk       2.0   501.5
moose     3.1   801.5

Keys of a dictionary are aligned to the DataFrame, based on column names; each value in the dictionary is added to the corresponding column.

>>> df[["height", "weight"]] + {"height": 0.5, "weight": 1.5}
       height  weight
elk       2.0   501.5
moose     3.1   801.5

When other is a Series, the index of other is aligned with the columns of the DataFrame.

>>> s1 = pd.Series([0.5, 1.5], index=["weight", "height"])
>>> df[["height", "weight"]] + s1
       height  weight
elk       3.0   500.5
moose     4.1   800.5

Even when the index of other is the same as the index of the DataFrame, the Series will not be reoriented. If index-wise alignment is desired, DataFrame.add() should be used with axis=’index’.

>>> s2 = pd.Series([0.5, 1.5], index=["elk", "moose"])
>>> df[["height", "weight"]] + s2
       elk  height  moose  weight
elk    NaN     NaN    NaN     NaN
moose  NaN     NaN    NaN     NaN
>>> df[["height", "weight"]].add(s2, axis="index")
       height  weight
elk       2.0   500.5
moose     4.1   801.5

When other is a DataFrame, both columns names and the index are aligned.

>>> other = pd.DataFrame(
...     {"height": [0.2, 0.4, 0.6]}, index=["elk", "moose", "deer"]
... )
>>> df[["height", "weight"]] + other
       height  weight
deer      NaN     NaN
elk       1.7     NaN
moose     3.0     NaN