iloc() 메서드란?
Pandas에서 인덱스 위치를 기반으로 열의 특정 값을 선택해 하위 집합(subset)을 만들려면 iloc() 메서드를 사용합니다. iloc()는 정수 위치 기반 인덱싱(integer-location based indexing)을 지원하며, [행_범위, 열_범위] 형태로 슬라이싱할 수 있어 원하는 영역의 데이터를 간편하게 추출할 수 있습니다.
먼저 pandas 라이브러리를 임포트합니다.
import pandas as pdDataFrame 생성하기
제품 재고 정보를 담은 DataFrame을 생성합니다. 이 DataFrame은 Product, Opening_Stock, Closing_Stock 총 3개의 열로 구성되어 있습니다.
dataFrame = pd.DataFrame({
"Product": ["SmartTV", "ChromeCast", "Speaker", "Earphone"],
"Opening_Stock": [300, 700, 1200, 1500],
"Closing_Stock": [200, 500, 1000, 900]
})iloc()로 하위 집합 만들기
아래 코드는 처음 2개 행과 2개 열로 구성된 하위 집합을 iloc()로 추출합니다.
print("\niloc()로 추출한 하위 집합 = \n", dataFrame.iloc[0:2, 0:2])iloc[0:2, 0:2]는 0번째부터 1번째까지의 행(인덱스 2는 제외)과 0번째부터 1번째까지의 열을 선택한다는 의미입니다. 즉, 슬라이싱 범위의 끝 인덱스는 결과에 포함되지 않습니다.
전체 예제 코드
다음은 지금까지의 내용을 모두 포함한 완성된 코드입니다.
import pandas as pd
dataFrame = pd.DataFrame({
"Product": ["SmartTV", "ChromeCast", "Speaker", "Earphone"],
"Opening_Stock": [300, 700, 1200, 1500],
"Closing_Stock": [200, 500, 1000, 900]
})
print("DataFrame...\n", dataFrame)
print("\nProduct 열만 표시:\n", dataFrame['Product'])
# iloc()로 2개 열과 처음 2개 행으로 구성된 하위 집합 생성
print("\niloc()로 추출한 하위 집합 = \n", dataFrame.iloc[0:2, 0:2])출력 결과
위 코드를 실행하면 다음과 같은 결과가 출력됩니다.
DataFrame...
Closing_Stock Opening_Stock Product
0 200 300 SmartTV
1 500 700 ChromeCast
2 1000 1200 Speaker
3 900 1500 Earphone
Product 열만 표시:
0 SmartTV
1 ChromeCast
2 Speaker
3 Earphone
Name: Product, dtype: object
iloc()로 추출한 하위 집합 =
Closing_Stock Opening_Stock
0 200 300
1 500 700정리
iloc()는 정수 위치 기반 인덱싱을 통해 DataFrame의 특정 행과 열을 손쉽게 선택할 수 있는 강력한 도구입니다. 열 이름 등 라벨이 아닌 위치를 기준으로 데이터를 슬라이싱해야 할 때 특히 유용하며, 대규모 데이터에서 필요한 영역만 빠르게 추출하는 데 널리 활용됩니다.