오늘의 내용 미리보기
본문
우선 시작에 앞서 몇 가지 설치를 해봅시다.
pip install pandas
pip install numpy
이 두 모듈을 이용해 파이썬으로 데이터 분석이 가능해집니다.
pandas는 파이썬의 데이터 분석 라이브러리입니다.
수치형 테이블과 시계열 데이터를 조작하고 운영하기 위한 데이터를 제공합니다.
numpy는 수학 및 과학 연산을 위한 파이썬 패키지입니다.
파이썬으로 수치해석, 통계 관련 기능을 구현할 때 가장 기본이 되는 모듈입니다.
우선 이 두 모듈을 사용하기에 앞서 시계열데이터에 대해서 알아봅시다.
시계열데이터는 일정한 시간 동안 수집 된 일련의 순차적으로 정해진 데이터 셋의 집합입니다.
되게 어려워 보이는 데 쉽게 풀어서 설명하면 무언가에 대한 데이터를 시간에 따라 나열한 데이터의 집합입니다.
다음 파일을 한 번 봅시다.
이런 식으로 일자와 이에 관련된 데이터가 모여있는 집합이라고 생각하면 됩니다.
이 데이터의 경우 Index가 일자인 Pandas의 DataFrame입니다.
그러면 본격적으로 pandas를 사용해 봅시다.
우선 pandas를 사용하기 위해선 import를 해주어야 합니다.
import pandas as pd
이런 식으로 import를 하게 되면 사용이 가능합니다.
as는 이 import 된 대상의 약칭입니다.
굳이 pandas.함수() 이런 식으로 쓰지 않고
pd.함수() 이런 식의 사용이 가능합니다.
한 번 일정한 간격의 DatatimeIndex를 생성해 볼까요?
pd.date_range('2023-08-01',periods = 5,freq = "H")
이런 식으로 date_range라는 함수를 이용해서 만들 수 있습니다.
인자로는 시작 시점, 개수, 간격 등이 있습니다.
이렇게 생성을 해보면
이런 결과를 얻을 수 있습니다.
freq를 변경하게 되면 그에 맞는 값이 나옵니다.
이번엔 일반 시계열데이터를 Pandas 시계열데이터로 변환해 봅시다.
import pandas as pd
df = pd.read_excel("파일경로")
df.dtypes
우선 기존 파일의 타입을 알아봅시다.
그리고 파일을 변환해서 알아봅시다.
import pandas as pd
df = pd.read_excel("파일경로")
df["일자"] = pd.to_datetime(df["일자"])
df.dtypes
일자에 해당하는 타입이 pandas의 datetime 형식으로 변경된 것을 알 수 있습니다.
이러한 방식으로 datetime을 변경하여 pandas를 사용할 수 있습니다.
이번에는 판다스를 이용하여 선차트를 그려봅시다.
이런 함수를 이용해서 그릴 수 있습니다.
한번 실습해 봅시다.
import pandas as pd
df = pd.read_excel("파일경로")
df.set_index('일자', inplace = True)
df.plot(y = ["SK텔레콤", "현대모비스"])
이번엔 이동 기술 통계량을 알아봅시다.
이동 기술 통계량이란 시간의 흐름에 따라 일정 기간 동안의 수치자료의 기술 통계량을 계산한 값입니다.
방금 데이터의 이동 평균을 계산해 봅시다.
import pandas as pd
df = pd.read_excel("파일경로")
df.set_index('일자', inplace = True)
df["KT_MA"] = df["KT"].rolling(20).mean()
df.dropna(axis = 0, inplace = True)
df[["KT", "KT_MA"]].plot(title = "KT and KT Moving Average", legend = True)
dropna 함수는 결측치를 제거하는 함수,
legend는 범례를 표시하는 기능입니다.
크게 상관 안 해도 됩니다.
이런 식으로 이동 평균을 계산해 봤습니다.
마지막으로 주가 API를 이용해서 주가를 받아오는 방법도 알아봅시다.
pip install yfinance
이 모듈은 증권 수집 라이브러리입니다.
증권과 관련된 다양한 기능이 있어요.
이번에는 특정 주식의 주가를 받아와 봅시다.
import yfinance as yf
SKT = yf.download('017670.KS', '2020-11-01', '2020-11-13')
SKT
이런 식으로 해당 주식의 코드와 시작일, 종료일을 정해주면 해당 주식의 주가를 받아와 줍니다.
이를 이용해 원하는 주식의 분석을 할 수 있습니다.
마지막으로 복습하기
이번 시간에는 pandas를 이용하는 기초적인 방법과
pandas를 이용해 선 차트를 그리는 방법,
그리고 마지막으로 yfinance를 이용해 주가를 받아오는 방법을 배웠습니다.
다음 시간에 만나요 안뇽.
'T-SUM 멘토링' 카테고리의 다른 글
[T-SUM] 9주차 자료 - Numpy를 통한 몬테카를로 시뮬레이션 (0) | 2023.08.16 |
---|---|
[T-SUM] 7주차 자료 - Data Structure(List, Tuple, Dictionary), For 반복문 (0) | 2023.07.20 |
[T-SUM] 6주차 자료 - while 반복문, 라이브러리 (0) | 2023.07.12 |
[T-SUM] 5주차 자료 - if/else/elif 조건문, and/or (0) | 2023.07.06 |
[T-SUM] 4주차 자료 - 변수와 함수, 매개변수와 인수 (0) | 2023.06.22 |