ホームページ > バックエンド開発 > Python チュートリアル > Pandas でデータをワイド形式からロング形式に再形成するにはどうすればよいですか?

Pandas でデータをワイド形式からロング形式に再形成するにはどうすればよいですか?

DDD
リリース: 2024-11-16 14:57:03
オリジナル
174 人が閲覧しました

How to Reshape Data from Wide to Long Format in Pandas?

パンダでのワイドからロングへのデータの再形成

パンダでは、データフレームをワイド形式からロング形式に変換できます。これは、共有列と日付に基づいてデータフレームを別のデータフレームとマージする場合に便利です。

次のデータフレームを考えてみましょう:

        AA  BB  CC
date
05/03     1   2   3
06/03     4   5   6
07/03     7   8   9
08/03     5   7   1
ログイン後にコピー

このデータフレームを長い形式に変換するには、次のいずれかを使用します。 pandas.melt または pandas.DataFrame.melt.

df = pd.DataFrame({
    'date' : ['05/03', '06/03', '07/03', '08/03'],
    'AA' : [1, 4, 7, 5],
    'BB' : [2, 5, 8, 7],
    'CC' : [3, 6, 9, 1]
}).set_index('date')
ログイン後にコピー
To convert, reset the index and then melt:
ログイン後にコピー
df = df.reset_index()
pd.melt(df, id_vars='date', value_vars=['AA', 'BB', 'CC'])
ログイン後にコピー

または、.melt の後に .reset_index を使用して、value_vars.

dfm = df.melt(ignore_index=False).reset_index()
ログイン後にコピー

を指定する必要をなくします。結果のデータフレームは次のようになります:

     date variable  value
0   05/03       AA      1
1   06/03       AA      4
2   07/03       AA      7
3   08/03       AA      5
4   05/03       BB      2
5   06/03       BB      5
6   07/03       BB      8
7   08/03       BB      7
8   05/03       CC      3
9   06/03       CC      6
10  07/03       CC      9
11  08/03       CC      1
ログイン後にコピー

以上がPandas でデータをワイド形式からロング形式に再形成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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