반응형

Python 380

[Pandas] 파이썬 결측치 대치하기(전체 열/특정 열 대체와 0, 평균 값, 보간 대체) : fillna

파이썬 판다스 NaN 값 대체 방법 정리 : fillna 사용법 안녕하세요. 이번 글에서는 파이썬 판다스 라이브러리에서 데이터프레임의 전체 column 혹은 일부 column의 결측값을 0, 평균 값 혹은 보간 값 등으로 대체하는 방법에 대하여 총정리해보도록 하겠습니다. 이해를 돕기 위하여 아래와 같은 간단한 데이터프레임이 있다고 가정해보겠습니다. import pandas as pd import numpy as np a = {'A' : [1, np.nan, 3, np.nan, 5, np.nan], 'B' : [np.nan, 20, np.nan, 40, np.nan, 60]} df = pd.DataFrame(a) df 전체 column 결측치 0 대치 : df.fillna(0) 0 혹은 다른 특정 값으로 ..

Python/Pandas 2022.03.14

터미널에서 파이썬 실행 시 인자 input 순서대로 받기(sys.argv 이용)

Python bash input argument : sys.argv bash 터미널 환경 내에서 파이썬 파일을 실행할 때, 명령어를 통하여 input을 줄 수 있는 가장 간단한 방법인 sys.argv를 활용한 예제를 살펴보도록 하겠습니다. sys.argv 사용법 예를 들어, 아래와 같이 example.py라는 파이썬 파일을 실행할 때, 3과 hello라는 인자 2개를 순서대로 받으려는 상황을 가정해보겠습니다. $ python example.py 3 hello 이 방법을 활용하면 터미널에서 py 파일이 실행되는 과정 내부에서의 변수를 지정할 수 있습니다. example.py 파일에서 아래와 같이 sys.argv를 활용하여 인자를 순서대로 받아주시면 됩니다. import sys a = sys.argv[1] ..

Python/Utils 2022.03.14

파이썬 코드 실행 시 사용할 GPU를 지정하는 방법(리눅스, 윈도우)

Linux, Window GPU 번호 지정 Python 실행 리눅스, 윈도우 환경에서 사용할 GPU 번호를 지정하여 파이썬 코드 파일을 실행하는 방법에 대해서 간략하게 요약해보도록 하겠습니다. 리눅스 bash 터미널 환경에서 GPU 할당 방법 리눅스의 터미널 환경에서 사용할 GPU 번호를 지정하려면 python 명령어의 앞 부분에 CUDA_VISIBLE_DEVICES=번호 명령어를 추가해주시면 됩니다. 여러 개의 GPU를 지정하려면 콤마(,)를 통하여 원하는 번호들을 나열해주면 되며, python 실행 구문이 복잡한 경우에도 python의 앞 부분에 CUDA 명령어만 추가하면 됩니다. # 가장 기본적인 예시(GPU 1개, 여러개 예시) $ CUDA_VISIBLE_DEVICES=0 python file_n..

Python/Utils 2022.03.11

Transformers 라이브러리에서 학습한 모델 저장, 불러오기 방법

Transformers model save, load Hugging Face에서 제공하는 Transformers 라이브러리의 모델들을 학습 뒤 저장하는 방법과, 저장된 모델을 불러오는 방법에 대해서 살펴보겠습니다. 모델 저장 방법 : save_pretrained(디렉토리) 예를 들어, Transformers의 BertForMaskedLM, TFAutoModelWithLMHead 모델을 불러와서 (BertForMaskedLM는 파이토치 기반, TFAutoModelWithLMHead는 텐서플로우 기반) fine-tune 과정을 수행한 이후 학습된 모델을 파일로 저장하고 싶은 상황을 가정해보겠습니다. from transformers import BertForMaskedLM, TFAutoModelWithLMHe..

Python/NLP Code 2022.03.10

nltk 다운로드 방법, LookupError 해결

nltk package download manual 이번 글에서는 nltk 라이브러리에서 원하는 corpora, model을 골라서 설치하거나 collection 전체를 다운로드하는 방법을 설명하고, LookupError 오류가 등장할 경우 이를 콘솔 창을 통해 해결할 수 있는 법을 간략하게 다루어보도록 하겠습니다. 먼저, nltk 라이브러리가 설치되지 않은 경우 !pip install nltk 명령어를 통해 라이브러리를 설치해주시면 됩니다. nltk package collection 전체 다운로드 : all, popular 등 nltk에서 지원하는 모든 패키지를 다운로드 받고 싶다면 all 옵션을, 많이 사용되는 주요 패키지들의 목록들을 설치하고 싶다면 popular 옵션으로 아래 예시 코드처럼 지정해..

Python/NLP Code 2022.03.09

[Pytorch] 파이토치 모델 저장, 불러오기 방법

torch model save, load 예제 이번 글에서는 파이토치에서 학습된 모델을 저장하고, 저장된 모델을 다시 불러오는 방법을 파라미터만 저장하는 방법과 모델 전체를 save하는 방법으로 나누어서 설명해보겠습니다. 참고로, 이 글은 파이토치 공식 문서를 기반으로 작성되었습니다. model save 방법 1 : 파라미터만 저장 state.dict() 메소드를 불러와 모델의 파라미터만 골라서 저장이 가능합니다. 이 방법은 모델의 클래스 종류와 argument를 아는 경우 용량을 절약할 수 있어 권장드립니다. 저장될 파일은 pt 확장자로 지정해주시면 됩니다. # torch.save(모델이 저장된 변수 이름.state_dict(), 모델이 저장될 디렉토리) torch.save(model.state_dic..

Python/Pytorch 2022.03.08

[Pandas] 파이썬 결측치 포함 행, 열 제거 dropna 함수 사용법

판다스 데이터프레임 NaN 값 포함 위치 제거 방법(pd.dropna) 안녕하세요. 지난 글에서 다루었던 데이터프레임 내 결측값의 위치를 찾는 방법에 이어, 이번 글에서는 결측치를 포함하고 있는 행이나 열을 제거하는 방법을 dropna 함수의 사용법을 기반으로 하여 다루어보도록 하겠습니다. 결측값의 위치와 개수를 확인하는 방법에 관한 내용은 아래 링크의 지난 글을 참고해주세요. [Pandas] 파이썬 결측치 확인 방법 : isnull, notnull 판다스 데이터프레임 NaN 값 위치, 개수 확인 안녕하세요. 이번 시간에는 파이썬 판다스 라이브러리에서 데이터프레임 내의 결측값 행을 확인하고, 각 열 별로 결측치의 개수를 세는 방법을 isnull jimmy-ai.tistory.com 참고로 이 글은 pan..

Python/Pandas 2022.03.07

[Pandas] 파이썬 결측치 확인 방법 : isnull, notnull

판다스 데이터프레임 NaN 값 위치, 개수 확인 안녕하세요. 이번 시간에는 파이썬 판다스 라이브러리에서 데이터프레임 내의 결측값 행을 확인하고, 각 열 별로 결측치의 개수를 세는 방법을 isnull, notnull 함수의 사용법을 기준으로 간략하게 설명해보도록 하겠습니다. 결측치 행 확인 : isnull 이해를 돕기 위하여, 아래와 같은 결측값을 일부 포함하는 간단한 데이터프레임이 있다고 가정해보도록 하겠습니다. import pandas as pd import numpy as np a = {'A' : [np.nan, 2, 3, 4, 5, np.nan], 'B' : ['a', 'a', np.nan, 'b', 'b', 'b'], 'C' : [np.nan, 1.5, -0.3, np.nan, 4.2, np.na..

Python/Pandas 2022.03.06

파이썬 filter 함수 사용 예제 정리(lambda, def, 문자열 예시)

파이썬 filter 함수 사용법 경우의 수 파이썬 기본 내장 함수 중 하나인 filter 함수의 기본적인 구조는 다음과 같습니다. filter(필터링 조건 함수(lambda 또는 def 정의), 필터링을 적용할 리스트 혹은 튜플 등 자료형) filter 함수의 원리는 순회가능한 원소 각각에 필터링 조건을 검사하여 조건을 만족하는 원소들만 모아 결과를 반환하는 것입니다. 예제를 살펴보며 더 자세한 사용 방법을 익혀보도록 하겠습니다. filter 함수 예제 1 : lambda를 이용한 필터링 가장 기본적인 람다 조건을 이용한 필터링의 경우를 살펴보겠습니다. 예를 들어, 정수로 구성된 리스트 원소들 중 4의 배수만을 골라서 반환하고 싶은 경우는 아래 예시 코드처럼 작성해주시면 됩니다. # filter(람다 조..

python setup.py egg_info did not run successfully. exit code: 1 해결(apex 설치 과정 에러)

apex 라이브러리 설치 중 metadata egg_info 오류 디버깅 nvidia github 사이트에서 apex 패키지를 설치하는 과정 중 아래와 같은 오류가 발생했습니다. egg_info가 성공적으로 실행되지 않았다고 나오면서, 앞 부분에는 error : subprocess-exited-with-error 오류와 같이 note : This error is originates from a subprocess, and is likely not a problem with pip. 으로 pip 문제가 아니라는 메시지가 출력되고, 아래쪽에서는 error : metadata-generation-failed 오류와 함께 note : This is an issue with the package mentioned..

Python/Debugging 2022.03.04
반응형