Home > other >  Determine if Age is between two values
Determine if Age is between two values

Time:07-26

I am trying to determine what the ages in a dataframe are that fall between 0 and 10. I have written the following, but it only returns 'Yes' even though not all values fall between 1 and 10:

x = df['Age']

for i in x :
    if df['Age'].between(0, 10, inclusive=True).any():
        print('Yes')
    else:
        print('No')

I am doing this with the intention of creating a new column in the dataframe that will categorize people based on whether they fall into an age group, i.e., 0-10, 11-20, etc...

Thanks for any help!

CodePudding user response:

If you want to create a new column, assign to the column:

df['Child'] = df['Age'].between(0, 10, inclusive=True)

CodePudding user response:

with the intention of creating a new column in the dataframe that will categorize people based on whether they fall into an age group, i.e., 0-10, 11-20, etc...

Then pd.cut is what you are looking for:

pd.cut(df['Age'], list(range(0, df['Age'].max()   10, 10)))

For example:

df['Age'] = pd.Series([10, 7, 15, 24, 66, 43])

then the above gives you:

0     (0, 10]
1     (0, 10]
2    (10, 20]
3    (20, 30]
4    (60, 70]
5    (40, 50]
  • Related