2016-10-27 1 views
1

SQL 데이터베이스에서 pandas 데이터 프레임으로 큰 관계를 읽는 동안 튜플 수를 정적으로 알 수 있고 I/O 비율을 추정 할 수 있기 때문에 진행률 표시 줄이 있으면 좋을 것입니다. tqdm 모듈에 함수 tqdm_pandas이있는 것으로 보입니다.이 함수는 열 위에 매핑 함수에 대한 진행 상황을보고하지만, 기본적으로 I/O 진행 상황을보고하는 효과가 없습니다. pd.read_sql으로 전화 할 때 tqdm을 사용하여 진행률 표시 줄을 만들 수 있습니까?tqdm을 데이터베이스 읽기와 함께 사용할 수 있습니까?

+1

'pandas'가 데이터베이스에 질의를 보내고 응답을 기다리기 때문에 두려워하지 않습니다. 전체 결과 집합이 도착할 때까지 중간 피드백은 없습니다. –

답변

4

는이 같은 일을 수행 할 chunksize 매개 변수를 사용할 수 있습니다

chunks = pd.read_sql('SELECT * FROM table', con=conn, chunksize=100) 

df = pd.DataFrame() 
for chunk in tqdm(chunks): 
    df = pd.concat([df, chunk]) 

나는이뿐만 아니라 메모리를 적게 사용하는 것입니다 생각합니다.

관련 문제