지속가능티끌/Python ( 45 ) plotly . 다이아그램 그리기 원 여러개 그리고 라인으로 연결 예 실행 결과 - 웹브라우저 실행되면서 아래처럼 표현됨. 첫 등록 : 2024.08.24최종 수정 : 단축 주소 : https://igotit.tistory.com/5774 2024. 8. 24. plotly . 웹으로 챠트 표현 코드 1. csv 파일 읽어서 캔들 챠트 그리기 csv 파일 형식 . 아래와 같은 형식으로 데이터 수집하는 방법 : https://igotit.tistory.com/5766 의 코드 4. 위 형식의csv 파일을 읽어서 캔들 챠트 표현하는 코드. 코드 설명:CSV 파일 읽기:csv_file에 파일명을 지정하고, pd.read_csv(csv_file)로 CSV 파일을 읽어 df 데이터프레임에 저장.타임스탬프 변환:df['timestamp'] = pd.to_datetime(df['timestamp'], unit='ms')로 밀리초 단위 타임스탬프를 datetime 형식으로 변환.캔들 차트 생성:go.Figure와 go.Candlestick로 캔들 차트를 생성.x축에 timestamp, open, h.. 2024. 8. 23. Python . Pandas DataFrame 클래스 Pandas 의 DataFrame 정의:표 형태로 크기 가변 가능한 행과 열로 구성된 데이터 구조 구성 요소:Index:각 행을 식별하는 레이블기본적으로 0부터 시작하는 정수 인덱스 사용Columns:데이터의 속성을 나타내는 레이블각 열은 고유한 이름을 가짐Data:각 셀에 저장된 데이터 DataFrame 데이터 구조는 테이블. DataFrame 클래스 class pandas.DataFrame(data=None, index=None, columns=None, dtype=None, copy=None) data : ndarray (structured or homogeneous), Iterable, dict, or DataFrameDict can contain Series, arrays, const.. 2024. 8. 22. chatGPT 에 코딩 해달라고 해봤다. 개요 파이썬 코딩 하는 중에 챠트 쪽은 익숙하지 않아서 , 통상적인 방법인 웹 검색하여 이곳저곳 보면서 옥석 가려내고 좋은 정보 있는 곳에서 제시된 코드 확인하면서 따라 해보는 식으로 하려고 했었는데.. 통상 2~3일은 소요된다. chatGPT에게 물어보면 내가 수행해야 했던 많은 시간들을 압축하여 혁신적으로 빠른 시간 내에 정리된 고품질 정보 획득 할 수 있게 해 준다. chatGPT 에게 요청한 것 chatGPT 페이지에서 아래 요청을 했다. 캔들 데이터 챠트 그리기 위한 파이썬 패키지 추전해줘 게 중에 가장 많이 사용되는 패키지의 예제 코드 작성해줘 아래와 같은 답변이 나왔다. chatGPT 가 해준 것 캔들 차트를 그리기 위해 많이 사용되는 파이썬 패키지는 Plotly와 Matplo.. 2024. 8. 17. 파이썬 포터블 개발환경 구축 - 설치 방식. 파이썬 포터블 개발환경 구축 개요 - PC 에 종속되지 않고 외장 USB 스토리지 에 파이썬 개발환경 및 작업파일들 몰아두고 어떤 PC 든 USB 로 외장 스토리지 연결하면 파이썬 코딩 작업 가능하게 함. 일관성 달성. - 파이썬 IDE 로 VSCode 이용. ( VSCode 가 포터블 활용 지원됨. ) - 상기의 목적을 달성하기 위하여, 이전 시도했던 Python embeddable 다운로드 방식으로 하면 가상환경 생성하는 venv 나 pip 패키지 등이 포함 되어있지 않아 번잡스럽다. - 본 글에서는 파이썬 설치파일로 설치경로를 외장 스토리지로 하여 포터블 구축 한다. 외장 스토리지에 파이썬 설치 파이썬 설치 파일 다운로드 주소 : https://www.python.org/down.. 2024. 8. 16. Python . 포터블 개발환경 구축 본글에서는 Python embeddable 파일 다운로드 하여 외장 스토리지에 압축해제하는 방식인데, 이렇게 진행하면 가상환경 구축 하는 실행파일누락등 번잡스러워서 파이썬 설치 방식으로 하는게 더 좋은것 같으므로 아래 글들은 무시하고 https://igotit.tistory.com/5761 방식으로 구축함이 타당. --------------------------- 이하 무시. 개요 - PC 에 종속되지 않고 외장 USB 스토리지 에 파이썬 개발환경 및 작업파일들 몰아두고 어떤 PC 든 USB 로 외장 스토리지 연결하면 파이썬 코딩 작업 가능하게 함. 일관성 달성. - 파이썬 IDE 로 VSCode 이용. ( VSCode 가 포터블 활용 지원됨. ) Python embe.. 2024. 8. 16. Google Colab(Colaboratory) . 웹기반 파이썬 코딩 실행 Colab - 브라우저에서 파이썬 코딩, 실행 가능. Google 에서 제공하는 무료/유료 서비스. - GPU 실행 서비스도 제공. 무료 버전에서 GPU 활용 시간 제한 있어 넉넉하지는 않음. Colab 주소 : https://colab.research.google.com/ Google Colab colab.research.google.com 기본 사용법 https://colab.research.google.com/ 의 메뉴 -> 파일 -> 새노트북 클릭하면 새탭 창이 열리고, 이곳에서 코드 작성 및 실행 가능. 첫 등록 : 2024.08.09최종 수정 : 단축 주소 : https://igotit.tistory.com/5749 2024. 8. 9. Python . 스레드 . 함수 , 클래스 파이썬 함수 를 스레드로 실행. - 아래 코드에서 my_thread.start() 실행하면 함수 my_function 이 스레드로 실행된다. import threading def my_function(): while True: print('endless') my_thread = threading.Thread(target = my_function) # my_thread.daemon 을 True로 설정하면 메인프로세스 종료된 경우 스레드도 같이 종료되게 하는 설정. # 기본값은 False 로 되어있음. #my_thread.daemon = True my_thread.start() 파이썬 클래스 를 스레드 클래스에서 상속 받기 - 클래스 threading.Thread 를 상속받아, 내 클래스를 만들고, thre.. 2022. 2. 11. 파이썬 . PYTHONPATH 환경변수 . import 검색 경로 추가 PYTHONPATH 추가 - 파이썬 전역적으로 적용되는 import 경로 설정. 추가방법. 윈도우10 : 제어판 -> 시스템 및 보안 -> 시스템 -> 왼쪽메뉴의 고급시스템 설정 클릭하여 뜬 창에서 버튼 "환경변수" 클릭 하여 뜬 창에서 시스템 변수 영역의 버튼 "새로만들기..." 클릭하여 변수이름에 PYTHONPATH 변수 값에 추가할 경로 기록 , 위와 같이 PYTHONPATH 에 기록한 경로는 파이썬의 sys.path 에 추가되므로 import 시에 PYTHONPATH 에 있는 파이썬 파일들도 검색가능하다. 참고 : sys.path 보는 구문. import sys print(sys.path) Visual Studio 파이썬 개발환경 에서 PYTHONPATH 적용하기 - VS 파이썬 프로젝트에서 아래.. 2022. 2. 11. Python . 실행시 인자 전달 파이썬 실행시 인자 전달 방법 - 아래 구문처럼 .py 뒤에 인자 기록. 스페이스 기준으로 다른 인자로 인식한다. my_code.py arg1 arg2 arg3 파이썬 코드에서 인자 활용 ### 파이썬 코드에서 인자 정보 활용예 import sys # sys.argv[] 의 인덱스 0 에는 항상 현재 실행 스크립트의 전체 경로 있음. 스크립트를 exe로 만들어 실행시킨 경우에는 경로 기록없이 파일명.exe 만 기록되어있음. # 스크립트 실행시 인자 arg1 arg2 arg3 .. 식으로 전달하면 sys.argv[1] 부터 arg1,2,3 순서로 기록됨. print('num of sys.argv = ' , len(sys.argv)) # 스크립트 실행시 전달한 인자 수량 + 1 for idx in range.. 2022. 1. 28. Python . Visual Studio 파이썬 한글 깨짐 해결책 문제 상황. Visual Studio 의 파이썬으로 저장된 .py 파일의 인코딩이 utf-8 이 아닌 경우에는 소스코드의 주석에서의 한글 이나 변수에 한글 대입 하면(a = '한글') 실행시 에러 발생한다. 해결책 - 부실한 해결책. - 통상 .py코드의 1줄 혹은 2줄 지점에 # coding=utf-8 이라고 기록하면 주석에 한글 사용하는 것은 가능하나 a = '한글' 식의 한글 사용 불가하므로 완전한 해결책 아님. 완전한 해결책. Visual Studio 2022 의 파이썬에서 파일 저장시 기본 encoding 은 Korean - codepage 949 으로 되어있다. 이 상태로는 소스내에 한글 표현 불가함. Visual Studio 에서 파이썬 파일 저장 encoding 을 UTF-8 with si.. 2022. 1. 27. Visual Studio 2022. 파이썬 개발환경 설치 사전 준비 : Visual Studio 2022 설치된 상태. 파이썬 개발 환경 설치 방법 Visual Studio 실행하여 메뉴 : Tools -> Get Tools and Featues... 클릭하여 뜬 아래 창에서 상단 탭 워크로드 에서 Python 개발 선택하고 버튼 수정 클릭. 첫 등록 : 2021.12.04 최종 수정 : 단축 주소 : https://igotit.tistory.com/3090 2021. 12. 4. Python. 문자열 + 연산자 메모리 누수 생김 . 주의 필요. 개요 파이썬은 메모리 해제가 자동으로 이뤄진다길래 아무거나 사용해도 되는 줄 알았으나, 메모리 누수 생기는 경우 경험함. 오류 상황예. - 아래 함수는 거래소에서 웹소켓기반 실시간 수신되는 체결 틱 데이터를 DB 에 저장하는 함수인데 첫부분에 SQL 쿼리문 만들기 위하여 문자열 + 연산자로 처리했었던것. - 암호화폐 거래소의 30여개 종목의 실시간 체결 틱 데이터 수신 될 때 마다 아래 함수 호출하는데 2일 정도 지나면 반드시 PC 메모리 다 잡아먹고 먹통 만들었음. def insert_new_fill(_symbol, _trade_price, _trade_volume, _ask_bid,_trade_date, _trade_time, _i_timestamp): str_sql_insert = 'INSERT I.. 2021. 11. 4. Python. numpy 평균 ,분산, 표준편차 , 최대, 최소 import numpy list_val = [1,2,3,4,5,6,7,8,9,10] numpy.mean(list_val) # 평균 numpy.var(list_val) # 분산 numpy.std(list_val) # 표준편차 numpy.max(list_val) # 최대 numpy.min(list_val) # 최소 첫 등록 : 2021.10.10 최종 수정 : 단축 주소 : https://igotit.tistory.com/2939 2021. 10. 10. Python. List 리스트 my_list = list() my_list.append(100) # [100] 리스트 마지막에 값 100 추가. my_list.append(200) # [100, 200] my_list.append(300) # [100, 200, 300] del my_list[0] # 인덱스 0의 리스트 요소 제거. 100 제거되어 [200,300] my_list.remove(200) # 값이 200 인 요소 제거. 200이 여러개 있다면 첫번째 요소만 삭제됨. # 리스트 요소 수량 len(my_list) 첫 등록 : 2021.10.10 최종 수정 : 단축 주소 : https://igotit.tistory.com/2938 2021. 10. 10. Python. 클래스 파이썬의 클래스 멤버함수 - 클래스 멤버함수 정의시 첫인자 필수 기록해야하며 멤버함수 호출시에 이 인자에 값 전달하지 않음. 통상 인자명을 self 로 함. - self 인자는 C++ 클래스에서의 this 와 비슷. ## 클래스 정의 예. class my_class: # 이 자리에서 선언된 변수들은 본 클래스의 모든 인스턴스에서 공유됨. str_common = ' 클래스 인스턴스들 에서 공유되는 변수임' # 생성자(constructor). def __init__(self,a0): self.a0 = a0 self.my_str = '문자열' self.my_int = 100 self.my_float = 100.0 # 클래스 멤버함수(=메서드) 의 첫번째 인자 필수 요구됨. 통상 명칭을 self 로 함. def.. 2021. 10. 6. Python. round. 실수 소수점 자리수 자르기. round round(3.1415) # 3 2번인자에 값 기록하지 않은 경우 round(3.1415,3) # 3.142 2번인자에 기록된 소수점이하 3에서 자르는데, 4번 자리 수가 5여서 반올림처리됨. round(3.1414,3) # 3.141. 소수점이하 3에서 자르는데 4번 자리 수가 4여서 내림 처리됨. ## 2번 인자에는 음수도 가능하며, 이 경우 십의 자리수자르면서 반올림, 내림 이뤄짐. round(31.415, -1) # 30.0 round(31.415, -2) # 0.0 round(314.15, -2) # 300.0 round(354.15, -2) # 400.0 . 십자리수 2 에서 자르는데 그 아래값이 5여서 반올림 되어 400 이 됨. round(454.15, -2) # 500.0 ##.. 2021. 9. 10. Python. 비프음 출력 파이썬에서 비프음 출력하기. - 아래예는 2000Hz 주파수인 소리를 500msec 동안 출력함. import winsound as wsd wsd.Beep(2000,500) # frequency(37~32767 Hz) , duration ( msec 단위) 첫 등록 : 2021.09.08 최종 수정 : 단축 주소 : https://igotit.tistory.com/2910 2021. 9. 8. 이전 1 2 3 다음