"Pandas:DataFrame:다른 형태로 저장하고 불러오기"의 두 판 사이의 차이
둘러보기로 가기
검색하러 가기
(→mysql) |
|||
3번째 줄: | 3번째 줄: | ||
= mysql = | = mysql = | ||
+ | mariasql도 동일하다. | ||
=== sqlalchemy 사용 === | === sqlalchemy 사용 === | ||
+ | 이 방법은 굉장히 간단하다. 다만, 프라이머리키가 중복된 데이터가 있는 경우엔 적용할 수가 없다.(이런 경우엔 겹치는 데이터를 제거해준 후 넣어야 한다.) | ||
{| class="wikitable" | {| class="wikitable" | ||
!과정 | !과정 | ||
61번째 줄: | 63번째 줄: | ||
|한 번에 몇 개의 데이터를 처리할지. | |한 번에 몇 개의 데이터를 처리할지. | ||
|} | |} | ||
+ | |} | ||
+ | |||
+ | === 단순 입력 === | ||
+ | {| class="wikitable" | ||
+ | !과정 | ||
+ | !설명 | ||
+ | !방법 | ||
+ | |- | ||
+ | |라이브러리 설치 | ||
+ | | | ||
+ | |pip install pymysql | ||
+ | |- | ||
+ | |모듈 임포트 | ||
+ | | | ||
+ | |import pymysql | ||
+ | |- | ||
+ | |DB연결 | ||
+ | | | ||
+ | |DB = pymysql.connect(host='localhost', port=3306, db='db이름', user="root", passwd='비밀번호', charset='utf8') | ||
+ | |- | ||
+ | |커서생성 | ||
+ | |sql을 순회하는 커서 생성 | ||
+ | |cur = self.coinDB.cursor() | ||
+ | |- | ||
+ | |함수제작 | ||
+ | |함수로 만들어 처리하면 편할 듯하다. | ||
+ | |<syntaxhighlight lang="python"> | ||
+ | def df_to_db(df, db): | ||
+ | |||
+ | </syntaxhighlight> | ||
|} | |} | ||
[[분류:Pandas:DataFrame]] | [[분류:Pandas:DataFrame]] |
2021년 9월 23일 (목) 13:23 판
1 개요
데이터프레임을 사용했다면 그냥 여기에서 멈추는 것이 아니라, 다른 형태로 저장해두어야 추후에 불러와 사용할 수 있다.
2 mysql
mariasql도 동일하다.
2.1 sqlalchemy 사용
이 방법은 굉장히 간단하다. 다만, 프라이머리키가 중복된 데이터가 있는 경우엔 적용할 수가 없다.(이런 경우엔 겹치는 데이터를 제거해준 후 넣어야 한다.)
과정 | 설명 | 방법 | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
라이브러리 설치 | pip install sqlalchemy | |||||||||||||||
모듈 임포트 | from sqlalchemy import create_engine | |||||||||||||||
엔진 연결 | DB를 만든 후에 DB와 연결할 수 있다. | engine = create_engine("mysql+pymysql://{user}:{pw}@localhost/{db}"
.format(user="root", # sql 계정 입력.
pw="0000", # sql 비밀번호 입력.
db="dbname")) # 연결할 db이름 입력.
| ||||||||||||||
sql로 전환 | 이미 만들어진 테이블에 dataframe을 넣는다.
(역시, 테이블은 미리 준비되어야 한다.) 옵션은 아래에서 설명한다. |
data.to_sql('테이블명', con = engine, if_exists = 'append', chunksize = 1000)
| ||||||||||||||
옵션값 |
|
2.2 단순 입력
과정 | 설명 | 방법 |
---|---|---|
라이브러리 설치 | pip install pymysql | |
모듈 임포트 | import pymysql | |
DB연결 | DB = pymysql.connect(host='localhost', port=3306, db='db이름', user="root", passwd='비밀번호', charset='utf8') | |
커서생성 | sql을 순회하는 커서 생성 | cur = self.coinDB.cursor() |
함수제작 | 함수로 만들어 처리하면 편할 듯하다. | def df_to_db(df, db):
|