def METHOD_NAME(data1, data2, drop_column=None):
    """Add two OrderedDict's together and optionally drop repeated data.
    Parameters
    ----------
    data1 : collections.OrderedDict
        Original OrderedDict.
    data2 : collections.OrderedDict
        New OrderedDict to be added to the original.
    drop_column : str, optional
        Name of the column to check for duplicate values in.
        Any duplicates found will be dropped from the original data array (ie.
        most recent value are kept).
    Returns
    -------
    data : collections.OrderedDict
        The new combined data.
    """
    data = deepcopy(data1)
    # next extend the values in data1 with values in data2
    for key, value in data2.items():
        data[key].extend(value)
    # Make sure that if there are any columns in data1 that didn't get new
    # data they are populated with "n/a"'s.
    for key in set(data1.keys()) - set(data2.keys()):
        data[key].extend(["n/a"] * len(next(iter(data2.values()))))
    if drop_column is None:
        return data
    # Find any repeated values and remove all but the most recent value.
    n_rows = len(data[drop_column])
    _, idxs = np.unique(data[drop_column][::-1], return_index=True)
    for key in data:
        data[key] = [data[key][n_rows - 1 - idx] for idx in idxs]
    return data