Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Change Value of a Dataframe Column Based on a Filter

I have a Dataframe that consists of 2 columns:

  1. "Time Spent on website"
  2. "Dollars spent on the website"

I want to perform some classification analysis on this dataset and I only care whether a user made a purchase or not. So I want to run through the "Dollars spent on the website" column and transform the value to "1" if the user spent over $0.00 and have the value be "0" if the user spent nothing.

What is the proper way to do this with a pandas dataframe?

like image 269
anc1revv Avatar asked Aug 10 '16 14:08

anc1revv


1 Answers

df['purchase'] = 0
df.loc[df['dollars_spent'] > 0, 'purchase'] = 1

or

df['purchase'] = df['dollars_spent'].apply(lambda x: 1 if x > 0 else 0)
like image 153
SO44 Avatar answered Oct 21 '22 10:10

SO44