반응형
loc
와 iloc
는 파이썬의 데이터 분석 라이브러리인 Pandas에서 데이터프레임을 인덱싱하고 선택하는 데 사용되는 두 가지 주요 방법입니다. 이 두 메서드는 데이터를 선택하는 방법에서 차이가 있습니다.
loc
loc
는 라벨을 기반으로 데이터를 선택합니다. 이는 데이터프레임의 행 및 열 라벨을 사용하여 데이터를 선택할 수 있게 해줍니다.
문법:
df.loc[row_labels, column_labels]
예시:
import pandas as pd data = {'A': [1, 2, 3], 'B': [4, 5, 6], 'C': [7, 8, 9]} df = pd.DataFrame(data, index=['one', 'two', 'three']) # 'two' 라벨을 가진 행과 'B' 라벨을 가진 열 선택 result = df.loc['two', 'B'] # 5
iloc
iloc
는 정수 위치 기반 인덱싱을 사용하여 데이터를 선택합니다. 이는 데이터프레임의 행 및 열 위치(정수 인덱스)를 사용하여 데이터를 선택할 수 있게 해줍니다.
문법:
df.iloc[row_indices, column_indices]
예시:
import pandas as pd data = {'A': [1, 2, 3], 'B': [4, 5, 6], 'C': [7, 8, 9]} df = pd.DataFrame(data, index=['one', 'two', 'three']) # 두 번째 행과 두 번째 열 선택 (0 기반 인덱스) result = df.iloc[1, 1] # 5
주요 차이점
loc
는 라벨(이름) 기반 인덱싱을 사용합니다. 인덱스와 열 라벨을 이용해 데이터에 접근합니다.iloc
는 위치(정수) 기반 인덱싱을 사용합니다. 인덱스와 열 번호를 이용해 데이터에 접근합니다.
다음 예시를 통해 차이를 좀 더 명확히 이해할 수 있습니다:
import pandas as pd
data = {'A': [10, 20, 30], 'B': [40, 50, 60], 'C': [70, 80, 90]}
df = pd.DataFrame(data, index=['x', 'y', 'z'])
# loc를 사용하여 'y' 라벨을 가진 행과 'B' 라벨을 가진 열 선택
print(df.loc['y', 'B']) # 50
# iloc를 사용하여 두 번째 행과 두 번째 열 선택 (0 기반 인덱스)
print(df.iloc[1, 1]) # 50
이처럼 loc
와 iloc
는 서로 다른 인덱싱 방식을 사용하여 데이터프레임에서 데이터를 선택하는 기능을 제공합니다.
반응형
'🖥️ IT, 컴퓨터 > 🐍 Python' 카테고리의 다른 글
[Python] 판다스 groupby 함수 (0) | 2024.06.11 |
---|---|
[Python] Pandas DataFrame 열에 접근하는 두 가지 방법: 속성 접근과 딕셔너리 접근 (0) | 2024.06.11 |
[Python] 브이월드 API 이용해 지오코딩하기 ★★★★ (0) | 2024.05.26 |
[Python] HTML에서 특정 클래스 뒤에 있는 텍스트만 추출하기 (BeautifulSoup) (0) | 2024.04.25 |
[Mecab] 일본어 형태소 분석하기 :: Mecab (0) | 2024.04.03 |
댓글