Pandas DataFrame: Select the rows, the score is between 15 and 20 (inclusive)
Pandas: DataFrame Exercise-10 with Solution
Write a Pandas program to select the rows the score is between 15 and 20 (inclusive).
Sample DataFrame:
Sample Python dictionary data and list labels:
exam_data = {'name': ['Anastasia', 'Dima', 'Katherine', 'James', 'Emily', 'Michael', 'Matthew', 'Laura', 'Kevin', 'Jonas'],
'score': [12.5, 9, 16.5, np.nan, 9, 20, 14.5, np.nan, 8, 19],
'attempts': [1, 3, 2, 3, 2, 3, 1, 1, 2, 1],
'qualify': ['yes', 'no', 'yes', 'no', 'no', 'yes', 'yes', 'no', 'no', 'yes']}
labels = ['a', 'b', 'c', 'd', 'e', 'f', 'g', labels = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j']
Sample Solution :
Python Code :
import pandas as pd
import numpy as np
exam_data = {'name': ['Anastasia', 'Dima', 'Katherine', 'James', 'Emily', 'Michael', 'Matthew', 'Laura', 'Kevin', 'Jonas'],
'score': [12.5, 9, 16.5, np.nan, 9, 20, 14.5, np.nan, 8, 19],
'attempts': [1, 3, 2, 3, 2, 3, 1, 1, 2, 1],
'qualify': ['yes', 'no', 'yes', 'no', 'no', 'yes', 'yes', 'no', 'no', 'yes']}
labels = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j']
df = pd.DataFrame(exam_data , index=labels)
print("Rows where score between 15 and 20 (inclusive):")
print(df[df['score'].between(15, 20)])
Sample Output:
Rows where score between 15 and 20 (inclusive): attempts name qualify score c 2 Katherine yes 16.5 f 3 Michael yes 20.0 j 1 Jonas yes 19.0
Explanation:
The above Pandas code first creates a dataframe ‘df’ from the dictionary ‘exam_data’ using the list labels as index. It then filters the rows of ‘df’ that have a 'score' value between 15 and 20 (inclusive) using the between() method of a Pandas series.
Finally print() function prints the resulting filtered dataframe.
Python-Pandas Code Editor:
Have another way to solve this solution? Contribute your code (and comments) through Disqus.
Previous: Write a Pandas program to select the rows where the score is missing, i.e. is NaN.
Next: Write a Pandas program to select the rows where number of attempts in the examination is less than 2 and score greater than 15.
What is the difficulty level of this exercise?
Test your Programming skills with w3resource's quiz.
It will be nice if you may share this link in any developer community or anywhere else, from where other developers may find this content. Thanks.
https://198.211.115.131/python-exercises/pandas/python-pandas-data-frame-exercise-10.php
- Weekly Trends and Language Statistics
- Weekly Trends and Language Statistics