フィルタリングと条件付きロジック
メニューを表示するにはスワイプしてください
データのフィルタリングは、データ整形の中核的な作業であり、特定のデータセットのサブセットに注目したい場合に特に重要です。Polars では、ブールマスクを使用して条件に一致する行のみを選択できます。たとえば、games_df という DataFrame に price 列があるとします。価格が 20 より大きいゲームをフィルタリングするには、次の方法を使用します。
1234567891011import polars as pl # Example DataFrame games_df = pl.DataFrame({ "name": ["Chess", "Monopoly", "Scrabble", "Catan", "Pandemic"], "price": [10, 25, 15, 35, 22] }) # Filter games with price > 20 filtered_df = games_df.filter(pl.col("price") > 20) print(filtered_df)
この例では、価格が 20 を超えるゲームのみが filtered_df に含まれます。
また、条件付きロジックを使用して、既存の列の値に基づいて新しい列を作成することもできます。pl.when().then().otherwise() 構文を利用することで、データを効率的に分類できます。たとえば、各ゲームを価格帯で分類したい場合、15 以下は "Budget"、16 から 30 までは "Standard"、30 を超える場合は "Premium" とすることができます。次のようにして DataFrame に price_tier 列を追加できます。
12345678910games_with_tier = games_df.with_columns( pl.when(pl.col("price") <= 15) .then("Budget") .when((pl.col("price") > 15) & (pl.col("price") <= 30)) .then("Standard") .otherwise("Premium") .alias("price_tier") ) print(games_with_tier)
この方法では、各ゲームを価格に基づいてティアに割り当てることで、データセットを簡単にセグメント化し、さらなる分析や可視化に役立てることができます。
すべて明確でしたか?
フィードバックありがとうございます!
セクション 1. 章 5
AIに質問する
AIに質問する
何でも質問するか、提案された質問の1つを試してチャットを始めてください
セクション 1. 章 5