전체 글(92)
-
Python 모르고 놓치고 있는 유용한 기능
나는 몇 가지를 제외하고 매우 유용하게 사용하고 있다. 연쇄 함수 호출 list comprehension처럼 사용 가능 def foo(x:bool): print(x) def foo2(x:bool): print(not x) x = True (foo if x else foo2)(x) # True x = False (foo if x else foo2)(x) # True for - else 문 for문이 break를 타지 않고 끝나면 (전체 루프를 다 돌면) else문 실행 for i in range(5): if i > 5: break else: print('?') # ? for i in range(5): if i < 5: break else: print('?') # 함수 주석 (1) 파라미터 `:`, retu..
2024.01.30 -
Jupyter Notebook 가상환경마다 바로가기 만들기
0. 준비물 - 아나콘다 설치 - 가상환경 생성 및 주피터 설치 1. 왜 필요해? - 가상환경을 활성화를 하기 위해 아나콘다 실행 후 명령어(`conda activate myenv`, `jupyter notebook`)를 입력해줘야 함 - 상황에 따라 여러 가상환경을 계속 왔다갔다 해야 함 → 매우 번거로운 상황이 생긴다. 2. 바로가기 생성하기 1. 시작프로그램에서 아나콘다 바로가기 폴더로 들어간다. (아래 이미지에서 [파일 위치 열기] 선택) C:\Users\username\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Anaconda3 (64-bit) 2. 기존 Jupyter Notebook 바로가기 아이콘을 복붙한다. 3. 새로 생성된 바로가기 파..
2024.01.30 -
객관식 문제 채점 프로그램 (python)
용도 : 시험 대비 등을 위하여 같은 문제를 여러 번 반복해서 풀어보기 위해 책 대신 다른 곳에 답을 적을 때 이 프로그램에 답을 입력, (답안 텍스트 파일을 설정 시) 채점까지 대신해준다. 기능 1. 프로그램 내 타이머가 있어 시간 제한을 둘 수 있다. 2. 답안 텍스트 파일을 통해 채점을 대신하여 합불합 여부를 알려준다. (과락인지 종합 점수 부족인지 또한 알려준다.) 3. 성적이 향상했는지 확인할 수 있도록 결과를 저장할 수 있다. 주의사항 : 답안 텍스트 파일 작성시 한 줄에 10문제씩 입력해야한다. (연습문제 한정, 모의고사는 관계 없음) 사용법 예시1 - 연습문제 더보기 연습문제 버튼을 클릭하여 문항수와 시간을 설정하고 확인을 누르면 아래와 같은 시험창이 뜬다. 띄어쓰기 없이 답을 입력한다. ..
2021.03.23 -
파이썬 Tesseract를 이용한 OCR 프로그램 만들기
클립보드 번역기를 만든 주된 이유는 한글패치가 되지 않은 게임을 하고 싶을 때 게임 내 텍스트를 실시간으로 번역하여 플레이하고 싶었기 때문이다. 그래서 함께 이용한 것이 Capture2Text라는 프로그램인데, 이런 OCR 프로그램을 나의 클립보드 번역기에 내장하고 싶었다. 생각한 과정은 아래와 같다. - Tesseract OCR을 이용하기 위해서 불러올 이미지 파일이 필요하다. → 게임 스크린샷을 불러와야한다. → 스크린샷 중에서도 텍스트가 적힌 위치를 지정해야한다. 그래서 처음으로 찾게 된 방법은 어떤 방법으로든 화면 스크린샷을 찍고 cv2의 ROI 기능을 이용하여 원하는 부분을 사용자가 지정하게 하는 것이었다. 하지만 Capture2Text 프로그램처럼 실시간이 되지 않고, cv2가 띄우는 스크린샷..
2020.12.05 -
클립보드 번역기(Clipboard Translator) & 화면 / 게임 번역기 v2.081
1. 클립보드 번역기 (13.2MB) 클립보드 번역 기능만 쓰고 싶으신 분들을 위한 버전 https://mega.nz/folder/obpUyCzY#qQRNsFI3bLZWB-Li3HvjNA 2. 화면/게임 번역기 (클립보드 번역기 with Tesseract OCR) (57.5MB) 클립보드 번역 기능 뿐만 아니라 화면 번역 기능까지 쓰고 싶으신 분들을 위한 버전 https://mega.nz/folder/wbowCYTR#O7p_mYlOAiqrs8NYPh5kNw 위 파일을 다운 받아 압축 해제, Tesseract OCR을 다운, 설치해야 사용 가능합니다. 현재 지원되는 OCR 언어는 한국어, 영어, 일본어, 중국어입니다. (필수) Tesseract OCR 다운로드 및 설치법 : https://boksup.ti..
2020.06.30 -
머신러닝과 기상 데이터를 이용해 홈런 갯수 예측해보기 (4) 머신러닝
우선 홈런 데이터를 확인해보자. import pandas as pd import os import matplotlib.pyplot as plt base_dir = 'C:/Users/Username/Desktop/' excel_file = "homeruns_weather.xlsx" excel_dir = os.path.join(base_dir, excel_file) df = pd.read_excel(excel_dir, encoding="EUC_KR") y = df.loc[:,"HR"] x = df.loc[:, ["TE", "RH", "PS"]] count_data = df.groupby('HR')['HR'].count() print("홈런 비율 : %.2f" % ((1-count_data[0]/sum(cou..
2020.05.10 -
머신러닝과 기상 데이터를 이용해 홈런 갯수 예측해보기 (3) 기상 데이터 가져오기
이제 각 구장 위치별 기상 데이터를 가져와야한다. 우선 어떤 구장들이 있는지 확인해보자. import pandas as pd import os base_dir = 'C:/Users/Username/Desktop/' excel_file = "homeruns.xlsx" excel_dir = os.path.join(base_dir, excel_file) df = pd.read_excel(excel_dir, encoding="EUC_KR") locations = df["STADIUM"].unique() print(locations) ['대구' '문학' '대전' '잠실' '목동' '광주' '사직' '청주' '마산' '제주' '군산' '포항' '울산' '수원' '고척' '창원'] 내가 사용할 정보는 종관기상관측 자..
2020.05.10 -
머신러닝과 기상 데이터를 이용해 홈런 갯수 예측해보기 (2) 홈런 데이터 가져오기
https://sports.news.naver.com/gameCenter/gameRecord.nhn?gameId=20200508SKLT02020&category=kbo 5월 8일 SK와 롯데의 경기 결과다. 저번 글의 코드를 이용해서 위의 주소를 자동으로 뽑아냈으니 이제 이 결과에서 홈런 수를 빼내야 한다. url = "https://sports.news.naver.com/gameCenter/gameRecord.nhn?gameId=20200508SKLT02020&category=kbo" req = requests.get(url) html = req.text print(html) (생략) DataClass = jindo.$Class({ _data : {"etcRecords":[{"result":"없음","..
2020.05.10 -
머신러닝과 기상 데이터를 이용해 홈런 갯수 예측해보기 (1) 소스 가져오기
야구가 기상의 영향을 받는다는 사실은 잘 알려져있다. 그 중에서도 기온이나 습도, 풍향/풍속 등에 가장 영향을 많이 받을 것이다. 그렇다면 이런 기상 정보와 홈런의 갯수에는 관계가 있지 않을까 하는 생각에서부터 이 머신러닝 만들기를 시작했다. 앞 부분은 전에 머신러닝으로 득/실점을 예측할 때랑 거의 같다. 한가지 다른 점은 한 팀만의 경우가 아닌 모든 경기의 결과를 수집해야한다는 점이다. import urllib.request from bs4 import BeautifulSoup import pandas as pd import os # url 가져오기 def geturl(date, teamname): (year, month) = ym(date) url = "https://sports.news.naver...
2020.05.10 -
머신러닝으로 야구 득/실점 예측해보기 (5) 머신러닝
나의 머신러닝 지식은 매우매우 초보단계다. 지금도 공부 중이다. 그러니 이 방법이 제일(그나마) 정확하다고 하기 힘들다. 그냥 재미로 봐주길 바란다. scikit learn 사이트에 어떤 머신러닝을 이용하면 좋은지 알려주는 맵이 있다. https://scikit-learn.org/stable/tutorial/machine_learning_map/ Choosing the right estimator — scikit-learn 0.22.2 documentation Choosing the right estimator Often the hardest part of solving a machine learning problem can be finding the right estimator for the job. ..
2020.05.05