iloc (정수 위치 기반 인덱싱)
정수 기반으로 데이터를 선택한다.
리스트처럼 0부터 시작하는 정수 인덱스를 사용한다.
슬라이싱(:)을 활용하여 여러 개의 값을 선택할 수 있다.
loc (라벨 기반 인덱싱)
인덱스(라벨) 값을 기준으로 데이터를 선택한다.
숫자가 아닌 문자열 등 사용자 지정 인덱스를 사용한다.
범위를 지정할 때 끝값까지 포함한다. (iloc와 차이점)
인덱싱(indexing)과 슬라이싱(slicing)의 차이
pandas.Series나 pandas.DataFrame에서 데이터를 선택하는 방법은 크게 두 가지가 있다.
- 인덱싱: 하나의 값 또는 여러 개의 개별 값을 선택
- 슬라이싱: 연속된 범위의 값을 선택
import pandas as pd
data = [100, 200, 300]
index = ["월", "화", "수"]
s = pd.Series(data, index)
print(s.iloc[0]) # 100
print(s.iloc[1]) # 200
print(s.iloc[2]) # 300
print(s.iloc[3]) # IndexError
print(s.iloc[-1]) # 300
print(s.iloc[-2]) # 200
print(s.iloc[-3]) # 200
print(s.iloc[-4]) # IndexError
print(s.loc["월"]) # 100
print(s.loc["화"]) # 200
print(s.loc["수"]) # 300
# 인덱싱 (개별 값)
print(s.iloc[[0, 2]]) # 월 100 수 300
print(s.loc[["월", "수"]]) # 월 100 수 300
# 슬라이싱 (범위)
print(s.iloc[0:2]) # 월 100 화 200
print(s.loc["월":"화"]) # 월 100 화 200
'Python3' 카테고리의 다른 글
[파이썬] Serise(시리즈) 값 수정, 추가, 삭제 (0) | 2025.02.25 |
---|---|
[파이썬] Serise(시리즈) 생성 (0) | 2025.02.17 |
[파이썬] NumPy(넘파이) 연산 (0) | 2025.02.13 |
[파이썬] NumPy(넘파이) 기본 개념 (0) | 2025.02.13 |