Python

[Pandas] loc와 lioc의 차이

jsys 2024. 1. 5. 10:04

loc와 iloc는 Pandas 데이터프레임에서 특정 행 및 열을 선택하기 위한 메서드이다.

 

1. loc

loc는 location의 약어로, 행의 라벨(label) 값을 사용해 특정 행을 선택한다.

 

* 행 인덱스나 열 이름을 사용하여 특정 위치의 값을 선택한다.

 

* 기본값 : 데이터명.loc[ 행 조건식, '컬럼명']

       예시) df_KTX.loc[ 2, '호남선 KTX' ] : 행 인덱스가 2이고 열 이름이 '호남선 KTX'인 위치의 값을 선택함

 

* 슬라이싱이 가능하고, 라벨을 이용한 범위 선택이 가능하다.

 

 

 

2. iloc

iloc는 integer location의 약어로, 데이터 프레임의 행이나 컬럼의 인덱스(index) 값으로 접근한다.

 

* 행이나 칼럼의 순서를 나타내는 정수를 기반으로 행을 선택한다. 조건식 작성 불가능함.

 

* 행 인덱스나 열 이름이 아닌 정수 위치를 사용한다.

       예시) df.iloc[1, 2]은 1번째 행과 2번째 열의 값을 선택한다.

 

* 슬라이싱이 가능하고, 정수를 이용한 범위 선택이 가능하다.

 


 

* 즉, loc는 특정 조건식이나 column명을 작성하여 데이터에 접근하는 것이고, iloc는 숫자로 데이터가 있는 위치(순서)에 접근하는 것이다.

 

예시)

- df.loc[0] : 인덱스 이름이 0인 행 추출

- df.iloc[0] : 0번째 행에 있는 값 추출

 

 

적용 예시) 

 

- 데이터셋 불러오기

 

 

- tips.loc[0:2, : ] : 인덱스 이름이 0인 것부터 2인 것까지 전체 열 불러오기

 

 

- tips.iloc[0:3, :] : 0번째 행부터 2(3-1)번째 행의 전체 열 불러오기

 

 

* 주의할 점 : loc은 라벨을 사용하므로 라벨이 없는 정수형 인덱스의 경우 오류가 발생할 수 있음. 반면에 iloc은 정수 위치를 사용하므로 정수 인덱스가 있든 없든 상관없이 작동함

 

 
 
 

 

'Python' 카테고리의 다른 글

파이썬 변수명 규칙  (0) 2024.01.05
논리 연산자, 비교 연산자  (0) 2024.01.05
파이썬 산술연산(사칙연산,거듭제곱,과학적 표기법,진수)  (2) 2024.01.05
가상환경 정리  (0) 2024.01.03
시퀀스 자료형  (0) 2023.12.30