0Pricing
Data Science Academy · レッスン

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フィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. ワイド型とロング型、Tidyデータ
  2. クロス集計にpivot_tableを使う
  3. meltでロング型に変換する
  4. stack、unstack、MultiIndex
← Data Science Academyに戻る