The astype()
method in Pandas is used to cast a pandas object to a specified data type.
Example
import pandas as pd
# sample DataFrame
data = {'A': ['1', '2', '3'],
'B': ['4.5', '5.7', '6.8']}
df = pd.DataFrame(data)
# convert entire DataFrame to float
df = df.astype(float)
print(df)
'''
Output
A B
0 1.0 4.5
1 2.0 5.7
2 3.0 6.8
'''
astype() Syntax
The syntax of the astype()
method in Pandas is:
df.astype(dtype, copy, errors)
astype() Argument
The astype()
method takes the following argument:
dtype
- data type or dictionary of column to data type to convert the dataframe intocopy
- whether to return a copyerrors
- controls raising exceptions on invalid data types
astype() Return Value
The astype()
method returns a DataFrame with data cast to specified data types.
Example 1: Convert Entire DataFrame to a Single Data Type
import pandas as pd
# sample DataFrame
data = {'A': ['1', '2', '3'],
'B': ['4.5', '5.7', '6.8']}
df = pd.DataFrame(data)
# convert entire DataFrame to float
df = df.astype(float)
print(df)
Output
A B 0 1.0 4.5 1 2.0 5.7 2 3.0 6.8
In this case, we converted the entire DataFrame df to have all its values as float values using the astype()
method.
Example 2: Convert Data Type of Single Column
import pandas as pd
# sample DataFrame
data = {'A': ['1', '2', '3'],
'B': ['4', '5', '6']}
df = pd.DataFrame(data)
# convert column B to float
converted_b = df['B'].astype(float)
print(converted_b)
Output
0 4.0 1 5.0 2 6.0 Name: B, dtype: float64
In this example, we converted the data type of column B
. Notice how the astype()
function only returns the converted column only.
Example 3: Convert Data Type of Multiple Columns
import pandas as pd
# sample DataFrame
data = {'A': ['1', '2', '3'],
'B': ['4', '5', '6']}
df = pd.DataFrame(data)
# convert data types of columns A and B
df = df.astype({'A': int, 'B': float})
print(df)
Output
A B 0 1 4.0 1 2 5.0 2 3 6.0
In this example, we passed a dictionary in the format {col_name: dtype, ...}
to the astype()
method to convert data types of multiple columns.