PANDAS : loc, iloc


LOC:行と列の名前でデータフレームの行(列)と列(行)にアクセスするラベル値
ILOC:データフレームのインデックス値(つまりスライス時の位置)に応じてアクセス

データフレームの作成

# 데이터프레임을 만들기 위해 판다스 import
import pandas as pd

# 데이터 만들기
data = {'fruits' : ['banana', 'strawberry', 'apple'],
        'dessert' : ['macaron', 'cake', 'donut'],
        'beverage' : ['coffee', 'beer', 'coke'],
        'food' : ['pizza', 'burger', 'pasta']}

# 위의 데이터를 dataframe 형식으로 바꾸기
data = pd.DataFrame(data)
data
fruitsdessertbeveragefood0bananamacaroncoffeepizza1strawberrycakebeerburger2appledonutcokepasta
  • 現在のインデックス値は0、1、2です.
  • index値を変更する場合は、(데이터명).index = {(바꿀 index명)}に変更します.
  • LOCについて

    (데이터명).loc[(행의 이름) : (행의 이름), (열의 이름) : (열의 이름)]

    <example 1>

    data.loc[0:2,'beverage':'food']
    beveragefoodcoffeepizzabeerburgercokepasta
    行名は「0」から「2」、「飲料」列から「food」列に出力されます.

    <example 2>

    data.loc[1:2,'dessert':'beverage']
    dessertbeveragecakebeerdonutcoke
    行名は「1」から「2」、「デザート」列から「ドリンク」列に出力されます.

    ILOCについて

    (데이터명).iloc[(행의 위치 슬라이싱), (열의 위치 슬라이싱)]

    <exampe 1>

    data.iloc[:, 2:]
    beveragefoodcoffeepizzabeerburgercokepasta
    0行から末尾のスムージング、2列から末尾のスムージング値が出力されます.

    <example 2>

    data.iloc[1:3, 1:3]
    dessertbeveragecakebeerdonutcoke
    1行目から3行目までスムーズで、1列目から3列目までスムーズな値が出力されます.
    データフレームの情報を表示するには、
    (데이터명).iloc[(행의 위치 슬라이싱), (열의 위치)]
    data.iloc[0:, 3]
    0 pizza
    1 burger
    2 pasta
    Name: food, dtype: object
    上記のように確認すればよい.