pandas dataframe에서 apply의 진척도 보기 (progress_apply())

저는 코딩할 때 웬만하면 tqdm 패키지로 진척도를 확인합니다. 그래야 마음이 편하거든요.😁 dataframe을 다루다 보면 전처리를 할 때 시간이 오래 걸리는 경우가 있습니다. 저는 apply 메소드를 자주 쓰는 편인데 그때마다 진척도가 보이지 않아 한없이 기다려야 했죠. 그러다 언젠가 해결방법을 찾았습니다. 사용법도 너무 쉬워서 앞으로는 자주 쓰게 될 것 같아요. 바로 tqdm을 이용해 apply의 progress bar가 보이게 설정할 수 있었습니다! 우선 필요한 패키지를 import 합니다. import pandas as pd from tqdm import tqdm tqdm.pandas() # tqdm의 pandas전용 메소드를 호출합니다. 저는 제가 가지고 있는 뉴스 데이터를 활용해보겠습니다. ..

python numpy - argsort() 정렬 전 인덱스 활용하기

파이썬으로 데이터를 다룰 때에 가장 많이 쓰는 패키지중 하나인 numpy에는 argsort()라는 유용한 메소드가 있습니다. argsort()는 아래와 같이 정렬되기 전의 인덱스를 리스트 형태로 반환합니다. import numpy as np array1 = np.array([1,0,9,3]) sort_indice = np.argsort(array1) print(sort_indice) 출력값 >>[1,0,3,2] 이를 이용해 데이터베이스에서 가져온 서로 다른 테이블의 값을 정렬할 수 있습니다. ndarray의 특성상 서로 다른 타입의 변수들은 하나의 array에 담지 못하기 때문에, 따로 불러온뒤 정렬을 해야합니다. name_array = np.array(['동혁', '유리', '진우', '태연', '동준..

Python Priority Queue(우선순위 큐) 객체 정렬하기

일반적으로 Queue는 FIFO 형식의 자료구조지만, Priority Queue는 들어간 순서에 상관없이 데이터의 크기에 따라 정렬됩니다. 따라서 heap구조와 비슷하다고 볼 수있습니다. 이를 파이썬으로 구현하려면 queue 혹은 heapq를 이용하면 되는데요. import queue q = queue.PriorityQueue() q.put(5) q.put(2) q.put(3) q.put(1) while not q.empty(): print(q.get()) #출력 1 2 3 5 위와같이 순서를 달리해도 정렬되서 출력이 됩니다. 그러나 파이썬 프로그래밍을 할 때에는 단순 숫자가 아닌 객체를 넣기도 하는데요. 아래와 같이 코드를 입력하고 실행하면 에러가 발생합니다. class Data: def __init_..