Python/Pandas

[Pandas] 데이터 접근 (at, loc)

죵욜이 2024. 12. 16. 00:38

1.  at  사용 (레이블 기반 접근)

  • 특정 행과 열을 지정하여 개별 값을 빠르게 접근
  • 단일 값만 조회 가능
DataFrame.at[row_label, column_label]
import pandas as pd

df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]})
print(df.at[1, 'B'])  # 1행 'B' 열의 값 반환

# 출력
# 5

2.  iat  사용 (정수 기반 위치 접근)

  • 정수 기반 위치를 사용해 빠르게 값에 접근
  • 단일 값만 조회 가능
DataFrame.iat[row_index, column_index]
print(df.iat[1,1])     # 1번째 행, 1번째 열 의 값 반환

# 출력
# 5

 


3.   loc  사용 (레이블 기반 접근)

  • 행과 열의 레이블(label)을 사용해 데이터에 접근
  • 단일 값, 특정 행/열, 또는 서브셋 조회 가능
DataFrame.loc[row_label, column_label]
# 특정 값
print(df.loc[1, 'B'])  # 1행 'B' 열의 값 반환

# 특정 행 전체
print(df.loc[1])  # 1행의 전체 값 반환

# 특정 열 전체
print(df.loc[:, 'A'])  # 'A' 열의 전체 값 반환
5

A    2
B    5
Name: 1, dtype: int64

0    1
1    2
2    3
Name: A, dtype: int64

4.  iloc  사용 (정수 기반 위치 접근)

  • 행과 열의 정수 인덱스를 사용해 데이터에 접근
DataFrame.iloc[row_index, column_index]
# 특정 값
print(df.iloc[1, 1])  # 1번째 행, 1번째 열의 값 반환

# 특정 행 전체
print(df.iloc[1])  # 1번째 행 전체 반환

# 특정 열 전체
print(df.iloc[:, 0])  # 첫 번째 열의 모든 값 반환
5

A    2
B    5
Name: 1, dtype: int64

0    1
1    2
2    3
Name: A, dtype: int64