# Error:
# SettingWithCopyWarning: A value is trying to be set on a copy of a
# slice from a DataFrame
# As explained in the Source, this warning is usually safe to ignore. You
# can disable it by running the following:
import pandas as pd
pd.options.mode.chained_assignment = None # default='warn'
df[df['A'] > 2]['B'] = new_val # new_val not set in df
# rewrite it as below
df.loc[df['A'] > 2, 'B'] = new_val