반응형
Python 판다스 SQL 활용 데이터 추출 예제
파이썬의 데이터프레임에서 판다스의 확장 모듈인 pandasql의 sqldf 함수 기능을 통하여
SQL 쿼리로 원하는 데이터를 가져오는 예제를 다루어보겠습니다.
용이한 이해를 위하여 아래와 같은 간단한 데이터프레임 df를 가정해보겠습니다.
import pandas as pd
a = {'A' : [111, 222, 333, 444, 555, 666], 'B' : ['aaa', 'aaa', 'aaa', 'bbb', 'bbb', 'bbb']}
df = pd.DataFrame(a)
df
만일, pandasql 모듈이 설치되어 있지 않다면 아래 명령어로 설치를 진행해줍니다.
!pip install pandasql
반응형
모듈 설치가 완료되었다면 SQL 명령어를 통한 데이터 추출을 진행해보겠습니다.
쿼리를 문자열 형태로 적어 sqldf 함수 내에 input으로 넣어주시는 형태로 사용하시면 됩니다.
데이터프레임이 저장된 변수 이름, 열 이름 등을 쿼리 내에서 그대로 사용하실 수 있습니다.
예시로, B 열의 값이 'aaa'인 행들의 모든 열을 가져오는 쿼리를 적용한 코드는 아래와 같습니다.
from pandasql import sqldf
query = "SELECT * FROM df WHERE B = 'aaa'"
df1 = sqldf(query)
df1
그룹화를 적용한 복합적인 SQL 쿼리 등도 아래와 같이 sqldf 함수에서 적용이 가능합니다.
query = "SELECT B, SUM(A) as A_sum FROM df GROUP BY B"
df2 = sqldf(query)
df2
'Python > Pandas' 카테고리의 다른 글
[Pandas] 파이썬 데이터프레임 행/열 밀기(옮기기) 방법 정리 : df.shift() (5) | 2022.06.21 |
---|---|
[Pandas] 파이썬 데이터프레임 최대/최소값 위치 인덱스, 행 탐색 : idxmax(), idxmin() (0) | 2022.06.12 |
[Pandas] 파이썬 데이터프레임 고유값 목록, 개수 확인 : unique, nunique 함수(열 1개, 여러 개) (0) | 2022.06.07 |