Python

[Pandas] loc vs iloc

주댕이 2024. 2. 2. 17:57

# loc, iloc

  • 데이터프레임에서 데이터를 색인 및 선택하는 데 사용된다.

 

# 차이점

  • Indexing Type:
    • 'loc': 라벨 기반의 인덱싱, 행과 열 라벨을 사용하여 데이터에 액세스
    • 'iloc': 정수 기반의 인덱싱, 정수 위치를 사용하여 데이터에 액세스
  • Usage:
    • 'loc': 라벨을 사용하여 행과 열을 선택, 행 및 열 라벨을 인수로 전달
    • 'iloc': 정수 위치를 사용하여 행과 열을 선택, 정수 인덱스를 인수로 전달
  • Input Format:
    • 'loc': 라벨 (리스트)
    • 'iloc': 정수 인덱스 (리스트)
  • Inclusive vs Exclusive:
    • 'loc': 지정된 라벨 범위의 시작과 끝 모두가 포함됨
    • 'iloc': 지정된 인덱스 범위의 끝이 제외됨
# sample DataFrame
data = {'A': [1, 2, 3], 'B': [4, 5, 6], 'C': [7, 8, 9]}
df = pd.DataFrame(data, index=['row1', 'row2', 'row3'])
df
#       A  B  C
# row1  1  4  7
# row2  2  5  8
# row3  3  6  9

# loc
print(df.loc['row1', 'A'])  # 라벨을 사용하여 특정 요소에 액세스

# iloc
print(df.iloc[0, 0])  # 정수 인덱스를 사용하여 특정 요소에 액세스

# loc 슬라이싱
print(df.loc['row1':'row2', 'A':'B'])  # 양쪽 끝 모두 포함
#       A  B
# row1  1  4
# row2  2  5

# iloc 슬라이싱
print(df.iloc[0:2, 0:2])  # 끝 제외
#       A  B
# row1  1  4
# row2  2  5

 

728x90