pandas 실현 to데이터베이스 에 DataFrame 저장
데이터 분석 을 할 때 우 리 는 중간 결과 나 최종 결과 가 있 으 므 로 데이터베이스 에 저장 해 야 한다.또는 저 희 는 중간 결과 가 있 습 니 다.데이터베이스 에 넣 으 면 sql 작업 을 통 해 더욱 직관 적 이 고 처리 한 후에 결 과 를 DataFrame 에 읽 을 수 있 습 니 다.이 두 장면 은 DataFrame 의 to 를 사용 해 야 합 니 다.sql 작업.
구체 적 인 조작
데이터베이스 코드 연결
import pandas as pd
from sqlalchemy import create_engine
# default
engine = create_engine('mysql+pymysql://ledao:ledao123@localhost/pandas_learn')
original_data = pd.read_sql_table('cellfee', engine)
original_data
결 과 는 다음 과 같다.데 이 터 를 모 아 각 동네 의 전기 요금 을 Series 에 요구 하고 넣 은 다음 에 모든 동네 의 총 전기 요금 을 DataFrame 에 넣 고 마지막 으로 DataFrame 을 데이터베이스 에 저장 합 니 다.코드 는 다음 과 같 습 니 다.
all_cells = []
for k, v in original_data.groupby(by=['cityid', 'cellid']):
onecell = pd.Series(data=[k[0], k[1], v['fee'].sum()], index=['cityid', 'cellid', 'fee_sum'])
all_cells.append(onecell)
all_cells = pd.DataFrame(all_cells)
all_cells.to_sql(name='cells_fee', con=engine, chunksize=1000, if_exists='replace', index=None)
DataFrame 에 대한 tosql 함수,주의해 야 할 매개 변 수 는 코드 에 이미 쓰 여 있 습 니 다.그 중에서 가장 중요 한 것 은 chunksize,if 입 니 다.exists 와 index.chunksize 는 입고 크기 를 한 번 설정 할 수 있 습 니 다.if_exists 설정 데이터베이스 에 같은 이름 의 표 가 존재 하면 어떻게 합 니까?'replace'는 표 의 원래 데 이 터 를 삭제 하여 현재 데이터 에 넣 는 것 을 표시 합 니 다.'append'는 추 가 를 나타 낸다.'fail'은 이상 을 던 지고 작업 을 끝 냅 니 다.기본 값 은'fail'입 니 다.index=boolean 값 을 받 아들 여 DataFrame 의 index 도 표 의 열 로 저장 할 지 여 부 를 표시 합 니 다.
최종 저장 표 의 결 과 는 다음 그림 과 같다.
이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
【Pandas】DatetimeIndex란? no.29안녕하세요, 마유미입니다. Pandas에 대한 기사를 시리즈로 작성하고 있습니다. 이번은 제29회의 기사가 됩니다. 에서 Pandas의 시간에 대한 모듈에 대해 씁니다. 이번 기사에서는, 「DatetimeIndex」...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.