Here are 2 ways to convert integers to strings in Pandas DataFrame:
(1) Using apply(str):
df["DataFrame Column"] = df["DataFrame Column"].apply(str)
(2) Using astype(str):
df["DataFrame Column"] = df["DataFrame Column"].astype(str)
Steps to Convert Integers to Strings in Pandas DataFrame
Step 1: Create a DataFrame with Integers
To start, create a DataFrame with integers.
For example, here is a DataFrame where the ‘price‘ column contains integers:
import pandas as pd
data = {"product": ["abc", "ddd", "xyz"], "price": [350, 370, 410]}
df = pd.DataFrame(data)
print(df)
print(df.dtypes)
As you can see, the data type of the ‘price‘ column is integer:
product price
0 abc 350
1 ddd 370
2 xyz 410
product object
price int64
dtype: object
Step 2: Convert the Integers to Strings in Pandas DataFrame
You can then convert the values under the ‘price‘ column from integers to strings using apply(str):
import pandas as pd
data = {"product": ["abc", "ddd", "xyz"], "price": [350, 370, 410]}
df = pd.DataFrame(data)
df["price"] = df["price"].apply(str)
print(df)
print(df.dtypes)
As you can see, the data type of the ‘price’ column is now object, which represents strings:
product price
0 abc 350
1 ddd 370
2 xyz 410
product object
price object
dtype: object
Similarly, you can convert the integers to strings using astype(str):
import pandas as pd
data = {"product": ["abc", "ddd", "xyz"], "price": [350, 370, 410]}
df = pd.DataFrame(data)
df["price"] = df["price"].astype(str)
print(df)
print(df.dtypes)
You’ll get the same results:
product price
0 abc 350
1 ddd 370
2 xyz 410
product object
price object
dtype: object
You may also want to check the following tutorials that review the steps to convert: