w3resource

Pandas DataFrame: Select two specified columns from a given DataFrame


5. Selecting 'name' and 'score' Columns

Write a Pandas program to select the 'name' and 'score' columns from the following DataFrame.

Sample DataFrame:
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']

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("Select specific columns:")
print(df[['name', 'score']])

Sample Output:

Select specific columns:                                               
        name  score                                                    
a  Anastasia   12.5                                                    
b       Dima    9.0                                                    
c  Katherine   16.5                                                    
d      James    NaN                                                    
e      Emily    9.0                                                    
f    Michael   20.0                                                    
g    Matthew   14.5                                                    
h      Laura    NaN                                                    
i      Kevin    8.0                                                    
j      Jonas   19.0                                  

Explanation:

The above code creates a Pandas DataFrame ‘df’ with columns 'name', 'score', 'attempts', and 'qualify' using a Python dictionary ‘exam_data’ and index ‘labels’.

df[['name', 'score']]: This line prints a subset of the DataFrame that includes only the 'name' and 'score' columns using the double square bracket notation .


For more Practice: Solve these Related Problems:

  • Write a Pandas program to select the 'name' and 'score' columns from a DataFrame and then sort the resulting DataFrame by 'score' in descending order.
  • Write a Pandas program to extract 'name' and 'score' columns and then filter out rows where 'score' is below the average.
  • Write a Pandas program to select 'name' and 'score' columns and then create a new column that concatenates the name with its score.
  • Write a Pandas program to select 'name' and 'score' columns and then display only rows with duplicate names.

Go to:


Previous: Write a Pandas program to get the first 3 rows of a given DataFrame.
Next: Write a Pandas program to select the specified columns and rows from a given DataFrame.

Python-Pandas Code Editor:

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

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.



Follow us on Facebook and Twitter for latest update.