[Python] Data Frame apply 함수 병렬처리 하는 방법
·
Programming/Python
파이썬에서 apply함수를 사용할 때 데이터의 용량이 크거나, 힘수가 복잡할 경우 수행시간이 매우 느리다는 단점이 있다. 그렇다면 여러개의 프로세스를 사용해서 처리하는 방법을 고려해야 한다. multiprocessing.cpu_count()를 통해 cpu 코어의 수를 가져와 함수를 생성 후 병렬처리를 할 수 있다. groupby를 사용하지 않고 단순 apply를 사용한다면 아래와 같은 함수를 만든 후 사용하면 된다. from multiprocessing import Pool import multiprocessing print('cpu counts:%d' % multiprocessing.cpu_count()) # cpu 최대 가용 수 확인 def parallelize_dataframe(df, func, n..
[Python] Numpy Float(소수) 출력 표현 설정하기
·
Programming/Python
간혹 numpy array를 출력하다보면 소수점이 길거나, 지수표현으로 되어있어 수치를 정확히 파악하기가 어려운 경우가 있다. 이 때, numpy의 printoption 설정을 변경하면 손쉽게 설정할 수 있다. 자세한 옵션들은 아래 링크 참조 numpy.org/doc/stable/reference/generated/numpy.set_printoptions.html numpy.set_printoptions — NumPy v1.20 Manual If True, always print floating point numbers using fixed point notation, in which case numbers equal to zero in the current precision will print as z..
[colab] Colab에서 데이터 불러오는 방법 (드라이브 마운트 사용)
·
AI Study/etc
Colab을 실행시키는 것 자체는 아래 포스팅을 참고 2020/12/28 - [Code/Python] - [Python] Colab이란? Colab 구글 드라이브에서 사용하기 [Python] Colab이란? Colab 구글 드라이브에서 사용하기 colab.research.google.com/notebooks/intro.ipynb# Google Colaboratory colab.research.google.com 데이터 분석을 하다보면(특히나 딥러닝을 사용할 때) GPU를 사용하거나 큰 메모리를 사용해야 하는 경우가 종.. everywhere-data.tistory.com 오늘 포스팅은 드라이브 마운팅을 성공한 상태에서 시작한다. 처음에 데이터를 불러오는 부분이 막막해서 헤맸었는데 의외로 간단하다. 1. ..
[Python] python 에서 이유를 알 수 없는 GPU 에러 정리(device-side assert triggered)
·
Programming/Python
cuda를 쓰는게 익숙치 않아서 그런지 에러가 뜨면 난감하고 어디를 수정해야 할 지 모를 때가 너무 많다... 에러문을 구글링하면서 찾다가 잘 정리된 블로그가 있어 남겨놓는다. 나중에 유용하게 자주 사용될 듯 하다. brstar96.github.io/shoveling/device_error_summary/ 이유를 알 수 없는 GPU 에러 정리(device-side assert, CUDA error, CUDNN_STATUS_NOT_INITIALIZED 등등…) brstar96.github.io
[논문 리뷰] 추천시스템을 위한 Wide & Deep Learning
·
AI Study/etc
해당 포스팅은 Wide & Deep Learning For Reccommender Systems 를 번역하고 주관적인 생각을 약간 섞어 리뷰한 것이다. 개요 비선형 변수 변환을 사용하는 일반화 선형모델은 대규모 회귀분석과 sparse(희소)한 input을 가진 분류문제에 대해 다양하게 사용된다. Wide Memorize에 효과적이다. (cross-product columns) 변수 간 상호작용을 파악하는 것에 효과적이며, 해석가능하다. But, 일반화(Generalization)하는데에는 더 많은 feature engineering이 필요하다. Deep 적은 feature engineering을 사용한다. sparse한 input 변수들을 저차원 embedding 시킴으로 변수간의 보이지 않는 조합을 일..
[tips] 아이패드를 노트북 듀얼모니터로 사용하기
·
생산성 & 자동화 툴/tips
회사에서는 커다란 모니터가 있어서 듀얼모니터로 잘 사용했지만, 재택을 하면 노트북 하나밖에 없어서 여간 불편한 것이 아니었다. 코딩하랴, 논문읽으랴, (채팅하랴...) 요즘은 재택을 많이 하니까, 더 불편한 것을 느끼고 있었는데 모니터를 구마해기엔 내 책상의 크기가 그리 넉넉하지 않아 아이패드를 듀얼모니터로 사용할 수 있는 방법이 없을까 싶어서 찾아봤다. 역시 이런 생각을 가진 사람은 나 혼자가 아니라는 생각을 다시 하면서 ㅋㅋㅋㅋ방법을 찾아냈다. 바로 splashtop wired xdisplay HD 어플이다. 아이패드를 듀얼모니터로 사용할 때 보통 듀엣을 사용하는 사람들도 있는데, 그 어플은 유료 계정이라서 뭔가 구매하기 아까운 느낌이 살짝 들었고, 해당 어플은 무료이면서, 안드로이드와 애플이 호환되..
[Python] pandas - DataFrame/Series 에서 순위 구하는 함수 rank()
·
Programming/Python
데이터 분석을 처리하다보면 정렬을 하는 경우도 필요하고, 정렬에 대한 그룹별 순위를 구하는 것 또한 필요하다. 그럴때 자주 사용되는 함수가 바로 rank() 함수이다. rank 함수는 아래와 같은 형식으로 사용한다. pd.Series.rank(method = 'average', ascending = True) 위와 같이 rank를 사용하는 경우, 두개의 중요한 옵션이 있다. 1) 동점을 처리하는 방법 2) 오름차순/내림차순 유무 이다. 순위를 구할 때 동점 처리하는 방법은 아래와 같다. method = 'average' : 동점 관측치일 때 그룹 내 평균 순위를 부여(default) method = 'min' : 동점 관측치일 때 그룹 내 최소 순위 부여 method = 'max' : 동점 관측치일 때 ..
[Python] 파이썬 파일 크기 사이즈 구하기 - os.path.getsize()
·
Programming/Python
이전 포스팅에서는 os 모듈과 glob 모듈을 가지고 파일 리스트를 구하는 방법에 대해 이야기했었다. 2021/01/12 - [Code/Python] - [Python] 폴더 내 파일 리스트 가져오기 (os/glob) [Python] 폴더 내 파일 리스트 가져오기 (os/glob) 파이썬에서 코딩을 하다보면 하나의 폴더 내 파일 리스트를 가져와야 하는 경우가 종종 있다. 또는 존재하는 파일 중 특정 패턴을 가진 파이들을 불러와야 하는 경우도 있다. 이 때, os 또는 glob everywhere-data.tistory.com 오늘은 os 모듈에서 파일의 크기를 파악하는 함수에 대해 포스팅하려고 한다. 파일이 많을 때 각 파일의 리스트를 확인해야 할 때가 많다. 파일의 용량이 크면 일부만 출해서 확인해야 ..