Source From Here
Question
To filter a dataframe (df) by a single column, if we consider data with male and females we might:
Question 1
- But what if the data spanned multiple years and i wanted to only see males for 2014? In other languages I might do something like:
(
except I want to do this and get a subset of the original dataframe in a new dataframe object)
Question 2. How do I do this in a loop, and create a dataframe object for each unique sets of year and gender (i.e. a df for: 2013-Male, 2013-Female, 2014-Male, and 2014-Female
How-To
Using & operator, don't forget to wrap the sub-statements with ():
To store your dataframes in a dict using a for loop:
Question
To filter a dataframe (df) by a single column, if we consider data with male and females we might:
- males = df[df[Gender]=='Male']
- if A = "Male" and if B = "2014" then
Question 2. How do I do this in a loop, and create a dataframe object for each unique sets of year and gender (i.e. a df for: 2013-Male, 2013-Female, 2014-Male, and 2014-Female
How-To
Using & operator, don't forget to wrap the sub-statements with ():
- males = df[(df[Gender]=='Male') & (df[Year]==2014)]
- from collections import defaultdict
- dic={}
- for g in ['male', 'female']:
- dic[g]=defaultdict(dict)
- for y in [2013, 2014]:
- dic[g][y]=df[(df[Gender]==g) & (df[Year]==y)] #store the DataFrames to a dict of dict
沒有留言:
張貼留言