Kärnsammanhang Select vs With_Columns
Svep för att visa menyn
Du kommer ofta att behöva skapa nya kolumner eller ändra befintliga i dina Polars DataFrames. Två viktiga metoder för detta är select och with_columns. Var och en har olika syften, och att veta när du ska använda vilken hjälper dig att skriva tydligare och mer effektiv kod. Föreställ dig att du har en DataFrame games_df med kolumnerna positive_reviews, negative_reviews och total_reviews. Anta att du vill beräkna procentandelen positiva recensioner för varje spel. Du kan använda select för att skapa en ny DataFrame med endast den beräknade kolumnen, eller använda with_columns för att lägga till nya kolumner i den befintliga DataFrame.
I en videolektion skulle du se en demonstration av båda tillvägagångssätten. Först används select för att skapa en DataFrame med en ny kolumn kallad positive_pct, beräknad som positive_reviews / total_reviews:
1234567891011121314151617181920212223import polars as pl # Sample DataFrame games_df = pl.DataFrame({ "game": ["Game A", "Game B"], "positive_reviews": [80, 50], "negative_reviews": [20, 50], "total_reviews": [100, 100] }) # Using select to create a new DataFrame with only the calculated column positive_pct_df = games_df.select( (pl.col("positive_reviews") / pl.col("total_reviews")).alias("positive_pct") ) print("Result of select (only positive_pct column):") print(positive_pct_df) # Using with_columns to add a new column to the existing DataFrame games_df = games_df.with_columns( (pl.col("negative_reviews") / pl.col("total_reviews")).alias("negative_pct") ) print("\nResult of with_columns (original columns plus negative_pct):") print(games_df)
Därefter skulle du se hur with_columns kan användas för att lägga till en ny kolumn, såsom negative_pct, i den befintliga DataFrame. Denna kolumn beräknas som negative_reviews / total_reviews:
12345# Using with_columns to add a new column to the existing DataFrame games_df = games_df.with_columns( (pl.col("negative_reviews") / pl.col("total_reviews")).alias("negative_pct") ) print(games_df)
Observera att select returnerar en ny DataFrame med endast de kolumner du anger, medan with_columns ändrar den befintliga DataFrame genom att lägga till eller uppdatera kolumner. Denna skillnad är viktig när du bestämmer hur du ska strukturera dina datatransformationer.
För att tydliggöra skillnaderna mellan select och with_columns, se följande jämförelsetabell. Tabellen visar de grundläggande skillnaderna och ger ett kortfattat exempel för varje metod.
När du använder select skapar du en ny DataFrame som endast innehåller de kolumner du anger. Detta är användbart när du vill fokusera på ett delmängd av kolumner eller beräknade värden. Däremot är with_columns idealiskt för att lägga till nya kolumner eller uppdatera befintliga inom samma DataFrame, samtidigt som alla andra kolumner bevaras.
Tack för dina kommentarer!
Fråga AI
Fråga AI
Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal