I'm trying to update a column from a value of 0 to a value of 1 if certain conditions are true. Here is my code:
df_['win'] = 0
df_.loc[df_['predicted_spread'] > df_['vegas_spread'] and df_['actual_spread'] > df_['vegas_spread'], 'win'] = 1
ValueError: The truth value of a Series is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all().
When doing boolean indexing you need to use the logical operator for
and which is
&. See the doc here for more info
df['win'] = 0 cond_1 = df['predicted_spread'] > df['vegas_spread'] cond_2 = df['actual_spread'] > df['vegas_spread'] df.loc[cond_1 & cond_2, 'win'] = 1
Basically just your answer with
& instead of
and. I just rewrote it to make it a little clearer.