Analysis

    [R] createWorkbook 함수를 이용해 데이터프레임 변수를 엑셀에 저장하기

    코드 1. Workbook 생성 및 엑셀 시트 추가하기. # createWorkbook # install.packages('openxlsx') library(openxlsx) example

    [Python] 병렬처리, Multiprocessing

    병렬처리의 필요성 요즘같이 대용량 데이터를 처리하는 과정에서 병렬처리 활용은 선택이 아닌 필수가 되어버렸다. 극단적으로 말하자면 코드를 어떻게 짜느냐에 따라 똑같은 작업이라도 1시간이 걸릴 수 있고, 단 1초 만에 완료될 수 도 있다. 코드를 돌려놓고 하염없이 기다리기보다 병렬처리를 배워서 적용하는 시간이 오히려 더 빠르다. 그리고 추후에도 잘 응용하여 사용함으로써 데이터 분석가의 역량을 키워 나갈 수 있다. 하드웨어가 심각하게 싸지지 않는 한 앞으로 더더욱 연산속도와 메모리 관리는 중요한 이슈가 될 것이라고 생각한다. Multiprocessing multiprocessing 모듈은 threading 모듈과 유사한 API를 사용하여 *프로세스 스포닝(spawning)을 지원하는 패키지이다. multipr..

    [Python] K-Fold 로 데이터 분할하기

    데이콘이나 캐글 같은 경진대회에서 어떤 예측값을 제출하느냐에 따라 순위가 몇 단계나 출렁이곤 한다. 그렇기 때문에 어떤 데이터에 대해서도 견고한 예측값을 제공하는 모델을 선택하는 것이 중요한 이슈라고 할 수 있다. 모델을 어떻게 학습하냐에 따라 예측값도 천차만별이다. 좋은 결과를 위해서는 과적합, 과소 적합된 모델보다 균형 있게 학습된 모델을 선택하는 것이 가장 중요할 것이다. 쉬운 이해를 돕기 위해 인간으로 비유하자면 현재의 고정된 관념을 너무 학습하여 미래의 현상에도 고정 관념에 사로잡힌 사람 - 과적합 현재도 잘 이해하지 못하고 있으며 미래의 현상도 잘 이해하지 못하는 사람 - 과소적합 현재도 잘 이해하며 미래의 현상도 잘 예측하는 사람 - 일반화 K-fold 교차검증을 통해 비교적 일반화(gene..

    [Python] Colab 에서 matplotlib 한글 폰트 정상 출력시키는 코드

    matplotlib를 통한 한글 정상 출력 방법 (in colab) Colab 상에서 matplotlib를 통한 시각화를 할 때 한글 폰트를 정상 출력하기 위한 방법을 두 가지로 설명드리겠습니다. 방법 1.과 방법 2.는 같은 방식이지만 차이점은 코드로 런타임 재시작을 수행하냐, 노트북의 도구 메뉴를 이용하여 런타임 재시작을 하냐의 차이입니다. 편하신 대로 사용하시면 되겠습니다. 저도 기존에는 방법 1.을 통해 한글 폰트를 설치하고 적용하였지만 방법 2.를 알고나서부터는 방법 2.로 한글 폰트를 적용해주고 있습니다. 방법 1. 설명 먼저 아래의 코드를 실행한 후, Notebook의 런타임 메뉴에서 런타임 다시 시작 클릭으로 런타임 재시작을 진행합니다. (런타임 다시 시작이라는 경고 문구가 떠도 예를 클릭..

    [Python] 모듈의 버전을 확인하는 습관

    필요성 데이터 분석 시, 잘 실행되던 코드가 오류로 실행이 되지 않는 경우가 종종 있다. 예측 결괏값이 가장 좋았던 코드로 점수를 복원하고자 할 때 문제가 생길 수 있다. 그렇기 때문에 그 당시의 분석 환경을 기록해두어야 할 필요가 있다고 생각한다. 최신 모듈일수록 버전이 중요 계속해서 발전해나가고 있는 최신 모듈의 경우는 비교적 급변하기 때문이다. (종종 버전 충돌로 실행이 안되면 검색해야 하는 번거로움이 발생) 습관 들이기 1) 모듈 버전 확인하기 구글링으로 애써 찾은 코드가 실행이 안된다면 버전 문제일 가능성이 크다. 내 코드의 모듈 버전은 버전 문제를 일으키지 않도록 잘 기억해두자. # 예시 import tensorflow as tf import tensorflow_addons as tfa imp..