w3resource

Pandas DataFrame: Select two specified columns from a given DataFrame


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 .

Python-Pandas Code Editor:

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

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.

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.