Contextes Principaux Select vs With_Columns
Glissez pour afficher le menu
Il est fréquent de devoir créer de nouvelles colonnes ou de modifier des colonnes existantes dans vos DataFrames Polars. Deux méthodes essentielles pour cela sont select et with_columns. Chacune a un objectif différent, et savoir quand utiliser l'une ou l'autre vous aidera à écrire un code plus clair et plus efficace. Imaginez que vous disposez d'un DataFrame games_df avec les colonnes positive_reviews, negative_reviews et total_reviews. Supposons que vous souhaitiez calculer le pourcentage d'avis positifs pour chaque jeu. Vous pouvez utiliser select pour créer un nouveau DataFrame ne contenant que la colonne calculée, ou utiliser with_columns pour ajouter de nouvelles colonnes au DataFrame existant.
Dans une leçon vidéo, vous verriez une démonstration des deux approches. D'abord, l'utilisation de select pour créer un DataFrame avec une nouvelle colonne appelée positive_pct, calculée comme 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)
Ensuite, vous verriez comment with_columns peut être utilisé pour ajouter une nouvelle colonne, telle que negative_pct, au DataFrame existant. Cette colonne est calculée comme 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)
Remarquer que select retourne un nouveau DataFrame contenant uniquement les colonnes spécifiées, tandis que with_columns modifie le DataFrame existant en ajoutant ou en mettant à jour des colonnes. Cette distinction est essentielle pour structurer les transformations de données.
Pour clarifier les différences entre select et with_columns, consulter le tableau comparatif suivant. Ce tableau présente les distinctions principales et fournit un exemple concis pour chaque méthode.
Lorsque vous utilisez select, vous créez un nouveau DataFrame qui contient uniquement les colonnes spécifiées. Utile pour se concentrer sur un sous-ensemble de colonnes ou de valeurs calculées. En revanche, with_columns est idéal pour ajouter de nouvelles colonnes ou mettre à jour des colonnes existantes dans le même DataFrame, tout en conservant toutes les autres colonnes.
Merci pour vos commentaires !
Demandez à l'IA
Demandez à l'IA
Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion