Course Content
Advanced Techniques in pandas
Advanced Techniques in pandas
Dealing With Several Conditions
Sometimes we need several conditions to be applied. For instance, we want to extract data on hazardous asteroids with a small minimum diameter. But how do we write two conditions simultaneously? Look at the table:
The example was included to help you deal with this topic. This code extracts data on large and hazardous asteroids, where the minimum estimated diameter is larger than 3.5
kilometers and 'hazardous'
is True
.
import pandas as pd data = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/4bf24830-59ba-4418-969b-aaf8117d522e/planet', index_col = 0) data_extracted = data.loc[(data['est_diameter_min'] > 3.5) & (data['hazardous'] == True)] print(data_extracted)
In the output, you can see all the rows that satisfy these two conditions:
est_diameter_min
> 3.5;hazardous
== True.
Look at the following example with the or
statement. This code will extract data on extremely small or large asteroids with a minimum estimated diameter less than 0.0005
kilometers and a maximum estimated diameter larger than 20
kilometers:
import pandas as pd data = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/4bf24830-59ba-4418-969b-aaf8117d522e/planet', index_col = 0) data_extracted = data.loc[(data['est_diameter_min'] < 0.0005) | (data['est_diameter_max'] > 20)] print(data_extracted)
In the output, you can see all the rows that satisfy one of these two conditions:
est_diameter_min
< 0.0005;est_diameter_max
> 20.
Task
Your task here is to extract data on very bright and not hazardous asteroids. The code should satisfy two conditions:
'absolute_magnitude'
is larger than or equal to25
;'hazardous'
isFalse
.
After this, output the random 5
rows of the data_extracted
.
Thanks for your feedback!
Dealing With Several Conditions
Sometimes we need several conditions to be applied. For instance, we want to extract data on hazardous asteroids with a small minimum diameter. But how do we write two conditions simultaneously? Look at the table:
The example was included to help you deal with this topic. This code extracts data on large and hazardous asteroids, where the minimum estimated diameter is larger than 3.5
kilometers and 'hazardous'
is True
.
import pandas as pd data = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/4bf24830-59ba-4418-969b-aaf8117d522e/planet', index_col = 0) data_extracted = data.loc[(data['est_diameter_min'] > 3.5) & (data['hazardous'] == True)] print(data_extracted)
In the output, you can see all the rows that satisfy these two conditions:
est_diameter_min
> 3.5;hazardous
== True.
Look at the following example with the or
statement. This code will extract data on extremely small or large asteroids with a minimum estimated diameter less than 0.0005
kilometers and a maximum estimated diameter larger than 20
kilometers:
import pandas as pd data = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/4bf24830-59ba-4418-969b-aaf8117d522e/planet', index_col = 0) data_extracted = data.loc[(data['est_diameter_min'] < 0.0005) | (data['est_diameter_max'] > 20)] print(data_extracted)
In the output, you can see all the rows that satisfy one of these two conditions:
est_diameter_min
< 0.0005;est_diameter_max
> 20.
Task
Your task here is to extract data on very bright and not hazardous asteroids. The code should satisfy two conditions:
'absolute_magnitude'
is larger than or equal to25
;'hazardous'
isFalse
.
After this, output the random 5
rows of the data_extracted
.
Thanks for your feedback!
Dealing With Several Conditions
Sometimes we need several conditions to be applied. For instance, we want to extract data on hazardous asteroids with a small minimum diameter. But how do we write two conditions simultaneously? Look at the table:
The example was included to help you deal with this topic. This code extracts data on large and hazardous asteroids, where the minimum estimated diameter is larger than 3.5
kilometers and 'hazardous'
is True
.
import pandas as pd data = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/4bf24830-59ba-4418-969b-aaf8117d522e/planet', index_col = 0) data_extracted = data.loc[(data['est_diameter_min'] > 3.5) & (data['hazardous'] == True)] print(data_extracted)
In the output, you can see all the rows that satisfy these two conditions:
est_diameter_min
> 3.5;hazardous
== True.
Look at the following example with the or
statement. This code will extract data on extremely small or large asteroids with a minimum estimated diameter less than 0.0005
kilometers and a maximum estimated diameter larger than 20
kilometers:
import pandas as pd data = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/4bf24830-59ba-4418-969b-aaf8117d522e/planet', index_col = 0) data_extracted = data.loc[(data['est_diameter_min'] < 0.0005) | (data['est_diameter_max'] > 20)] print(data_extracted)
In the output, you can see all the rows that satisfy one of these two conditions:
est_diameter_min
< 0.0005;est_diameter_max
> 20.
Task
Your task here is to extract data on very bright and not hazardous asteroids. The code should satisfy two conditions:
'absolute_magnitude'
is larger than or equal to25
;'hazardous'
isFalse
.
After this, output the random 5
rows of the data_extracted
.
Thanks for your feedback!
Sometimes we need several conditions to be applied. For instance, we want to extract data on hazardous asteroids with a small minimum diameter. But how do we write two conditions simultaneously? Look at the table:
The example was included to help you deal with this topic. This code extracts data on large and hazardous asteroids, where the minimum estimated diameter is larger than 3.5
kilometers and 'hazardous'
is True
.
import pandas as pd data = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/4bf24830-59ba-4418-969b-aaf8117d522e/planet', index_col = 0) data_extracted = data.loc[(data['est_diameter_min'] > 3.5) & (data['hazardous'] == True)] print(data_extracted)
In the output, you can see all the rows that satisfy these two conditions:
est_diameter_min
> 3.5;hazardous
== True.
Look at the following example with the or
statement. This code will extract data on extremely small or large asteroids with a minimum estimated diameter less than 0.0005
kilometers and a maximum estimated diameter larger than 20
kilometers:
import pandas as pd data = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/4bf24830-59ba-4418-969b-aaf8117d522e/planet', index_col = 0) data_extracted = data.loc[(data['est_diameter_min'] < 0.0005) | (data['est_diameter_max'] > 20)] print(data_extracted)
In the output, you can see all the rows that satisfy one of these two conditions:
est_diameter_min
< 0.0005;est_diameter_max
> 20.
Task
Your task here is to extract data on very bright and not hazardous asteroids. The code should satisfy two conditions:
'absolute_magnitude'
is larger than or equal to25
;'hazardous'
isFalse
.
After this, output the random 5
rows of the data_extracted
.