LoginSignup
0
1

More than 1 year has passed since last update.

[python] pandasでloc, iloc, at, iat を用いた行、列の取得

Posted at

はじめに

pandas を用いてデータフレームを扱う場合、範囲を絞ることによって必要なデータのみを得ることが必要である
今回はloc, iloc, at, iatを用いて必要な範囲のみを指定し、範囲を絞ることを紹介する。

環境

window 10

import sys
print(sys.version)
print(pd.__version__)
3.7.8 (tags/v3.7.8:4b47a5b6ba, Jun 28 2020, 07:55:33) [MSC v.1916 32 bit (Intel)]
1.3.5

Code

import pandas as pd

df = pd.read_excel('./data.xlsx', index_col = 0)
df

image.png

loc, iloc

データフレームの行もしくは列を取得するためにはloc、ilocを利用する。

行名、列名を用いてるときは -> loc
行もしくは列のindexを用いるときは indexの"i"を用いて -> iloc

loc

'Kobayashi'の行を取得する

df.loc[['Kobayashi'],:]

image.png

'Point','ambition'の列を取得する

df.loc[:,['Point','ambition']]

image.png

'Kobayashi', 'Aizawa'の行、'Point','ambition'の列を取得する

df.loc[['Kobayashi', 'Aizawa'],['Point','ambition']]

image.png

iloc

1,2番目の行を取得する

df.iloc[[1,2],:]

image.png

1,2番目の列を使用する

df.iloc[:,[1,2]]

image.png

1以上の行、1,2の列を取得する

df.iloc[1:,[1,2]]

image.png

at, iat

at, iat は特定の行、列に属する値を取得する

at

行が'Tanaka', 列が'Point'の値を取得する

df.at['Tanaka','Point']

image.png

iat

行が1番目, 列が1番目の値を取得する

df.iat[1, 1]

image.png

まとめ

以上のように、必要に応じて範囲を絞ることによって必要とするデータのみを得ることができる

関連記事

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1