🗒️

【Python】DataFrame/Seriesからデータを取得

1 min read

ヘッダを除く先頭の5行を取得

df.head()

tail

末尾の5行を取得

df.tail()

1列をSeriesとして取得

sr = df['name']

# . + 列名でも取得可能
sr = df.name

複数列をDataFrameとして取得

df_2 = df[['name', 'age']]

行を指定して取得

# 2行目から4行目を取得
df_2 = df[1:3]

# 先頭からの場合は0を省略可能
# df[0:2]と同じ
df_2 = df[:2]

# 行名(インデックス)でも指定可能
df_2 = df['02':'05']

loc

インデックス名、カラム名を指定してデータを取得

# name列の全行を取得
sr = df.loc[:, 'name']

# name, age列の全行を取得
df2 = df.loc[:, ['name', 'age']]

# 1行目のname列を取得
sr = df.loc['0', 'name']

iloc

添字を指定してデータを取得

# 3行目の2列目を取得
item = df.iloc[2, 1]

# 行を取得
# どちらも同じだが、明示的に前者を使用した方がわかり良い。
sr = df.iloc[0, :]
sr = df.iloc[0]

values

行オブジェクト、列オブジェクトの値のみを取得する。

# 1行目の値を配列で取得
list = list(df.iloc[0, :].values)