본문으로 바로가기

[Pandas] 데이터 선택하기 (loc / iloc)

category Develop/Pandas 2022. 3. 20. 01:02

 

 


 

 

데이터프레임에서 보통 iloc, loc를 사용하여 데이터를 선택합니다.
추가로 인덱싱과 슬라이싱을 사용하면 효과적입니다. 

 

[Python] 데이터 선택하기 (인덱싱 / 슬라이싱)

파이썬은 엑셀과 달리 여러가지 데이터 타입이 있습니다. 이 중 가장 많이 사용하는 데이터타입은 리스트입니다. List type 리스트 = [요소1, 요소2, ...] stock = ['삼성전자', 'LG전자'] 파이썬에서 리스

bohemihan.tistory.com

 

사용방법

데이터프레임.loc[행, 열]

iloc : 행번호(integer position)를 통해 값을 찾습니다.
loc  : 문자(labeling)을 통해 값을 찾습니다.

 

예제파일

sample.xlsx
0.10MB

 

## 환경설정

import pandas as pd
import numpy as np
## 엑셀파일 불러오기
df = pd.read_excel('sample.xlsx')
df

인덱스는 삭제 가능하지만, 행번호는 고유의 값으로 삭제되지 않습니다.

 

loc 

# 인덱싱을 이용한 행(row) 선택

df.loc[0]

 

# 슬라이싱을 이용한 행(row) 선택

df.loc[0:5]

 

# 인덱싱을 이용한 열(column) 선택

df.loc[:, ['거래일자']]

 

# loc은 라벨링을 통한 위치값을 가져온다. 슬라이싱(:)은 숫자를 위한 문법이다.

df.loc[:, ['거래일자':'거래금액']]

 

# loc 문법사용시, 반환할 열(column)을 적어준다.

df.loc[:, ['거래일자', '법정동', '전용면적', '아파트', '층', '거래금액']]

 

## 인덱싱을 통해 원하는 행, 열만 가져올 수도 있다.

df.loc[[1, 3, 1345], ['거래일자', '아파트', '거래금액']]

 

 

 

iloc

# 인덱싱을 이용한 행(row) 선택

df.iloc[0]

 

# 슬라이싱을 이용한 행(row) 선택

df.iloc[0:5]

 

# 인덱싱을 이용한 열(column) 선택

df.iloc[:, [0]]

 

# iloc은 integer position을 통한 위치값을 가져온다. 슬라이싱(:)은 숫자를 위한 문법이다.

df.iloc[:, 0:6]

 

## 인덱싱을 통해 원하는 행, 열만 가져올 수도 있다.

df.iloc[[1, 3, 5], [0, 3, 5]]