def fill_with_gauss(df, w=12):
    """
    Fill missing values in a time series data using gaussian
    """
    return df.fillna(
        df.rolling(window=w, win_type="gaussian", center=True, min_periods=1).mean(
            std=2
        )
    )