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.
Løsning
Takk for tilbakemeldingene dine!
single
Spør AI
Spør AI
Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår
Oppsummer dette kapittelet
Explain code
Explain why doesn't solve task
Awesome!
Completion rate improved to 3.33
Changing the Data Type
Sveip for å vise menyen
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.
Løsning
Takk for tilbakemeldingene dine!
single