meltでロング型に変換する
列を行に戻す
「meltでロング型に変換する」はCoddyKit上の無料Data Science Academyレッスンです。 これはレッスン3/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはData Science Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Data Science Academyコースには全4レッスンが含まれています。
ピボットの反対
列が実際には値を表している場合、meltでそれらを行に展開し、ワイド形式のテーブルをTidyなロング形式に変換できます。🫠
meltで作られるもの
meltは2つの新しい列を作成します。1つは元の列名を保持し、もう1つはその値を保持します。各セルがそれぞれ1行になります。
pd.melt(df)一部の列を固定する
id_varsを使って、idや名前のようにそのまま残す列を指定します。これらの列の値は、新しいロング形式のテーブルで繰り返されます。
df.melt(id_vars='name')ロング化する列を選ぶ
value_varsを設定すると、特定の列だけをmeltできます。指定から外れ、かつid_varsにも含まれない列は、結果から単純に削除されます。
df.melt(id_vars='name',
value_vars=['Jan', 'Feb'])新しい列に名前を付ける
デフォルトの名前はvariableとvalueです。var_nameとvalue_nameを渡すと、monthやsalesのような意味のあるラベルを付けられます。
df.melt(var_name='month',
value_name='sales')プロット前にmeltする理由
seabornのようなライブラリは、ロング形式の入力を必要とします。簡単にmeltしておけば、1つの列を色やfacetに割り当て、複数の系列を一度にプロットできます。
meltしてからGroupByする
データをロング形式にすると、集計が簡単になります。meltの後、新しい変数列をgroupbyして、すべての系列を同じ方法で集計できます。
df.melt(id_vars='name').groupby('variable')meltとpivotは逆の操作
meltとpivotは互いの操作を取り消します。meltでワイド形式からロング形式に変換してから再びpivotすると、元のレイアウトを復元できます。
行数の急増に注意する
meltを行うと行数が増えます。5行に10列あるデータは、ロング形式では50行になります。行数が急速に増えることを想定しておきましょう。
パターンにはwide_to_long
sales_2021のように共通の接頭辞を持つ列には、wide_to_longが便利です。各列名から年を取り出しながらmeltできます。
きれいにmeltする手順
信頼できるパターンは、id列を指定し、値の列を指定して、出力に名前を付けることです。これにより、完全にTidyなロング形式のテーブルになります。
df.melt(id_vars='name',
var_name='month',
value_name='sales')確認問題
ワイド形式のテーブルをmeltする方法を確認しましょう。
まとめ:ロング形式に変換する
id_vars、value_vars、カスタム名を指定してmeltを使い、ワイド形式のデータをTidyにしました。次は、MultiIndexに対するstackとunstackです。🎯
よくある質問
「meltでロング型に変換する」レッスンは無料ですか?
はい。「meltでロング型に変換する」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Data Science Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Data Science Academyコースには全4レッスンが含まれています。
「meltでロング型に変換する」で何を学びますか?
列を行に戻す ブラウザで直接実行するハンズオンコードでData Science Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。
Data Science Academyを始めるのに経験は必要ですか?
事前経験は必要ありません。CoddyKitのData Science Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン3/4です。
「meltでロング型に変換する」レッスンにはどのくらい時間がかかりますか?
ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。
このData Science Academyレッスンでコードを書いて実行できますか?
はい。すべてのData Science Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。