レイアウトの再構成
メニューを表示するにはスワイプしてください
データの形状を変換することは、特にカテゴリごとの値を比較したり、データを可視化のために準備したりする際に、効果的な分析のために不可欠です。Polars では、pivot および melt(アンピボット)操作を使用して、DataFrame をワイド形式とロング形式の間で変換できます。たとえば、games_df という DataFrame があり、game_title、developer、steam_deck_status というカラムがあるとします。各開発者が Steam Deck の互換性カテゴリごとにいくつのゲームを持っているかを確認したい場合があります。
このためには、データを pivot して、各行が developer、各列がユニークな steam_deck_status を表し、セルの値がゲーム数を示すようにします。その後、さらに処理や可視化のためにワイドテーブルを再びロング形式に unpivot(melt)することもできます。
123456789101112131415161718192021222324252627import polars as pl # Sample data games_df = pl.DataFrame({ "game_title": ["Game A", "Game B", "Game C", "Game D", "Game E", "Game F"], "developer": ["Dev1", "Dev2", "Dev1", "Dev2", "Dev3", "Dev1"], "steam_deck_status": ["Verified", "Playable", "Playable", "Verified", "Unsupported", "Playable"] }) # Pivot: count games per developer by steam_deck_status pivoted = games_df.pivot( values="game_title", index="developer", columns="steam_deck_status", aggregate_function="count" ) print("Pivoted (wide format):") print(pivoted) # Unpivot (melt): go back to long format melted = pivoted.melt( id_vars="developer", variable_name="steam_deck_status", value_name="game_count" ) print("\nUnpivoted (long format):") print(melted)
すべて明確でしたか?
フィードバックありがとうございます!
セクション 2. 章 5
AIに質問する
AIに質問する
何でも質問するか、提案された質問の1つを試してチャットを始めてください
セクション 2. 章 5