본문 바로가기

Development/Python33

[Python] argument 인자 입력 받아서 실행하기 1. argparse 이용 (argument를 특정해 줌) # argv_test1.py import os, sys, pickle import argparse, sys parser = argparse.ArgumentParser() parser.add_argument('-name', help=' : Please set the name') parser.add_argument('-option', help=' : train or prediction', default='train') parser.add_argument('-stt_date', help=' : Please set the start date of prediction(default)', default='2021-11-02') parser.add_argum.. 2021. 12. 2.
[Docker] Container 내에서 Jupyter Notebook 띄우기 0. 조건 1) 실행 되고 있는 컨테이너에 Jupyter Notebook이 설치 되어있어야 함. (pip install jupyter) 2) 컨테이너를 띄울 시 Jupyter Notebook이 띄워질 Port를 따로 할당(하지 않아도 되나 그래도 하는 것을 추천) 3) 컨테이너 내부에서 Jupyter Notebook을 실행 시 접속가능 IP의 범위 설정 필요 1. Container 띄우기 (Jupyter Notebook이 띄워질 Container Port를 Host Port와 연결) # docker run -it -p [HostPort:ContainerPort] [이미지:태그] /bin/bash $ docker run -it -p 8989:8989 tensorflow:v0.1 /bin/bash ※ Ten.. 2021. 11. 15.
[Python] Dictionary의 key를 list로 변환하기 방법 : [*딕셔너리] tmp_dict = {'a':1, 'b':2} print(tmp_dict.keys()) # >>> dict_keys(['a', 'b']) # 1. Key를 list로 print([*tmp_dict]) # >>> ['a', 'b'] # 2. Key를 list로 print([*tmp_dict.keys()]) # >>> ['a', 'b'] # 3. Value를 list로 print([*tmp_dict.values()]) # >>> [1, 2] 끄읏 출처 : https://stackoverflow.com/questions/16819222/how-to-return-dictionary-keys-as-a-list-in-python 2021. 10. 22.
[Python] 판다스 데이터프레임 전체 프린트(Pandas DataFrame Print) Pandas의 데이터프레임을 찍어보면 일정길이 이상부터는 중간부분이 ...으로 표시되며 잘리며 보인다. 이 때, 해당 옵션을 설정해주면 전체가 보이게 된다. import pandas as pd pd.set_option('display.max_rows', None) 원상복구 방법 pd.reset_option('^display.', silent=True) 끄읏 2021. 10. 22.
[Python] Pytorch 설치 && 설치 후 GPU Test 사전 준비 : OS, CUDA Version 1. 파이토치 공식 홈페이지에서 구성요소를 선택 후, Run this Command에 뜬 shell 명령어가 확인 2. shell command 입력 (가상환경 있다면 활성화 후) $ pip3 install torch==1.9.1+cu111 torchvision==0.10.1+cu111 torchaudio==0.9.1 -f https://download.pytorch.org/whl/torch_stable.html 3. GPU 잘 붙는지 확인 (파이썬 실행 후) import torch torch.cuda.is_available() >>> True torch.cuda.current_device() >>> 0 torch.cuda.device(0) >>> torch... 2021. 10. 13.
[Python] Pandas Dataframe 내 정규표현식 반영 문자열 추출 To do : 데이터프레임 내 '자산' 컬럼의 내용 중 알파벳으로 이뤄진 키워드만 추출해서 남기고자 함 How to : Pandas 의 함수인 extract 사용 (pandas.Series.str.extract) DataFrame['col1'] = DataFrame['col1'].str.extract(r'(reg_express)') 레스고 1. 데이터프레임 준비 In [59]: bithumb Out[59]: 자산 실시간 시세 변동률 거래금액(24H) 시가총액? 입금 출금 차트 거래 0 비트코인BTC/KRW 61,446,000 원 +1,003,000 원?(+1.66 %) ? 273,531,391,383 원 1149조 0126억 NaN NaN NaN NaN 1 도지코인?DOGE/KRW 297.1 원 -3.2.. 2021. 10. 7.
[Python] 사용자 정의 함수 사용 시 주의 할 점 def 를 통해서 함수를 정의하고, 이 함수에 객체를 Input 값 으로 넣을 경우 주의할 점이 한 가지 있다. 바로, 사용자 정의 함수에서 입력 받은 객체에 대해서 직접 조작을 한다면, 굳이 return으로 변경내역을 전달해주지 않아도 원본에 적용이 된다는 점이다. 따라서 객체의 원본을 보존함과 동시에 함수를 적용한 객체를 각각 갖고자 한다면, 함수 내외부적으로 복사본을 만들어 적용시켜야 한다. # 원본 자체가 변경 되는 경우 def change_df(df_org) : df_org['col1'] = df_org['col1'] + 1 return df_org # 원본과 결과를 각각 보존하고자 하는 경우 def change_df2(df_org) : df = df_org.copy() df['col1'] = .. 2021. 10. 6.
Pandas Merge시 행 증가하는 문제 원인 및 해결 외부 API를 이용해서 데이터를 불러올 일이 있었다. DataFrame1 (df1) -> col1, col2 DataFrame2 (df2) -> col1, col3 DataFrame3 (df3) -> col1, col4 MasterDataFrame -> col1, col2, col3, col4 현상 : col1을 기준으로 하나의 데이터프레임으로 병합하니 Row의 수가 배로 늘었다! 원인 : 각 데이터프레임에서 설정된 키가 duplicate되어있어 Pandas의 Merge를 활용 시 Row의 수가 늘어난 것 (출처 확인) 해결 : Merge하기 전 각각의 데이터프레임에 대해서 duplicated된 키를 제거 해준다.... 부끄럽다... from functools import reduce import pan.. 2021. 10. 1.
[Python] Numa Node 0 에러 메세지 해결 이 글은 해당 포스팅을 정리한 것임을 명시한다. 현상 : 텐서플로를 import 하면 다음과 같은 메세지가 출력 됨. "successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero" 2021-09-30 06:01:45.056379: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcuda.so.1 2021-09-30 06:01:45.109357: I tensorflow/stream_executor/.. 2021. 9. 30.
반응형