본문 바로가기
파이썬/파이썬 데이터 분석, 데이터처리

Pandas) 데이터 분석 6편, loc, iloc의 이해

by SeH_ 2023. 1. 15.
반응형

나도코딩 유튜브 + 외주 자료를 참고하여 만든 자료입니다. 


1. loc의 기능

import pandas as pd 


df = pd.read_excel('score.xlsx')
df.set_index('순번', inplace = True)

#loc
#이름을 이용해서 원하는 row에서 원하는 column 설정

print(df.loc[0])
# index가 0인 row 데이터를 가져옵니다.
print(df.loc[5])

loc는 해당 row의 값을 가져오는 기능을 합니다.

2. loc을 이용해서 특정 row에서 특정 column 지정하기

print(df.loc[0,'국어'])
print(df.loc[[1,5]],'영어')
print(df.loc[[1,5],['영어','수학']])
print(df.loc[1:5,'국어':'사회'])

- 0번째 학생의 국어 성적을 보여줘라! 

- 1,5 번째 학생의 영어 성적을 보여줘라!

- 1,5 번째 학생의 영어, 수학 성적을 보여줘라! 

- 1~5번 학생의 국어~사회 성적을 보여줘라!

 

3. iloc 기능

loc 같은 경우, index의 이름을 이용하여 row 데이터를 추출한 후, column 데이터의 이름을 이용하여 원하는 데이터를 추출하였습니다.

반대로 iloc 같은 경우, index의 위치를 이용하여 row 데이터를 추출한 후, column 데이터의 위치를 이용하여 원하는 데이터를 추출하는 기능을 합니다.

 

 

* 제가 앞선 예제 df.loc[0,'국어'] 같은 경우, index의 이름을 0이라고 지어놨기 때문에 iloc과 매우 유사한 기능을 하고 있습니다. 혼동을 안 해주셨으면 좋겠습니다. 0이란 이름을 가진 index을 추출한 겁니다

 

import pandas as pd 


df = pd.read_excel('score.xlsx')
df.set_index('순번', inplace = True)

#iloc :  위치를 이용하여 원하는 row에서 원하는 column을 선택

print(df.iloc[0]) # 0번째 위치의 데이터

print(df.iloc[0:5, 1]) # 학교 
print(df.iloc[4, 2])# 5번째 학생의 키 데이터
print(df.iloc[[0,1],2])

print(df.iloc[[0,1],[3,4]]) # 국어, 영어 점수 
print(df.iloc[0:5, 3:8])

* slicing은 리스트 형태로 변환하지 않아도 됩니다!!!!

 

댓글