본문 바로가기

BLOG/데이터분석

[데이터분석] 데이터프레임 : 하나의 데이터 다른 값으로 바꾸기 (2) - iloc

 

이전 글에서는 loc를 사용해서 데이터프레임에서 하나의 데이터를 다른 값으로 바꾸는 방법에 대해서 살펴보았는데요,

loc는 인덱스 이름을 이용해서 데이터를 변경하는 방법이었습니다.

 

이번에는 인덱스 번호를 이용하는 iloc를 사용해서 데이터를 변경하는 방법에 대해서 살펴보겠습니다

 

 

2. iloc[행번호][열번호] = '바꾸는 값'

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

 

	item	count	price
0	coffee	1	3000
1	juice	5	4000
2	ade	2	5000
3	milk	1	2000
4	tea	3	4000
5	water	2	1000

 

이 데이터프레임에서 'item'이 'juice'인 첫 번째 행에서 'count' 칼럼에 있는 데이터 '5'를 '3'으로 변경하고 싶다고 가정해보겠습니다.

 

그러기 위해선, 먼저 하나의 칼럼을 인덱스로 지정해야 하는데요, 'item' 칼럼을 인덱스로 지정해주겠습니다.

 

df.set_index('item', inplace=True)
display(df)

 

	count	price
item		
coffee	1	3000
juice	5	4000
ade	2	5000
milk	1	2000
tea	3	4000
water	2	1000

 

인덱스 지정 결과, 'item' 칼럼이 인덱스로 설정이 되었습니다. 이제 iloc를 이용해서 데이터 값을 변경하는데요, 

iloc[행번호][열번호] = '바꾸는 값' 과 같이 코드를 입력하도록 하겠습니다.

 

df.iloc[1][0] = 3
display(df)

 

	count	price
item		
coffee	1	3000
juice	3	4000
ade	2	5000
milk	1	2000
tea	3	4000
water	2	1000

 

값을 변경한 결과, 데이터가 잘 바뀌었음을 살펴볼 수 있습니다.

 

만약 인덱스 설정한 것을 해제하고 싶다면 다음과 같이 입력하면 됩니다.

 

df.reset_index()