Kernekontekster Select vs With_Columns
Stryg for at vise menuen
Du vil ofte have behov for at oprette nye kolonner eller ændre eksisterende i dine Polars DataFrames. To vigtige metoder til dette er select og with_columns. Hver metode har sit eget formål, og det at kende forskellen hjælper dig med at skrive mere overskuelig og effektiv kode. Forestil dig, at du har en games_df DataFrame med kolonnerne positive_reviews, negative_reviews og total_reviews. Antag, at du ønsker at beregne procentdelen af positive anmeldelser for hvert spil. Du kan bruge select til at oprette en ny DataFrame med kun den beregnede kolonne, eller bruge with_columns til at tilføje nye kolonner til den eksisterende DataFrame.
I en videolektion ville du se en demonstration af begge tilgange. Først ved at bruge select til at oprette en DataFrame med en ny kolonne kaldet positive_pct, beregnet 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)
Dernæst ville du se, hvordan with_columns kan bruges til at tilføje en ny kolonne, såsom negative_pct, til den eksisterende DataFrame. Denne kolonne beregnes 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)
Bemærk, at select returnerer en ny DataFrame med kun de kolonner, du angiver, mens with_columns ændrer den eksisterende DataFrame ved at tilføje eller opdatere kolonner. Denne forskel er vigtig, når du beslutter, hvordan dine datatransformationer skal struktureres.
For at tydeliggøre forskellene mellem select og with_columns, se følgende sammenligningstabel. Tabellen viser de centrale forskelle og giver et kort eksempel for hver metode.
Når du bruger select, opretter du en ny DataFrame, der kun indeholder de kolonner, du angiver. Dette er nyttigt, når du vil fokusere på et delmængde af kolonner eller beregnede værdier. Til sammenligning er with_columns ideel til at tilføje nye kolonner eller opdatere eksisterende i den samme DataFrame, hvor alle andre kolonner bevares.
Tak for dine kommentarer!
Spørg AI
Spørg AI
Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat