note.nkmk.me

pandas.DataFrameの行と列を入れ替える(転置)

Date: 2018-01-12 / tags: Python, pandas
このエントリーをはてなブックマークに追加

pandas.DataFrameの行と列を入れ替えたい(=転置させたい)場合は、属性Tかメソッドtranspose()を使う。

どちらの方法も元のオブジェクトは変更されず、行と列が入れ替わった(=転置された)新たなオブジェクトが返される。

例として、以下のデータを使用する。

import pandas as pd

df = pd.read_csv('data/src/sample_pandas_normal.csv').head(3)
print(df)
#       name  age state  point
# 0    Alice   24    NY     64
# 1      Bob   42    CA     92
# 2  Charlie   18    CA     70

サンプルのcsvファイルはコチラ。

スポンサーリンク

pandas.DataFrame.T

df_t = df.T
print(df_t)
#            0    1        2
# name   Alice  Bob  Charlie
# age       24   42       18
# state     NY   CA       CA
# point     64   92       70

pandas.DataFrame.transpose()

df_tr = df.transpose()
print(df_tr)
#            0    1        2
# name   Alice  Bob  Charlie
# age       24   42       18
# state     NY   CA       CA
# point     64   92       70

元のオブジェクト自体を変更したい場合

元のオブジェクト自体を変更するinplaceみたいな引数は用意されていない。新たなオブジェクトを生成したくない場合は元のオブジェクト自体に代入すればよい。

df = df.T
print(df)
#            0    1        2
# name   Alice  Bob  Charlie
# age       24   42       18
# state     NY   CA       CA
# point     64   92       70
スポンサーリンク
シェア
このエントリーをはてなブックマークに追加

関連カテゴリー

関連記事