PANDAS : loc, iloc

zero__·2022년 4월 17일
0

python

목록 보기
4/6
post-thumbnail

LOC : 데이터프레임의 행(columns)과 열(rows)의 label 값, 즉 행과 열의 이름으로 접근
ILOC : 데이터프레임의 index값, 즉 slicing을 할 때의 위치를 기준으로 접근


dataframe 만들기

# 데이터프레임을 만들기 위해 판다스 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
fruitsdessertbeveragefood
0bananamacaroncoffeepizza
1strawberrycakebeerburger
2appledonutcokepasta

  • 현재의 index값은 0,1,2.
  • index 값을 바꾸고 싶을 땐, (데이터명).index = {(바꿀 index명)}으로 바꿔주기



LOC 알아보기

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

<example 1>

data.loc[0:2,'beverage':'food']
beveragefood
coffeepizza
beerburger
cokepasta

행의 이름이 '0'부터 '2'까지와 'beverage'열 부터 'food'열까지 출력되었다.

<example 2>

data.loc[1:2,'dessert':'beverage']
dessertbeverage
cakebeer
donutcoke

행의 이름이 '1'부터 '2'까지와 'dessert'열 부터 'beverage'열까지 출력되었다.

ILOC 알아보기

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

<exampe 1>

data.iloc[:, 2:]
beveragefood
coffeepizza
beerburger
cokepasta

0행 ~ 끝까지 슬라이싱, 2열부터 끝까지 슬라이싱된 값이 출력되었다.

<example 2>

data.iloc[1:3, 1:3]
dessertbeverage
cakebeer
donutcoke

1행부터 3행 슬라이싱, 1열부터 3열까지 슬라이싱 된 값이 출력되었다.


만약, 데이터프레임의 정보를 보고싶다면,

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

0 pizza
1 burger
2 pasta
Name: food, dtype: object

위와 같이 확인하면 된다.

profile
코린이 지로입니다.

0개의 댓글