Changing the Data Type
You already know how to change the data type from string to number, for example. But let's take a closer look at this small but important task.
Let's start by changing the data type from string to datetime
. Most often, you will need this to work with time series. You can perform this operation using the .to_datetime()
method:
df['Date'] = pd.to_datetime(df['Date'], format='%Y%m%d')
To convert a string to a bool
- use the .map()
method on the column whose values you want to change:
df['C1'] = df['C1'].map({'yes': True, 'no': False})
For example, if you have a price column that looks like "$198,800" and you want to turn it into a float
- you should create custom transformation functions:
12345678910111213import pandas as pd import re # Create simple dataset df = pd.DataFrame(data={'Price':['$4,122.94', '$1,002.3']}) # Create a custom function to transform data # x - value from column def price2int(x): return float(re.sub(r'[\$\,]', '', x)) # Use custom transformation on a column df['Price'] = df['Price'].apply(price2int)
Swipe to start coding
Read the sales_data_types.csv
dataset and change the data type in the Active
column from str
to bool
.
Solution
Thanks for your feedback!
single
Ask AI
Ask AI
Ask anything or try one of the suggested questions to begin our chat
Awesome!
Completion rate improved to 3.33
Changing the Data Type
Swipe to show menu
You already know how to change the data type from string to number, for example. But let's take a closer look at this small but important task.
Let's start by changing the data type from string to datetime
. Most often, you will need this to work with time series. You can perform this operation using the .to_datetime()
method:
df['Date'] = pd.to_datetime(df['Date'], format='%Y%m%d')
To convert a string to a bool
- use the .map()
method on the column whose values you want to change:
df['C1'] = df['C1'].map({'yes': True, 'no': False})
For example, if you have a price column that looks like "$198,800" and you want to turn it into a float
- you should create custom transformation functions:
12345678910111213import pandas as pd import re # Create simple dataset df = pd.DataFrame(data={'Price':['$4,122.94', '$1,002.3']}) # Create a custom function to transform data # x - value from column def price2int(x): return float(re.sub(r'[\$\,]', '', x)) # Use custom transformation on a column df['Price'] = df['Price'].apply(price2int)
Swipe to start coding
Read the sales_data_types.csv
dataset and change the data type in the Active
column from str
to bool
.
Solution
Thanks for your feedback!
Awesome!
Completion rate improved to 3.33single