In [1]:
import pandas as pd
import seaborn as sns

df = sns.load_dataset("titanic")
In [2]:
df.head()
Out[2]:
survived pclass sex age sibsp parch fare embarked class who adult_male deck embark_town alive alone
0 0 3 male 22.0 1 0 7.2500 S Third man True NaN Southampton no False
1 1 1 female 38.0 1 0 71.2833 C First woman False C Cherbourg yes False
2 1 3 female 26.0 0 0 7.9250 S Third woman False NaN Southampton yes True
3 1 1 female 35.0 1 0 53.1000 S First woman False C Southampton yes False
4 0 3 male 35.0 0 0 8.0500 S Third man True NaN Southampton no True
In [3]:
import numpy as np

If you are like me and have an Excel background you reliase how Important the if() formula is in Excel.

  • We can replicate the if Statement pandas using numpy which we need to import

Note Pandas is built on top of numpy so we can use numpy features with pandas when creating columns and passing in arrays as columns.

  • To replicate the if condition we will make use of numpy's where() method which behaves pretty much the same as Excel's IF() function.
  • it takes in a condition, seperated by a comma, Value for Trues, and value for False**.


Example: Take a look at the method below:

  1. We are using the numpy which has an allias of np. np.where()
  2. Our condition is df.age < 30, which returns True if the age is less than 30, and False otherwise.
  3. If the condition is True we get the value Young
  4. If the condition is False we get the values Not Young.
In [4]:
np.where(df.age < 30, "Young","Not Young")
Out[4]:
array(['Young', 'Not Young', 'Young', 'Not Young', 'Not Young',
       'Not Young', 'Not Young', 'Young', 'Young', 'Young', 'Young',
       'Not Young', 'Young', 'Not Young', 'Young', 'Not Young', 'Young',
       'Not Young', 'Not Young', 'Not Young', 'Not Young', 'Not Young',
       'Young', 'Young', 'Young', 'Not Young', 'Not Young', 'Young',
       'Not Young', 'Not Young', 'Not Young', 'Not Young', 'Not Young',
       'Not Young', 'Young', 'Not Young', 'Not Young', 'Young', 'Young',
       'Young', 'Not Young', 'Young', 'Not Young', 'Young', 'Young',
       'Not Young', 'Not Young', 'Not Young', 'Not Young', 'Young',
       'Young', 'Young', 'Not Young', 'Young', 'Not Young', 'Not Young',
       'Young', 'Young', 'Young', 'Young', 'Young', 'Not Young',
       'Not Young', 'Young', 'Not Young', 'Not Young', 'Young', 'Young',
       'Young', 'Young', 'Not Young', 'Young', 'Young', 'Young',
       'Not Young', 'Young', 'Not Young', 'Not Young', 'Young',
       'Not Young', 'Young', 'Young', 'Not Young', 'Young', 'Young',
       'Not Young', 'Young', 'Not Young', 'Young', 'Young', 'Young',
       'Young', 'Not Young', 'Young', 'Not Young', 'Not Young',
       'Not Young', 'Young', 'Not Young', 'Not Young', 'Young',
       'Not Young', 'Young', 'Not Young', 'Not Young', 'Young', 'Young',
       'Not Young', 'Not Young', 'Not Young', 'Not Young', 'Young',
       'Young', 'Young', 'Young', 'Young', 'Not Young', 'Young', 'Young',
       'Young', 'Young', 'Not Young', 'Not Young', 'Not Young',
       'Not Young', 'Young', 'Not Young', 'Young', 'Not Young',
       'Not Young', 'Not Young', 'Young', 'Not Young', 'Young', 'Young',
       'Young', 'Young', 'Not Young', 'Young', 'Young', 'Not Young',
       'Young', 'Young', 'Young', 'Young', 'Young', 'Young', 'Young',
       'Not Young', 'Not Young', 'Not Young', 'Young', 'Not Young',
       'Not Young', 'Not Young', 'Not Young', 'Young', 'Not Young',
       'Not Young', 'Not Young', 'Not Young', 'Not Young', 'Young',
       'Young', 'Young', 'Young', 'Not Young', 'Not Young', 'Not Young',
       'Young', 'Not Young', 'Young', 'Young', 'Young', 'Not Young',
       'Young', 'Not Young', 'Not Young', 'Not Young', 'Not Young',
       'Not Young', 'Not Young', 'Young', 'Young', 'Young', 'Not Young',
       'Not Young', 'Not Young', 'Not Young', 'Not Young', 'Not Young',
       'Young', 'Young', 'Young', 'Not Young', 'Not Young', 'Not Young',
       'Not Young', 'Not Young', 'Young', 'Young', 'Not Young',
       'Not Young', 'Not Young', 'Young', 'Young', 'Not Young', 'Young',
       'Young', 'Not Young', 'Young', 'Not Young', 'Young', 'Not Young',
       'Not Young', 'Not Young', 'Young', 'Not Young', 'Not Young',
       'Not Young', 'Young', 'Young', 'Not Young', 'Not Young',
       'Not Young', 'Young', 'Young', 'Young', 'Young', 'Not Young',
       'Not Young', 'Young', 'Not Young', 'Young', 'Young', 'Not Young',
       'Not Young', 'Young', 'Young', 'Not Young', 'Not Young',
       'Not Young', 'Young', 'Young', 'Not Young', 'Not Young', 'Young',
       'Young', 'Not Young', 'Not Young', 'Not Young', 'Young',
       'Not Young', 'Not Young', 'Not Young', 'Young', 'Not Young',
       'Not Young', 'Not Young', 'Not Young', 'Not Young', 'Young',
       'Not Young', 'Not Young', 'Not Young', 'Not Young', 'Young',
       'Young', 'Not Young', 'Not Young', 'Not Young', 'Young',
       'Not Young', 'Not Young', 'Not Young', 'Not Young', 'Not Young',
       'Not Young', 'Young', 'Not Young', 'Not Young', 'Young', 'Young',
       'Young', 'Not Young', 'Not Young', 'Not Young', 'Young',
       'Not Young', 'Young', 'Young', 'Young', 'Not Young', 'Young',
       'Young', 'Not Young', 'Young', 'Young', 'Not Young', 'Not Young',
       'Not Young', 'Not Young', 'Young', 'Not Young', 'Not Young',
       'Young', 'Not Young', 'Young', 'Not Young', 'Not Young', 'Young',
       'Young', 'Young', 'Young', 'Not Young', 'Young', 'Young',
       'Not Young', 'Not Young', 'Not Young', 'Young', 'Young',
       'Not Young', 'Young', 'Not Young', 'Not Young', 'Not Young',
       'Not Young', 'Not Young', 'Young', 'Not Young', 'Not Young',
       'Not Young', 'Young', 'Not Young', 'Not Young', 'Young',
       'Not Young', 'Not Young', 'Not Young', 'Young', 'Young', 'Young',
       'Young', 'Not Young', 'Young', 'Not Young', 'Not Young', 'Young',
       'Not Young', 'Young', 'Not Young', 'Young', 'Young', 'Not Young',
       'Young', 'Young', 'Not Young', 'Not Young', 'Not Young',
       'Not Young', 'Young', 'Not Young', 'Not Young', 'Not Young',
       'Not Young', 'Not Young', 'Not Young', 'Not Young', 'Young',
       'Young', 'Young', 'Young', 'Young', 'Young', 'Not Young', 'Young',
       'Young', 'Young', 'Young', 'Not Young', 'Young', 'Not Young',
       'Not Young', 'Not Young', 'Young', 'Young', 'Not Young',
       'Not Young', 'Young', 'Not Young', 'Young', 'Young', 'Young',
       'Young', 'Young', 'Not Young', 'Not Young', 'Young', 'Young',
       'Not Young', 'Young', 'Young', 'Young', 'Young', 'Not Young',
       'Not Young', 'Young', 'Young', 'Not Young', 'Not Young',
       'Not Young', 'Not Young', 'Not Young', 'Not Young', 'Not Young',
       'Not Young', 'Young', 'Not Young', 'Young', 'Not Young', 'Young',
       'Young', 'Young', 'Young', 'Not Young', 'Young', 'Young',
       'Not Young', 'Not Young', 'Young', 'Not Young', 'Not Young',
       'Young', 'Not Young', 'Young', 'Young', 'Young', 'Not Young',
       'Not Young', 'Not Young', 'Young', 'Young', 'Young', 'Not Young',
       'Young', 'Young', 'Not Young', 'Young', 'Not Young', 'Not Young',
       'Not Young', 'Not Young', 'Not Young', 'Not Young', 'Young',
       'Not Young', 'Not Young', 'Not Young', 'Not Young', 'Not Young',
       'Not Young', 'Not Young', 'Not Young', 'Not Young', 'Not Young',
       'Not Young', 'Not Young', 'Not Young', 'Young', 'Not Young',
       'Not Young', 'Not Young', 'Young', 'Young', 'Not Young',
       'Not Young', 'Young', 'Young', 'Young', 'Young', 'Not Young',
       'Not Young', 'Not Young', 'Young', 'Not Young', 'Not Young',
       'Not Young', 'Not Young', 'Young', 'Not Young', 'Young',
       'Not Young', 'Not Young', 'Young', 'Not Young', 'Not Young',
       'Not Young', 'Young', 'Young', 'Young', 'Young', 'Not Young',
       'Not Young', 'Young', 'Young', 'Not Young', 'Not Young', 'Young',
       'Young', 'Young', 'Not Young', 'Not Young', 'Not Young', 'Young',
       'Not Young', 'Not Young', 'Not Young', 'Not Young', 'Not Young',
       'Not Young', 'Young', 'Not Young', 'Not Young', 'Not Young',
       'Not Young', 'Not Young', 'Not Young', 'Not Young', 'Young',
       'Young', 'Not Young', 'Young', 'Not Young', 'Not Young', 'Young',
       'Not Young', 'Not Young', 'Not Young', 'Young', 'Not Young',
       'Young', 'Young', 'Not Young', 'Not Young', 'Not Young', 'Young',
       'Not Young', 'Not Young', 'Young', 'Young', 'Young', 'Not Young',
       'Young', 'Young', 'Not Young', 'Not Young', 'Not Young',
       'Not Young', 'Not Young', 'Not Young', 'Not Young', 'Young',
       'Not Young', 'Not Young', 'Young', 'Young', 'Young', 'Not Young',
       'Not Young', 'Not Young', 'Not Young', 'Not Young', 'Not Young',
       'Young', 'Young', 'Not Young', 'Not Young', 'Not Young',
       'Not Young', 'Young', 'Not Young', 'Not Young', 'Not Young',
       'Not Young', 'Young', 'Not Young', 'Not Young', 'Young',
       'Not Young', 'Not Young', 'Not Young', 'Not Young', 'Not Young',
       'Not Young', 'Not Young', 'Not Young', 'Not Young', 'Not Young',
       'Not Young', 'Young', 'Not Young', 'Not Young', 'Not Young',
       'Not Young', 'Not Young', 'Not Young', 'Young', 'Young',
       'Not Young', 'Not Young', 'Not Young', 'Not Young', 'Not Young',
       'Not Young', 'Young', 'Not Young', 'Young', 'Young', 'Young',
       'Young', 'Not Young', 'Young', 'Young', 'Young', 'Not Young',
       'Not Young', 'Young', 'Young', 'Not Young', 'Not Young',
       'Not Young', 'Not Young', 'Not Young', 'Young', 'Young',
       'Not Young', 'Not Young', 'Not Young', 'Not Young', 'Young',
       'Young', 'Young', 'Not Young', 'Young', 'Not Young', 'Young',
       'Not Young', 'Not Young', 'Young', 'Not Young', 'Young', 'Young',
       'Not Young', 'Young', 'Young', 'Not Young', 'Not Young', 'Young',
       'Not Young', 'Not Young', 'Not Young', 'Not Young', 'Not Young',
       'Young', 'Not Young', 'Young', 'Not Young', 'Not Young',
       'Not Young', 'Not Young', 'Not Young', 'Not Young', 'Not Young',
       'Not Young', 'Young', 'Young', 'Young', 'Not Young', 'Not Young',
       'Not Young', 'Young', 'Young', 'Young', 'Not Young', 'Young',
       'Young', 'Young', 'Young', 'Young', 'Not Young', 'Young',
       'Not Young', 'Young', 'Not Young', 'Not Young', 'Not Young',
       'Not Young', 'Not Young', 'Not Young', 'Young', 'Not Young',
       'Young', 'Young', 'Young', 'Not Young', 'Not Young', 'Not Young',
       'Young', 'Not Young', 'Young', 'Not Young', 'Not Young', 'Young',
       'Not Young', 'Young', 'Not Young', 'Young', 'Not Young',
       'Not Young', 'Young', 'Young', 'Not Young', 'Not Young', 'Young',
       'Young', 'Not Young', 'Not Young', 'Young', 'Young', 'Young',
       'Young', 'Not Young', 'Young', 'Young', 'Young', 'Not Young',
       'Not Young', 'Not Young', 'Not Young', 'Not Young', 'Not Young',
       'Young', 'Young', 'Not Young', 'Not Young', 'Young', 'Not Young',
       'Young', 'Not Young', 'Young', 'Young', 'Not Young', 'Young',
       'Not Young', 'Young', 'Young', 'Young', 'Not Young', 'Not Young',
       'Not Young', 'Not Young', 'Young', 'Not Young', 'Young',
       'Not Young', 'Not Young', 'Not Young', 'Not Young', 'Not Young',
       'Young', 'Not Young', 'Not Young', 'Not Young', 'Not Young',
       'Young', 'Not Young', 'Young', 'Not Young', 'Not Young', 'Young',
       'Young', 'Young', 'Not Young', 'Young', 'Young', 'Young', 'Young',
       'Young', 'Not Young', 'Not Young', 'Young', 'Not Young',
       'Not Young', 'Young', 'Not Young', 'Not Young', 'Not Young',
       'Not Young', 'Not Young', 'Not Young', 'Not Young', 'Young',
       'Young', 'Young', 'Not Young', 'Not Young', 'Young', 'Not Young',
       'Not Young', 'Young', 'Not Young', 'Not Young', 'Young',
       'Not Young', 'Not Young', 'Young', 'Not Young', 'Not Young',
       'Young', 'Not Young', 'Young', 'Not Young', 'Young', 'Young',
       'Not Young', 'Not Young', 'Young', 'Not Young', 'Not Young',
       'Young', 'Young', 'Not Young', 'Young', 'Young', 'Not Young',
       'Young', 'Not Young', 'Not Young', 'Not Young', 'Young', 'Young',
       'Not Young', 'Not Young', 'Young', 'Not Young', 'Not Young',
       'Not Young', 'Young', 'Not Young', 'Young', 'Not Young', 'Young',
       'Young', 'Not Young', 'Young', 'Not Young', 'Not Young', 'Young',
       'Not Young', 'Not Young', 'Young', 'Not Young', 'Not Young',
       'Young', 'Not Young', 'Young', 'Not Young', 'Not Young', 'Young',
       'Young', 'Not Young', 'Not Young', 'Not Young', 'Young', 'Young',
       'Young', 'Young', 'Not Young', 'Not Young', 'Young', 'Not Young',
       'Young', 'Young', 'Young', 'Not Young', 'Young', 'Young',
       'Not Young', 'Young', 'Not Young'], dtype='<U9')

As I said above, since Pandas is built on top of Numpy we can pass in numpy array to create a new Columns as shown below:

In [5]:
df["is Young"] = np.where(df.age < 30, "Young","Not Young")
In [6]:
df.head()
Out[6]:
survived pclass sex age sibsp parch fare embarked class who adult_male deck embark_town alive alone is Young
0 0 3 male 22.0 1 0 7.2500 S Third man True NaN Southampton no False Young
1 1 1 female 38.0 1 0 71.2833 C First woman False C Cherbourg yes False Not Young
2 1 3 female 26.0 0 0 7.9250 S Third woman False NaN Southampton yes True Young
3 1 1 female 35.0 1 0 53.1000 S First woman False C Southampton yes False Not Young
4 0 3 male 35.0 0 0 8.0500 S Third man True NaN Southampton no True Not Young

Using if with multiple conditions.

  • When we have multiple conditions, we can either use and or or with our conditions.
  • if we use and all of our conditions must be True for us to get a True value.
  • If we use or we get a True if any of the conditions are True.

Examples of multiple conditions with an And.

  • and is represented by & in pandas and numpy.
  • When using mutiple conditions we need to pass in each condition inside parentheses as shown below.
In [7]:
np.where((df.age >22) & (df.pclass <=3),"True","False")
Out[7]:
array(['False', 'True', 'True', 'True', 'True', 'False', 'True', 'False',
       'True', 'False', 'False', 'True', 'False', 'True', 'False', 'True',
       'False', 'False', 'True', 'False', 'True', 'True', 'False', 'True',
       'False', 'True', 'False', 'False', 'False', 'False', 'True',
       'False', 'False', 'True', 'True', 'True', 'False', 'False',
       'False', 'False', 'True', 'True', 'False', 'False', 'False',
       'False', 'False', 'False', 'False', 'False', 'False', 'False',
       'True', 'True', 'True', 'False', 'False', 'True', 'False', 'False',
       'False', 'True', 'True', 'False', 'False', 'False', 'True',
       'False', 'False', 'True', 'True', 'False', 'False', 'True', 'True',
       'True', 'False', 'False', 'False', 'True', 'False', 'True',
       'False', 'True', 'False', 'True', 'False', 'False', 'True', 'True',
       'True', 'False', 'True', 'True', 'True', 'False', 'True', 'True',
       'True', 'True', 'True', 'False', 'False', 'True', 'True', 'True',
       'False', 'False', 'True', 'False', 'True', 'False', 'False',
       'False', 'False', 'False', 'True', 'True', 'True', 'False',
       'False', 'False', 'True', 'True', 'True', 'False', 'False', 'True',
       'False', 'True', 'True', 'False', 'True', 'True', 'True', 'True',
       'False', 'True', 'False', 'True', 'False', 'False', 'True',
       'False', 'False', 'False', 'True', 'False', 'True', 'True', 'True',
       'False', 'True', 'True', 'False', 'True', 'False', 'True', 'False',
       'False', 'True', 'True', 'True', 'False', 'False', 'False',
       'False', 'True', 'False', 'True', 'True', 'False', 'False',
       'False', 'True', 'False', 'False', 'True', 'True', 'True', 'False',
       'False', 'False', 'False', 'False', 'False', 'False', 'True',
       'True', 'True', 'True', 'False', 'False', 'False', 'True', 'True',
       'False', 'True', 'False', 'True', 'True', 'False', 'True', 'True',
       'False', 'False', 'True', 'True', 'False', 'True', 'True', 'True',
       'False', 'True', 'False', 'True', 'True', 'True', 'True', 'True',
       'False', 'True', 'True', 'False', 'True', 'False', 'False',
       'False', 'False', 'False', 'True', 'True', 'True', 'False', 'True',
       'False', 'True', 'False', 'False', 'True', 'False', 'False',
       'True', 'False', 'True', 'True', 'True', 'True', 'True', 'True',
       'False', 'True', 'True', 'True', 'True', 'True', 'False', 'True',
       'True', 'True', 'False', 'False', 'True', 'True', 'False', 'True',
       'False', 'True', 'True', 'True', 'False', 'True', 'True', 'True',
       'False', 'True', 'True', 'False', 'False', 'True', 'True', 'True',
       'False', 'False', 'False', 'True', 'True', 'False', 'True',
       'False', 'True', 'False', 'True', 'True', 'True', 'False', 'True',
       'False', 'False', 'True', 'False', 'False', 'False', 'False',
       'False', 'False', 'False', 'False', 'True', 'True', 'True',
       'False', 'True', 'True', 'True', 'True', 'True', 'True', 'True',
       'True', 'False', 'True', 'True', 'False', 'False', 'True', 'True',
       'True', 'True', 'False', 'False', 'True', 'True', 'False', 'False',
       'False', 'True', 'True', 'True', 'True', 'False', 'True', 'True',
       'True', 'True', 'True', 'True', 'False', 'False', 'True', 'True',
       'False', 'False', 'True', 'False', 'True', 'False', 'True',
       'False', 'False', 'True', 'True', 'True', 'True', 'False', 'True',
       'True', 'False', 'False', 'True', 'True', 'False', 'False',
       'False', 'False', 'False', 'False', 'True', 'False', 'False',
       'True', 'False', 'True', 'True', 'False', 'False', 'False', 'True',
       'False', 'False', 'True', 'False', 'True', 'True', 'True', 'False',
       'True', 'True', 'True', 'True', 'True', 'True', 'False', 'True',
       'False', 'True', 'True', 'False', 'False', 'False', 'False',
       'False', 'True', 'False', 'True', 'False', 'True', 'False', 'True',
       'False', 'False', 'False', 'True', 'True', 'False', 'False',
       'True', 'False', 'False', 'True', 'True', 'False', 'True', 'False',
       'True', 'False', 'False', 'True', 'True', 'True', 'True', 'False',
       'True', 'True', 'False', 'False', 'False', 'True', 'False', 'True',
       'True', 'False', 'True', 'True', 'False', 'True', 'True', 'False',
       'True', 'False', 'True', 'True', 'True', 'True', 'False', 'True',
       'False', 'True', 'False', 'False', 'False', 'True', 'True', 'True',
       'False', 'False', 'True', 'True', 'False', 'False', 'False',
       'False', 'True', 'True', 'True', 'False', 'True', 'True', 'True',
       'False', 'False', 'False', 'True', 'True', 'False', 'False',
       'True', 'False', 'True', 'True', 'False', 'False', 'False', 'True',
       'False', 'False', 'True', 'False', 'True', 'True', 'True', 'False',
       'True', 'True', 'True', 'True', 'True', 'False', 'True', 'True',
       'True', 'False', 'False', 'True', 'False', 'True', 'True', 'False',
       'True', 'True', 'False', 'False', 'False', 'False', 'True',
       'False', 'True', 'True', 'False', 'False', 'True', 'False',
       'False', 'True', 'True', 'True', 'False', 'False', 'True', 'False',
       'False', 'True', 'False', 'False', 'False', 'True', 'True',
       'False', 'True', 'True', 'False', 'True', 'True', 'False', 'False',
       'True', 'False', 'True', 'False', 'True', 'True', 'True', 'True',
       'False', 'False', 'False', 'True', 'True', 'False', 'True', 'True',
       'True', 'True', 'True', 'False', 'False', 'True', 'True', 'False',
       'False', 'True', 'True', 'True', 'False', 'True', 'True', 'False',
       'True', 'False', 'True', 'True', 'False', 'False', 'True', 'True',
       'True', 'True', 'True', 'False', 'True', 'True', 'False', 'False',
       'False', 'True', 'True', 'True', 'True', 'False', 'True', 'True',
       'True', 'False', 'False', 'False', 'True', 'True', 'False', 'True',
       'False', 'True', 'True', 'True', 'False', 'False', 'True', 'True',
       'True', 'True', 'False', 'False', 'True', 'False', 'False',
       'False', 'True', 'False', 'True', 'False', 'True', 'False',
       'False', 'False', 'False', 'False', 'True', 'False', 'True',
       'True', 'True', 'True', 'True', 'True', 'True', 'False', 'True',
       'True', 'False', 'True', 'False', 'True', 'True', 'True', 'True',
       'False', 'False', 'True', 'False', 'True', 'True', 'False', 'True',
       'False', 'False', 'True', 'True', 'False', 'False', 'False',
       'False', 'True', 'False', 'False', 'True', 'True', 'True', 'True',
       'False', 'True', 'True', 'False', 'True', 'False', 'True', 'True',
       'True', 'True', 'True', 'False', 'False', 'True', 'False', 'True',
       'True', 'True', 'False', 'True', 'True', 'False', 'True', 'False',
       'False', 'True', 'True', 'True', 'False', 'True', 'False', 'True',
       'True', 'True', 'False', 'False', 'True', 'True', 'True', 'True',
       'True', 'False', 'False', 'False', 'True', 'False', 'True', 'True',
       'True', 'False', 'True', 'False', 'True', 'False', 'False', 'True',
       'True', 'True', 'False', 'True', 'False', 'True', 'True', 'False',
       'True', 'False', 'True', 'False', 'True', 'False', 'True', 'False',
       'True', 'True', 'True', 'True', 'False', 'True', 'False', 'False',
       'False', 'False', 'True', 'False', 'False', 'True', 'False',
       'True', 'True', 'False', 'False', 'False', 'True', 'False',
       'False', 'False', 'False', 'True', 'True', 'True', 'True', 'True',
       'True', 'True', 'True', 'False', 'False', 'True', 'True', 'True',
       'False', 'True', 'True', 'True', 'True', 'True', 'False', 'True',
       'False', 'True', 'True', 'True', 'False', 'True', 'True', 'True',
       'True', 'False', 'False', 'False', 'False', 'False', 'True',
       'False', 'False', 'False', 'True', 'False', 'True', 'False',
       'False', 'True', 'False', 'False', 'False', 'True', 'True',
       'False', 'True', 'False', 'True', 'True', 'False', 'False', 'True',
       'False', 'False', 'True', 'False', 'True', 'True', 'True', 'False',
       'True', 'False', 'True', 'False', 'True', 'True', 'True', 'True',
       'False', 'False', 'True', 'True', 'True', 'True', 'True', 'False',
       'False', 'False', 'False', 'True', 'True', 'True', 'False', 'True',
       'True', 'True', 'True', 'False', 'False', 'True', 'True'],
      dtype='<U5')
In [8]:
df["age and pclass test"] = np.where((df.age >22) & (df.pclass <=3),"True","False")

The and condition above, returns True if age column is more than 22 and the pclass is less than or equal to 3.

Note:

  • if you do not the values for True and False statements you will get the index of all the True Values.
  • the index can be used with the iloc ( Index Location) method to show only the True Values.
In [9]:
df.head()
Out[9]:
survived pclass sex age sibsp parch fare embarked class who adult_male deck embark_town alive alone is Young age and pclass test
0 0 3 male 22.0 1 0 7.2500 S Third man True NaN Southampton no False Young False
1 1 1 female 38.0 1 0 71.2833 C First woman False C Cherbourg yes False Not Young True
2 1 3 female 26.0 0 0 7.9250 S Third woman False NaN Southampton yes True Young True
3 1 1 female 35.0 1 0 53.1000 S First woman False C Southampton yes False Not Young True
4 0 3 male 35.0 0 0 8.0500 S Third man True NaN Southampton no True Not Young True
In [10]:
df.iloc[np.where((df.age >22) & (df.pclass <=3))]
Out[10]:
survived pclass sex age sibsp parch fare embarked class who adult_male deck embark_town alive alone is Young age and pclass test
1 1 1 female 38.0 1 0 71.2833 C First woman False C Cherbourg yes False Not Young True
2 1 3 female 26.0 0 0 7.9250 S Third woman False NaN Southampton yes True Young True
3 1 1 female 35.0 1 0 53.1000 S First woman False C Southampton yes False Not Young True
4 0 3 male 35.0 0 0 8.0500 S Third man True NaN Southampton no True Not Young True
6 0 1 male 54.0 0 0 51.8625 S First man True E Southampton no True Not Young True
8 1 3 female 27.0 0 2 11.1333 S Third woman False NaN Southampton yes False Young True
11 1 1 female 58.0 0 0 26.5500 S First woman False C Southampton yes True Not Young True
13 0 3 male 39.0 1 5 31.2750 S Third man True NaN Southampton no False Not Young True
15 1 2 female 55.0 0 0 16.0000 S Second woman False NaN Southampton yes True Not Young True
18 0 3 female 31.0 1 0 18.0000 S Third woman False NaN Southampton no False Not Young True
20 0 2 male 35.0 0 0 26.0000 S Second man True NaN Southampton no True Not Young True
21 1 2 male 34.0 0 0 13.0000 S Second man True D Southampton yes True Not Young True
23 1 1 male 28.0 0 0 35.5000 S First man True A Southampton yes True Young True
25 1 3 female 38.0 1 5 31.3875 S Third woman False NaN Southampton yes False Not Young True
30 0 1 male 40.0 0 0 27.7208 C First man True NaN Cherbourg no True Not Young True
33 0 2 male 66.0 0 0 10.5000 S Second man True NaN Southampton no True Not Young True
34 0 1 male 28.0 1 0 82.1708 C First man True NaN Cherbourg no False Young True
35 0 1 male 42.0 1 0 52.0000 S First man True NaN Southampton no False Not Young True
40 0 3 female 40.0 1 0 9.4750 S Third woman False NaN Southampton no False Not Young True
41 0 2 female 27.0 1 0 21.0000 S Second woman False NaN Southampton no False Young True
52 1 1 female 49.0 1 0 76.7292 C First woman False D Cherbourg yes False Not Young True
53 1 2 female 29.0 1 0 26.0000 S Second woman False NaN Southampton yes False Young True
54 0 1 male 65.0 0 1 61.9792 C First man True B Cherbourg no False Not Young True
57 0 3 male 28.5 0 0 7.2292 C Third man True NaN Cherbourg no True Young True
61 1 1 female 38.0 0 0 80.0000 NaN First woman False B NaN yes True Not Young True
62 0 1 male 45.0 1 0 83.4750 S First man True C Southampton no False Not Young True
66 1 2 female 29.0 0 0 10.5000 S Second woman False F Southampton yes True Young True
69 0 3 male 26.0 2 0 8.6625 S Third man True NaN Southampton no False Young True
70 0 2 male 32.0 0 0 10.5000 S Second man True NaN Southampton no True Not Young True
73 0 3 male 26.0 1 0 14.4542 C Third man True NaN Cherbourg no False Young True
... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...
842 1 1 female 30.0 0 0 31.0000 C First woman False NaN Cherbourg yes True Not Young True
843 0 3 male 34.5 0 0 6.4375 C Third man True NaN Cherbourg no True Not Young True
845 0 3 male 42.0 0 0 7.5500 S Third man True NaN Southampton no True Not Young True
847 0 3 male 35.0 0 0 7.8958 C Third man True NaN Cherbourg no True Not Young True
848 0 2 male 28.0 0 1 33.0000 S Second man True NaN Southampton no False Young True
851 0 3 male 74.0 0 0 7.7750 S Third man True NaN Southampton no True Not Young True
854 0 2 female 44.0 1 0 26.0000 S Second woman False NaN Southampton no False Not Young True
856 1 1 female 45.0 1 1 164.8667 S First woman False NaN Southampton yes False Not Young True
857 1 1 male 51.0 0 0 26.5500 S First man True E Southampton yes True Not Young True
858 1 3 female 24.0 0 3 19.2583 C Third woman False NaN Cherbourg yes False Young True
860 0 3 male 41.0 2 0 14.1083 S Third man True NaN Southampton no False Not Young True
862 1 1 female 48.0 0 0 25.9292 S First woman False D Southampton yes True Not Young True
864 0 2 male 24.0 0 0 13.0000 S Second man True NaN Southampton no True Young True
865 1 2 female 42.0 0 0 13.0000 S Second woman False NaN Southampton yes True Not Young True
866 1 2 female 27.0 1 0 13.8583 C Second woman False NaN Cherbourg yes False Young True
867 0 1 male 31.0 0 0 50.4958 S First man True A Southampton no True Not Young True
870 0 3 male 26.0 0 0 7.8958 S Third man True NaN Southampton no True Young True
871 1 1 female 47.0 1 1 52.5542 S First woman False D Southampton yes False Not Young True
872 0 1 male 33.0 0 0 5.0000 S First man True B Southampton no True Not Young True
873 0 3 male 47.0 0 0 9.0000 S Third man True NaN Southampton no True Not Young True
874 1 2 female 28.0 1 0 24.0000 C Second woman False NaN Cherbourg yes False Young True
879 1 1 female 56.0 0 1 83.1583 C First woman False C Cherbourg yes False Not Young True
880 1 2 female 25.0 0 1 26.0000 S Second woman False NaN Southampton yes False Young True
881 0 3 male 33.0 0 0 7.8958 S Third man True NaN Southampton no True Not Young True
883 0 2 male 28.0 0 0 10.5000 S Second man True NaN Southampton no True Young True
884 0 3 male 25.0 0 0 7.0500 S Third man True NaN Southampton no True Young True
885 0 3 female 39.0 0 5 29.1250 Q Third woman False NaN Queenstown no False Not Young True
886 0 2 male 27.0 0 0 13.0000 S Second man True NaN Southampton no True Young True
889 1 1 male 26.0 0 0 30.0000 C First man True C Cherbourg yes True Young True
890 0 3 male 32.0 0 0 7.7500 Q Third man True NaN Queenstown no True Not Young True

483 rows × 17 columns

Let's do an example of the Or statment.

  • Or is represented by the "|"(pipeline) symbol in pandas and numpy.
In [11]:
np.where((df.age >22) | (df.sex == "Female"),"True","False")
Out[11]:
array(['False', 'True', 'True', 'True', 'True', 'False', 'True', 'False',
       'True', 'False', 'False', 'True', 'False', 'True', 'False', 'True',
       'False', 'False', 'True', 'False', 'True', 'True', 'False', 'True',
       'False', 'True', 'False', 'False', 'False', 'False', 'True',
       'False', 'False', 'True', 'True', 'True', 'False', 'False',
       'False', 'False', 'True', 'True', 'False', 'False', 'False',
       'False', 'False', 'False', 'False', 'False', 'False', 'False',
       'True', 'True', 'True', 'False', 'False', 'True', 'False', 'False',
       'False', 'True', 'True', 'False', 'False', 'False', 'True',
       'False', 'False', 'True', 'True', 'False', 'False', 'True', 'True',
       'True', 'False', 'False', 'False', 'True', 'False', 'True',
       'False', 'True', 'False', 'True', 'False', 'False', 'True', 'True',
       'True', 'False', 'True', 'True', 'True', 'False', 'True', 'True',
       'True', 'True', 'True', 'False', 'False', 'True', 'True', 'True',
       'False', 'False', 'True', 'False', 'True', 'False', 'False',
       'False', 'False', 'False', 'True', 'True', 'True', 'False',
       'False', 'False', 'True', 'True', 'True', 'False', 'False', 'True',
       'False', 'True', 'True', 'False', 'True', 'True', 'True', 'True',
       'False', 'True', 'False', 'True', 'False', 'False', 'True',
       'False', 'False', 'False', 'True', 'False', 'True', 'True', 'True',
       'False', 'True', 'True', 'False', 'True', 'False', 'True', 'False',
       'False', 'True', 'True', 'True', 'False', 'False', 'False',
       'False', 'True', 'False', 'True', 'True', 'False', 'False',
       'False', 'True', 'False', 'False', 'True', 'True', 'True', 'False',
       'False', 'False', 'False', 'False', 'False', 'False', 'True',
       'True', 'True', 'True', 'False', 'False', 'False', 'True', 'True',
       'False', 'True', 'False', 'True', 'True', 'False', 'True', 'True',
       'False', 'False', 'True', 'True', 'False', 'True', 'True', 'True',
       'False', 'True', 'False', 'True', 'True', 'True', 'True', 'True',
       'False', 'True', 'True', 'False', 'True', 'False', 'False',
       'False', 'False', 'False', 'True', 'True', 'True', 'False', 'True',
       'False', 'True', 'False', 'False', 'True', 'False', 'False',
       'True', 'False', 'True', 'True', 'True', 'True', 'True', 'True',
       'False', 'True', 'True', 'True', 'True', 'True', 'False', 'True',
       'True', 'True', 'False', 'False', 'True', 'True', 'False', 'True',
       'False', 'True', 'True', 'True', 'False', 'True', 'True', 'True',
       'False', 'True', 'True', 'False', 'False', 'True', 'True', 'True',
       'False', 'False', 'False', 'True', 'True', 'False', 'True',
       'False', 'True', 'False', 'True', 'True', 'True', 'False', 'True',
       'False', 'False', 'True', 'False', 'False', 'False', 'False',
       'False', 'False', 'False', 'False', 'True', 'True', 'True',
       'False', 'True', 'True', 'True', 'True', 'True', 'True', 'True',
       'True', 'False', 'True', 'True', 'False', 'False', 'True', 'True',
       'True', 'True', 'False', 'False', 'True', 'True', 'False', 'False',
       'False', 'True', 'True', 'True', 'True', 'False', 'True', 'True',
       'True', 'True', 'True', 'True', 'False', 'False', 'True', 'True',
       'False', 'False', 'True', 'False', 'True', 'False', 'True',
       'False', 'False', 'True', 'True', 'True', 'True', 'False', 'True',
       'True', 'False', 'False', 'True', 'True', 'False', 'False',
       'False', 'False', 'False', 'False', 'True', 'False', 'False',
       'True', 'False', 'True', 'True', 'False', 'False', 'False', 'True',
       'False', 'False', 'True', 'False', 'True', 'True', 'True', 'False',
       'True', 'True', 'True', 'True', 'True', 'True', 'False', 'True',
       'False', 'True', 'True', 'False', 'False', 'False', 'False',
       'False', 'True', 'False', 'True', 'False', 'True', 'False', 'True',
       'False', 'False', 'False', 'True', 'True', 'False', 'False',
       'True', 'False', 'False', 'True', 'True', 'False', 'True', 'False',
       'True', 'False', 'False', 'True', 'True', 'True', 'True', 'False',
       'True', 'True', 'False', 'False', 'False', 'True', 'False', 'True',
       'True', 'False', 'True', 'True', 'False', 'True', 'True', 'False',
       'True', 'False', 'True', 'True', 'True', 'True', 'False', 'True',
       'False', 'True', 'False', 'False', 'False', 'True', 'True', 'True',
       'False', 'False', 'True', 'True', 'False', 'False', 'False',
       'False', 'True', 'True', 'True', 'False', 'True', 'True', 'True',
       'False', 'False', 'False', 'True', 'True', 'False', 'False',
       'True', 'False', 'True', 'True', 'False', 'False', 'False', 'True',
       'False', 'False', 'True', 'False', 'True', 'True', 'True', 'False',
       'True', 'True', 'True', 'True', 'True', 'False', 'True', 'True',
       'True', 'False', 'False', 'True', 'False', 'True', 'True', 'False',
       'True', 'True', 'False', 'False', 'False', 'False', 'True',
       'False', 'True', 'True', 'False', 'False', 'True', 'False',
       'False', 'True', 'True', 'True', 'False', 'False', 'True', 'False',
       'False', 'True', 'False', 'False', 'False', 'True', 'True',
       'False', 'True', 'True', 'False', 'True', 'True', 'False', 'False',
       'True', 'False', 'True', 'False', 'True', 'True', 'True', 'True',
       'False', 'False', 'False', 'True', 'True', 'False', 'True', 'True',
       'True', 'True', 'True', 'False', 'False', 'True', 'True', 'False',
       'False', 'True', 'True', 'True', 'False', 'True', 'True', 'False',
       'True', 'False', 'True', 'True', 'False', 'False', 'True', 'True',
       'True', 'True', 'True', 'False', 'True', 'True', 'False', 'False',
       'False', 'True', 'True', 'True', 'True', 'False', 'True', 'True',
       'True', 'False', 'False', 'False', 'True', 'True', 'False', 'True',
       'False', 'True', 'True', 'True', 'False', 'False', 'True', 'True',
       'True', 'True', 'False', 'False', 'True', 'False', 'False',
       'False', 'True', 'False', 'True', 'False', 'True', 'False',
       'False', 'False', 'False', 'False', 'True', 'False', 'True',
       'True', 'True', 'True', 'True', 'True', 'True', 'False', 'True',
       'True', 'False', 'True', 'False', 'True', 'True', 'True', 'True',
       'False', 'False', 'True', 'False', 'True', 'True', 'False', 'True',
       'False', 'False', 'True', 'True', 'False', 'False', 'False',
       'False', 'True', 'False', 'False', 'True', 'True', 'True', 'True',
       'False', 'True', 'True', 'False', 'True', 'False', 'True', 'True',
       'True', 'True', 'True', 'False', 'False', 'True', 'False', 'True',
       'True', 'True', 'False', 'True', 'True', 'False', 'True', 'False',
       'False', 'True', 'True', 'True', 'False', 'True', 'False', 'True',
       'True', 'True', 'False', 'False', 'True', 'True', 'True', 'True',
       'True', 'False', 'False', 'False', 'True', 'False', 'True', 'True',
       'True', 'False', 'True', 'False', 'True', 'False', 'False', 'True',
       'True', 'True', 'False', 'True', 'False', 'True', 'True', 'False',
       'True', 'False', 'True', 'False', 'True', 'False', 'True', 'False',
       'True', 'True', 'True', 'True', 'False', 'True', 'False', 'False',
       'False', 'False', 'True', 'False', 'False', 'True', 'False',
       'True', 'True', 'False', 'False', 'False', 'True', 'False',
       'False', 'False', 'False', 'True', 'True', 'True', 'True', 'True',
       'True', 'True', 'True', 'False', 'False', 'True', 'True', 'True',
       'False', 'True', 'True', 'True', 'True', 'True', 'False', 'True',
       'False', 'True', 'True', 'True', 'False', 'True', 'True', 'True',
       'True', 'False', 'False', 'False', 'False', 'False', 'True',
       'False', 'False', 'False', 'True', 'False', 'True', 'False',
       'False', 'True', 'False', 'False', 'False', 'True', 'True',
       'False', 'True', 'False', 'True', 'True', 'False', 'False', 'True',
       'False', 'False', 'True', 'False', 'True', 'True', 'True', 'False',
       'True', 'False', 'True', 'False', 'True', 'True', 'True', 'True',
       'False', 'False', 'True', 'True', 'True', 'True', 'True', 'False',
       'False', 'False', 'False', 'True', 'True', 'True', 'False', 'True',
       'True', 'True', 'True', 'False', 'False', 'True', 'True'],
      dtype='<U5')
In [12]:
df["female or under 22"] = np.where((df.age >22) | (df.sex == "Female"),"True","False")
In [13]:
df.head()
Out[13]:
survived pclass sex age sibsp parch fare embarked class who adult_male deck embark_town alive alone is Young age and pclass test female or under 22
0 0 3 male 22.0 1 0 7.2500 S Third man True NaN Southampton no False Young False False
1 1 1 female 38.0 1 0 71.2833 C First woman False C Cherbourg yes False Not Young True True
2 1 3 female 26.0 0 0 7.9250 S Third woman False NaN Southampton yes True Young True True
3 1 1 female 35.0 1 0 53.1000 S First woman False C Southampton yes False Not Young True True
4 0 3 male 35.0 0 0 8.0500 S Third man True NaN Southampton no True Not Young True True