ホームページ > バックエンド開発 > Python チュートリアル > Pandas の「melt()」関数はどのようにして表データを列から行に再構築できるのでしょうか?

Pandas の「melt()」関数はどのようにして表データを列から行に再構築できるのでしょうか?

Susan Sarandon
リリース: 2024-12-30 18:49:16
オリジナル
835 人が閲覧しました

How Can Pandas' `melt()` Function Restructure Tabular Data from Columns to Rows?

Pandas を使用して表形式データを再構成する: 列を行に変換する

さまざまな日付またはカテゴリの列に編成されたデータを扱うのは面倒な場合があります。 Pandas は、そのような列を読みやすい行に変換する強力なソリューションを提供します。この記事では、位置情報と複数の日付列を含む CSV を目的の形式に変換するという具体的な課題について説明します。

問題点:

次のように整理された情報を含むデータセットを考えてみましょう。場所。それぞれの列ヘッダーとして複数の日付が含まれます。目標は、各行が一意の場所、名前、日付、および対応する値を表す形式にデータを再構築することです。

Pandas ソリューション:

Pandas が提供するもの溶融物を使用してこの変換を達成する非常に効率的な方法function.

コード:

df.melt(id_vars=["location", "name"],
        var_name="Date",
        value_name="Value")
ログイン後にコピー

説明:

  • id_vars:変更されないままの列を次のように指定します。 rows.
  • var_name: 溶けた日付に新しい列名を割り当てます。
  • value_name: 元の日付を含む列の名前を指定します。

結果:

指定されたデータセットにメルト関数を適用すると、目的の出力が得られます:

location name Date Value
A "test" Jan-2010 12
B "foo" Jan-2010 18
A "test" Feb-2010 20
B "foo" Feb-2010 20
A "test" March-2010 30
B "foo" March-2010 25

この新しい配置場所、名前、およびデータによるデータの分析が容易になります。 date.

注:

古いバージョンの Pandas (0.20 以前) の場合は、次の代替アプローチを使用できます:

df2 = pd.melt(df,
                  id_vars=["location", "name"], 
                  var_name="Date",
                  value_name="Value")
df2 = df2.sort(["location", "name"])
ログイン後にコピー

以上がPandas の「melt()」関数はどのようにして表データを列から行に再構築できるのでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート