🗃️ 프로그램
home
EveryData엑셀
home

데이터 선택하기2

Pandas의 loc - 직관적인 데이터 선택 방법

loc는 Pandas에서 데이터를 선택할 때 사용하는 가장 직관적인 방법입니다. 인덱스와 컬럼의 이름(라벨)을 사용하여 원하는 데이터를 정확하게 선택할 수 있습니다.

1. 단일 값 추출하기

특정 위치의 단일 값을 선택할 때는 인덱스명과 컬럼명을 지정합니다.
# 단일 값 선택 salesData = financeData.loc['매출액', 'Y2023'] # item()을 사용하여 스칼라 값으로 변환 salesValue = financeData.loc['매출액', 'Y2023'].item()
Python
복사

2. 복수 행/열 선택하기

여러 행이나 열을 선택할 때는 리스트를 사용합니다.
# 여러 행과 열 선택 profitData = financeData.loc[['매출액', '영업이익'], ['Y2022', 'Y2023']] # 여러 행, 모든 열 선택 allColumnsData = financeData.loc[['매출액', '영업이익'], :]
Python
복사

3. 범위 선택하기

콜론(:)을 사용하여 특정 범위의 데이터를 선택할 수 있습니다.
# 범위로 선택 rangeData = financeData.loc['매출액':'당기순이익', 'Y2020':'Y2023']
Python
복사

4. items() 메소드 활용하기

items() 메소드를 사용하면 데이터프레임을 순회하면서 컬럼명과 시리즈를 함께 얻을 수 있습니다.
# items()를 사용한 데이터 순회 for columnName, columnData in financeData.items(): print(f'컬럼명: {columnName}') print(f'데이터:\n{columnData}')
Python
복사

5. 조건부 선택과 불리언 인덱싱

불리언 마스크를 사용하여 조건에 맞는 데이터를 선택할 수 있습니다.
# 조건부 선택 positiveProfit = financeData.loc[financeData['Y2023'] > 0] # 다중 조건 적용 profitableQuarters = financeData.loc[ (financeData['Y2023'] > 0) & (financeData['Y2022'] > 0) ]
Python
복사

주의사항

loc는 항상 라벨(이름)을 기준으로 선택합니다.
item()은 단일 값을 추출할 때만 사용 가능합니다.
items()는 전체 데이터프레임을 순회할 때 유용합니다.
존재하지 않는 라벨을 사용하면 KeyError가 발생합니다.
불리언 인덱싱 시 & (and) 또는 | (or) 연산자를 사용할 때는 각 조건을 괄호로 묶어야 합니다.
이러한 다양한 선택 방법들을 조합하여 사용하면 효율적인 데이터 분석이 가능합니다. 특히 회계 데이터 분석에서는 특정 계정과 기간의 데이터를 자주 선택하게 되므로, loc의 활용은 필수적입니다.

실습노트북 및 엑셀

앞서 배운 데이터 선택 방법을 직접 실습해보겠습니다.
실습 예제
loc 사용시 기본 형식: df.loc[행 인덱스, 열 이름]
행/열 여러 개 선택: df.loc[['행1', '행2'], ['열1', '열2']]
모든 열 선택: df.loc[행 인덱스, :]
범위 선택: df.loc['시작행':'끝행', '시작열':'끝열']
조건부 선택: df.loc[df['열'] > 조건값]
결과 확인: 선택된 데이터 구조 검증
회계쟁이의Pandas #데이터선택2.xlsx
327.0KB

궁금한것은 언제든지 질문하세요!