목록판다스 (3)
차밍이
목차 데이터 분석을 위해 Data Preprocessing 과정을 진행하는 과정을 필수적으로 거치게됩니다. 데이터 가공을 진행하다보면 여러 Column들을 연산하여 수정하거나 새로운 데이터를 만드는 과정을 수행합니다. 이러한 과정에서 데이터량이 많아짐에 따라 연산 과정이 점점 늦어지는 현상이 발생합니다. for문 반복 혹은 itterator를 사용한 방법은 비효율적인 방법이다. 보통 apply & applymap 등을 많이 이용해서 코드를 작성합니다. 그럼에도 데이터가 많아지니, 더 빠르게 계산할 수 있는 방법은 Numpy를 최대한 활용기 + Vectorization입니다. 기본적으로 Numpy Array를 활용 단순한 연산도 Numpy Array를 활용하면 더욱 빨라집니다. 데이터프레임의 Series의..
목차 파이썬을 사용해 데이터 분석을 진행할 때, 필수적으로 사용하는 라이브러리가 있다면 판다스와 넘파이가 있다. 데이터를 많이 다루기 시작하면서 생각보다 DataFrame을 다루는 것이 느린 것 같다는 의문을 가지는 경우가 종종있다. 그래서 데이터프레임의 매소드인 value_counts와 unique에 대해서 과연 정말 빠른지 확인을 해보았다. 결론 먼저 애기하자면, 그냥 pandas사용하는 것이 맘편하다...ㅇㅅㅇ; 속도 측정은 쥬피터의 %%timeit을 사용해서 시간을 측정하였다. %timeit에 대해서 더 알아보려면 아래 링크를 참고하면 된다. [파이썬] %timeit으로 jupyter notebook에서 Cell 단위 코드 수행 시간 확인하기 [파이썬] %timeit으로 jupyter notebo..
데이터 구간별 범주화 pd.cut 데이터 값들을 특정 구간에 따라서 범주화할 때, 사용 범주를 나누고 라벨을 붙여서 범주형 데이터로 변환 가능 연속 데이터를 구간별로 범주화하는 함수 pd.cut 사용 방법 import pandas as pd ages = [0, 10, 15, 13, 21, 23, 37, 31, 43, 80, 61, 20, 41, 32, 100] bins = [0, 15, 25, 35, 60, 100] labels = ['어린이', '청년', '장년', '중년', '노년'] cuts = pd.cut(ages, bins, right=False, labels=labels) cuts >>> [어린이, 어린이, 청년, 어린이, 청년, ..., 노년, 청년, 중년, 장년, NaN] Length: 1..