w3resource

Pandas: Filter by combine 2 logical operators in a given dataframe

Pandas Filter: Exercise-19 with Solution

Write a Pandas program to filter all records where the average consumption of beverages per person from .5 to 2.50 in world alcohol consumption dataset.

Test Data:

   Year       WHO region                Country Beverage Types  Display Value
0  1986  Western Pacific               Viet Nam           Wine           0.00
1  1986         Americas                Uruguay          Other           0.50
2  1985           Africa           Cte d'Ivoire           Wine           1.62
3  1986         Americas               Colombia           Beer           4.27
4  1987         Americas  Saint Kitts and Nevis           Beer           1.98   

Sample Solution:

Python Code :

import pandas as pd
# World alcohol consumption data
w_a_con = pd.read_csv('world_alcohol.csv')
print("World alcohol consumption sample data:")
print(w_a_con.head())
print("\nFilter all records where the average consumption of beverages per person from .5 to 2.50.:")
print(w_a_con[(w_a_con['Display Value'] < 2.5) & (w_a_con['Display Value']>.5)].head())

Sample Output:

World alcohol consumption sample data:
   Year       WHO region      ...      Beverage Types Display Value
0  1986  Western Pacific      ...                Wine          0.00
1  1986         Americas      ...               Other          0.50
2  1985           Africa      ...                Wine          1.62
3  1986         Americas      ...                Beer          4.27
4  1987         Americas      ...                Beer          1.98

[5 rows x 5 columns]

Filter all records where the average consumption of beverages per person from .5 to 2.50.:
    Year WHO region      ...      Beverage Types Display Value
2   1985     Africa      ...                Wine          1.62
4   1987   Americas      ...                Beer          1.98
8   1986   Americas      ...             Spirits          1.55
11  1989   Americas      ...                Beer          0.62
17  1989     Africa      ...                Beer          2.23

[5 rows x 5 columns]

Click to download world_alcohol.csv

Python Code Editor:


Have another way to solve this solution? Contribute your code (and comments) through Disqus.

Previous: Write a Pandas program to filter those records which not appears in a given list from world alcohol consumption dataset.
Next: Write a Pandas program to find average consumption of wine per person greater than 2 in world alcohol consumption dataset.

What is the difficulty level of this exercise?

Test your Python skills with w3resource's quiz



Python: Tips of the Day

Trenary operator:

>>> "Python ROCK" if True else " I AM GRUMPY"
"Python ROCK"