Please note, this is a STATIC archive of website www.w3resource.com from 19 Jul 2022, cach3.com does not collect or store any user information, there is no "phishing" involved.
w3resource

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

Pandas: DataFrame Exercise-51 with Solution

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.



Python: Tips of the Day

Find current directory and file's directory:

To get the full path to the directory a Python file is contained in, write this in that file:

import os 
dir_path = os.path.dirname(os.path.realpath(__file__))

(Note that the incantation above won't work if you've already used os.chdir() to change your current working directory, since the value of the __file__ constant is relative to the current working directory and is not changed by an os.chdir() call.)

To get the current working directory use

import os
cwd = os.getcwd()

Documentation references for the modules, constants and functions used above:

  • The os and os.path modules.
  • The __file__ constant
  • os.path.realpath(path) (returns "the canonical path of the specified filename, eliminating any symbolic links encountered in the path")
  • os.path.dirname(path) (returns "the directory name of pathname path")
  • os.getcwd() (returns "a string representing the current working directory")
  • os.chdir(path) ("change the current working directory to path")

Ref: https://bit.ly/3fy0R6m