I want to write a function that iterates through a dataframe, and takes each row's value as an argument. For example:
My pandas dataframe is as follows:
category sales met_sales
fruit 100 False
books 200 False
fruit 300 False
I have a dictionary: required_sales = {'fruit':150, 'books':200}
The output I want is this:
category sales met_sales
fruit 100 False
books 200 True
fruit 300 True
Is it correct to structure my function like that?
def met_sales(df, dict):
for row in df:
if row.sales > required_sales[row.category]:
#update met_sales column
row.met_sales = True
Then, I can simply call met_sales(df,required_sales)
to update my DataFrame.
Is this a good way of using self created functions to modify my DataFrame?