Downcasting numeric columns
Now that the ranges look safe, cast the numeric columns to smaller dtypes. Use Int32 for the integer columns and Float32 for the floats where lower precision is still good enough for summary stats.
The movies DataFrame is preloaded for you.
This exercise is part of the course
Scaling and Optimizing Data Pipelines with Polars
Exercise instructions
- Cast
vote_countandbudgettopl.Int32. - Cast
runtimeandvote_averagetopl.Float32.
Hands-on interactive exercise
Have a go at this exercise by completing this sample code.
movies_optimized = movies.with_columns(
# Integer columns to Int32
pl.col("vote_count").cast(pl.____),
pl.col("budget").cast(pl.____),
# Float columns to Float32
pl.col("runtime").cast(pl.____),
pl.col("vote_average").cast(pl.____),
)
result = movies_optimized.select(
"movie_title", "budget", "runtime", "vote_average", "vote_count"
).head(8)
print(result)