Python 7

[머신러닝] 분류 모델 성능 평가 지표 - Accuracy, Precision, Recall, F1 score

Classification(분류) 모델을 진행했다면, 해당 모델이 얼마나 잘 작동하는지 통계적으로 확인하는 단계가 필요하다. 이에 대한 평가 지표에 대한 개념을 정리해보자. Accuracy 가장 간단하게 성능을 평가할 수 있는 지표. 하지만, 여기서 고려할 것은 domain의 편중(bias) Accuracy는 올바르게 예측된 데이터의 수를 전체 데이터의 수로 나눈 값. *Confusion matrix True Positive(TP) : 실제 True인 정답을 True라고 예측 (정답) False Positive(FP) : 실제 False인 정답을 True라고 예측 (오답) False Negative(FN) : 실제 True인 정답을 False라고 예측 (오답) True Negative(TN) : 실제 F..

[python] datetime 활용 날짜별(년, 월, 일, 요일) 인덱싱 방법

데이터를 분석하다 보면 자주 사용하게 되는 것 중 하나가 날짜가 아닐까 싶다. 원본 데이터의 날짜 컬럼을 사용할 수도 있지만, 만약 특정 년, 월, 일, 요일 등을 따로 뽑아내어 분석하고 싶다면 어떻게 해야할까? 날짜 데이터를 활용할 때 사용하는 모듈인 datetime에 대하여 정리해보자. datetime 모듈의 자료형 자료형 date: 그레고리안 달력을 사용해서 날짜(연, 월, 일)를 저장 자료형 time: 하루의 시간을 시, 분, 초, 마이크로초 단위로 저장 자료형 datetime: 날짜와 시간을 저장 자료형 timedelta: 두 datetime 값 간의 차이(일, 초, 마이크로초)를 표현 자료형 tzinfo: 지역시간대를 저장하기 위한 기본 자료형 data_range: 날짜 범위 생성 pandas..

[python] matplotlib 시각화 한글 폰트 오류 문제 해결법 (맥, 윈도우)

파이썬을 통해 matplotlib 시각화를 할 경우에, 한글 폰트가 지원되지 않아 아래 이미지처럼 글자가 제대로 보이지 않고, 네모로 보이는 문제가 생긴다. 따라서, 미리 폰트 매니저를 임포트해서 설정을 해주어야 한다. 운영체제별 이름(OS별 PLATFORM) * Mac : 'Darwin' * Windows : 'Windows' * Linux : 'Linux' import platform import matplotlib.font_manager as fm if platform.system() == 'Darwin': # Mac 환경 폰트 설정 plt.rc('font', family='AppleGothic') elif platform.system() == 'Windows': # Windows 환경 폰트 설정 ..

[python] 결측치 확인 및 데이터프레임 병합

오늘은 데이터의 결측치를 확인하고, 데이터프레임을 병합하는 방법을 정리해보았다. 결측치 확인 df.isnull() df.isnull().sum() # 결측치 시각화 df.isnull().sum().plot.barh(figsize=(7,8)) fig, axes = plt.subplots(2, 1) plt.subplots_adjust(wspace=0, hspace=1) # alpha는 투명도를 의미 df1.isnull().sum().plot.bar(ax=axes[0], color='b', alpha=0.8) df2.isnull().sum().plot.bar(ax=axes[1], color='r', alpha=0.7) 데이터 프레임 병합 concat : 두개의 데이터 프레임을 하나로 병합 (이어 붙여줌; 데이..

[python] seaborn 데이터 시각화 라이브러리 활용

파이썬의 데이터 시각화 라이브러리인 seaborn을 활용해보자. 라이브러리 불러오기 및 설정 import seaborn as sns sns.set_style({'font.family':'serif', 'font.serif':['Times New Roman']}) sns.set_style('darkgrid') Figure 여러개 그리기 figure, ((ax1, ax2, ax3),(ax4, ax5,ax6)) = plt.subplots(nrows=2,ncols=3) figure.set_size_inches(10,6) sns.barplot(x='pclass', y='survived', hue='sex', data=df, ax=ax1) sns.barplot(x='pclass', y='survived', hue=..

[FinanceDataReader] 이동평균선 및 골든&데드크로스

라이브러리 불러온 후, 데이터 살펴보기 import pandas as pd import numpy as np import matplotlib.pyplot as plt import FinanceDataReader as fdr 네이버주식 코드번호: 035420 #네이버주식 df = fdr.DataReader("035420") df.head() df.tail() 종가(Close)를 이용해 이동평균선 값 구하기 이동평균선(Moving Average) : 일정기간 동안의 주가를 산술 평균한 값인 주가이동평균을 차례로 연결해 만든 선으로, 장기(120일), 중기(60일), 단기(5,20일) 이동평균선이 있다. df=df[['Close']] df['MA_5'] = df['Close'].rolling(window=5)..

[FinanceDataReader] 금융 데이터 분석과 인공지능 투자

안녕하세요! 지난 블로그 일지에 이어, 티스토리 3차 세션 일지를 담당하게 된 큐시즘 대홍 23기 입니다 :D ​ 제가 일지를 작성할 강의는 ​ 이승희 교육자님의 "금융 데이터 분석과 인공지능 투자"입니다! ​ 우선 전반적인 강의 내용을 요약하기에 앞서, 목차를 설명드리자면, 다음과 같습니다! ​ ​ 그럼, 이제 금융 개론부터 시작해보겠습니다! ​ 01. 금융 개론(1) : 금융 이해와 재무 설계의 중요성 ​ 슬프게도, 우리나라는 금융 문맹국입니다. OECD의 최소 금융 이해 수준 점수보다 우리의 평균이 낮다고 하네요! :( 절반가량은 금융 이해력 테스트에서 낙제를 받았다고 합니다. ​ 요즘은 젊은 층에서 주식 투자를 많이 접하고 있지만, 여전히 금융에 대한 기본적인 이해는 부족하지 않나 싶습니다. ​ ..