우노
[Python] Pandas DataFrame으로 SQL 사용하기 본문
pandasql 란?
- Pandas DataFrame 기반의 SQL을 지원하는 위한 패키지입니다.
- sqlite의 SQL문법을 지원합니다.
- 원리는 다음과 같습니다.
- SQLAlchemy에서 sqlite의 메모리 DB를 한시적으로 생성합니다.
- python envrionment에서 locals()이나 globals()로 해당 dataframe을 찾아 메모리 DB에 테이블로 올립니다.
- SQL문으로 데이터를 추출합니다.
- 따라서, 해당 포스트에선 Pandas DataFrame으로 SQL을 사용하는 방법에 대해서 다뤄보겠습니다.
pandasql 설치
pip install -U pandasql
globals()로 환경 지정
from pandasql import sqldf
dfsql = lambda q: sqldf(q, globals())
예제
import pandas as pd
from pandasql import sqldf
# globals()로 환경 지정
dfsql = lambda q: sqldf(q, globals())
# csv 파일을 DataFrame으로 읽어오기
df = pd.read_csv('emp.csv')
# DataFrame을 대상으로 SQL 쿼리
print(dfsql("select * from df"))
참고
'Language > Python' 카테고리의 다른 글
[Python] defaultdict란? (0) | 2022.12.11 |
---|---|
[Python] RecursionError (0) | 2022.11.13 |
[Python] 문자열 정렬 (0) | 2022.10.03 |
[Python] Int를 Char로 변환 / Char를 Int로 변환 (0) | 2022.10.03 |
[Python] bisect란? (0) | 2022.09.18 |
Comments