override_left_with_right_dataframe

trashpanda.override_left_with_right_dataframe(left_target: pandas.core.frame.DataFrame, overriding_right: pandas.core.frame.DataFrame) pandas.core.frame.DataFrame

Overrides overlapping items of left with right.

Parameters
  • left_target (DataFrame) – Dataframe which should be overridden.

  • overriding_right (DataFrame) – The new values as frame, which overrides the left target.

Returns

DataFrame

Examples

>>> from pandas import DataFrame
>>> import numpy as np
>>> left = DataFrame(np.full(3, 1), index=list(iter("abc")), columns=["v"])
>>> left
   v
a  1
b  1
c  1
>>> right = DataFrame(np.full(2, 2), index=list(iter("ad")), columns=["v"])
>>> right
   v
a  2
d  2
>>> override_left_with_right_dataframe(left, right)
   v
a  2
b  1
c  1
d  2
>>> double_data = [list(range(1, 3)) for i in range(3)]
>>> left = DataFrame(double_data, index=list(iter("abc")), columns=["m", "x"])
>>> left
   m  x
a  1  2
b  1  2
c  1  2
>>> double_data = [list(range(3, 5)) for i in range(2)]
>>> right = DataFrame(double_data, index=list(iter("ad")), columns=["x", "m"])
>>> right
   x  m
a  3  4
d  3  4
>>> override_left_with_right_dataframe(left, right)
   m  x
a  4  3
b  1  2
c  1  2
d  4  3
>>> right = DataFrame(double_data, index=list(iter("ad")), columns=["z", "m"])
>>> right
   z  m
a  3  4
d  3  4
>>> override_left_with_right_dataframe(left, right)
   m    x    z
a  4  2.0  3.0
b  1  2.0  NaN
c  1  2.0  NaN
d  4  NaN  3.0