본문 바로가기
카테고리 없음

PYTHON PANDAS iloc, loc 활용법

by 일단도전하는준 2024. 7. 28.
반응형

pandas 라이브러리의 loc와 iloc는 데이터프레임에서 데이터를 선택하고 조작하는 데 유용한 메서드입니다. loc는 레이블 기반 인덱싱을, iloc는 위치 기반 인덱싱을 사용합니다. 아래는 이 두 메서드를 사용하는 방법에 대한 예제 코드입니다.

데이터프레임 생성

먼저 예제 데이터프레임을 생성해보겠습니다.

import pandas as pd

# 예제 데이터프레임 생성
data = {
    'Name': ['John', 'Anna', 'Peter', 'Linda'],
    'Age': [28, 24, 35, 32],
    'City': ['New York', 'Paris', 'Berlin', 'London']
}
df = pd.DataFrame(data)
print("데이터프레임:\n", df)

 

    Name  Age      City
0   John   28  New York
1   Anna   24     Paris
2  Peter   35    Berlin
3  Linda   32    London

 

loc 사용 예제

loc는 레이블을 기반으로 데이터를 선택합니다.

 
# 특정 행 선택 (인덱스 1에 해당하는 행)
row_1 = df.loc[1]
print("\nloc[1] 사용:\n", row_1)

# 특정 행과 열 선택 (인덱스 1의 'Name' 열)
name_1 = df.loc[1, 'Name']
print("\nloc[1, 'Name'] 사용:\n", name_1)

# 조건을 만족하는 행 선택 (나이가 30보다 큰 행)
age_filter = df.loc[df['Age'] > 30]
print("\n나이가 30보다 큰 행:\n", age_filter)

# 여러 행과 여러 열 선택
subset = df.loc[[0, 2], ['Name', 'City']]
print("\n여러 행과 여러 열 선택:\n", subset)
출력:
loc[1] 사용:
 Name     Anna
Age        24
City    Paris
Name: 1, dtype: object

loc[1, 'Name'] 사용:
 Anna

나이가 30보다 큰 행:
     Name  Age    City
2  Peter   35  Berlin
3  Linda   32  London

여러 행과 여러 열 선택:
    Name      City
0   John  New York
2  Peter    Berlin

 

iloc 사용 예제

iloc는 위치를 기반으로 데이터를 선택합니다.

# 특정 행 선택 (두 번째 행)
row_1 = df.iloc[1]
print("\niloc[1] 사용:\n", row_1)

# 특정 행과 열 선택 (두 번째 행의 첫 번째 열)
name_1 = df.iloc[1, 0]
print("\niloc[1, 0] 사용:\n", name_1)

# 슬라이싱을 통한 행과 열 선택
subset = df.iloc[1:3, 0:2]
print("\n슬라이싱을 통한 행과 열 선택:\n", subset)

# 마지막 행 선택
last_row = df.iloc[-1]
print("\n마지막 행 선택:\n", last_row)

출력:

iloc[1] 사용:
 Name     Anna
Age        24
City    Paris
Name: 1, dtype: object

iloc[1, 0] 사용:
 Anna

슬라이싱을 통한 행과 열 선택:
    Name  Age
1   Anna   24
2  Peter   35

마지막 행 선택:
 Name     Linda
Age         32
City    London
Name: 3, dtype: object
 

요약

  • loc는 레이블(인덱스 이름 또는 열 이름)을 사용해 데이터를 선택합니다.
  • iloc는 정수 위치 인덱스를 사용해 데이터를 선택합니다.
반응형