본문 바로가기

BLOG/데이터분석

[데이터분석] 데이터 프레임 : 원하는 행 인덱싱 하기 - iloc

 

데이터 프레임을 다루다보면, 원하는 행만 추출하는 등 인덱싱을 해야 하는 경우가 있는데요, 인덱싱은 iloc 라는 모듈을 이용해서 할 수 있습니다.

 

- iloc[ ]  : 원하는 행 인덱싱

먼저, 아래와 같은 데이터프레임(df)이 있다고 가정해보겠습니다.

 

	temp	item	count	price	rating
0	hot	coffee	1	3000	4.5
1	ice	juice	5	4000	3.0
2	ice	ade	2	5000	4.0
3	hot	milk	4	2000	2.5
4	hot	tea	3	4000	3.0
5	ice	water	2	1000	4.5

 

위 데이터프레임에서 왼쪽을 보면 알 수 있듯이, 첫 번째 행의 인덱스가 0부터 시작합니다.

 

이제 여기서 인덱싱을 하려면 iloc[인덱스번호] 처럼 코드를 입력하면 되는데요,  첫 번째 행을 인덱싱 해보도록 하겠습니다.

 

df.iloc[0]

 

temp         hot
item      coffee
count          1
price       3000
rating       4.5
Name: 0, dtype: object

 

인덱싱 결과, 첫 번째 행에 대한 데이터가 칼럼과 함께 출력되었음을 볼 수 있습니다.

 

만약 네 번째 행을 인덱싱 하고 싶다면 네 번째 행의 인덱스는 3으로, df.iloc[3] 이라고 입력하면 된답니다.

 

이때 주의할 점은, iloc[ ] 안에 인덱스 정보를 입력할 때, 인덱스 이름이 아닌 행 번호를 입력해야 한다는 것입니다.

만약, 3번째 행의 인덱스 이름이 'item' 이라면 iloc['item'] 이 아닌 iloc[3] 이라고 입력해야 합니다. 반면, 인덱스 이름으로 행을 인덱싱 하는 함수는 loc[ ] 함수로, loc['item'] 이라고 입력해야 동일한 결과가 나오는데요, loc[ ] 함수에 대해선 다음 글에서 설명드리도록 하겠습니다.