w3resource

Pandas: Convert the datatype of a given column(floats to ints)


Write a Pandas program to convert the datatype of a given column(floats to ints).

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.1, 16.5, 12.77, 9.21, 20.22, 14.5, 11.34, 8.8, 19.13],
        'attempts': [1, 3, 2, 3, 2, 3, 1, 1, 2, 1],
        'qualify': ['yes', 'no', 'yes', 'no', 'no', 'yes', 'yes', 'no', 'no', 'yes']}
df = pd.DataFrame(exam_data)
print("Original DataFrame:")
print(df)
print("\nData types of the columns of the said DataFrame:")
print(df.dtypes)
print("\nNow change the Data type of 'score' column from float to int:")
df.score = df.score.astype(int)
print(df)
print("\nData types of the columns of the DataFrame now:")
print(df.dtypes)

Sample Output:

Original DataFrame:
   attempts       name qualify  score
0         1  Anastasia     yes  12.50
1         3       Dima      no   9.10
2         2  Katherine     yes  16.50
3         3      James      no  12.77
4         2      Emily      no   9.21
5         3    Michael     yes  20.22
6         1    Matthew     yes  14.50
7         1      Laura      no  11.34
8         2      Kevin      no   8.80
9         1      Jonas     yes  19.13

Data types of the columns of the said DataFrame:
attempts      int64
name         object
qualify      object
score       float64
dtype: object

Now change the Data type of 'score' column from float to int:
   attempts       name qualify  score
0         1  Anastasia     yes     12
1         3       Dima      no      9
2         2  Katherine     yes     16
3         3      James      no     12
4         2      Emily      no      9
5         3    Michael     yes     20
6         1    Matthew     yes     14
7         1      Laura      no     11
8         2      Kevin      no      8
9         1      Jonas     yes     19

Data types of the columns of the DataFrame now:
attempts     int64
name        object
qualify     object
score        int64
dtype: object                

Python-Pandas Code Editor:

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

Previous: Write a Pandas program to sort a given DataFrame by two or more columns.
Next: Write a Pandas program to remove infinite values 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.