loc
명령어란?
loc
는 Pandas 라이브러리에서 데이터프레임의 행과 열을 라벨(이름)을 기준으로 선택할 때 사용하는 명령어입니다. 대괄호([]
)를 사용하여 특정 행이나 열을 선택할 수 있습니다.
1. 기본 문법
df.loc[row_label, column_label]
row_label
: 선택할 행의 라벨(이름)column_label
: 선택할 열의 라벨(이름)
2. 예제 코드
import pandas as pd
# 샘플 데이터프레임 생성
data = {
'이름': ['철수', '영희', '민수'],
'나이': [25, 30, 22],
'성별': ['남', '여', '남']
}
df = pd.DataFrame(data, index=['a', 'b', 'c'])
# 특정 행 선택 (라벨 기준)
print(df.loc['a']) # 'a' 행 선택
출력
이름 철수
나이 25
성별 남
Name: a, dtype: object
3. 여러 개의 행과 열 선택
(1) 여러 개의 행 선택
print(df.loc[['a', 'c']])
이름 나이 성별
a 철수 25 남
c 민수 22 남
(2) 특정 행에서 특정 열만 선택
print(df.loc['a', '이름']) # 'a' 행의 '이름' 열 선택
철수
(3) 여러 개의 행과 열 선택
print(df.loc[['a', 'b'], ['이름', '나이']])
이름 나이
a 철수 25
b 영희 30
4. 조건을 사용한 필터링
print(df.loc[df['나이'] > 23]) # 나이가 23보다 큰 행 선택
이름 나이 성별
a 철수 25 남
b 영희 30 여
5. iloc
과 차이점
loc
: 라벨(이름) 기준으로 행과 열을 선택iloc
: 인덱스(숫자) 기준으로 행과 열을 선택
df.loc['a', '이름'] # 라벨 기준 → '철수'
df.iloc[0, 0] # 인덱스 기준 → '철수'
정리
loc
는 행과 열의 이름(라벨) 기준으로 데이터를 선택할 때 사용iloc
은 숫자 인덱스 기준으로 선택할 때 사용- 여러 개의 행과 열을 선택하거나, 조건을 사용한 필터링도 가능