본문 바로가기
주식공부 feat. 파이썬

6. 엑셀 주가 데이터 분석하기 feat. 판다스 describe

by 에쓰지 2022. 4. 9.

지난 회차에 쥬피터 노트북을 사용하여 주가 데이터를 엑셀로 다운로드 받을 때 등락률 더하고 거래량 그래프를 그리는 방법을 알아봤습니다.

2022.04.02 - [주식공부 feat. 파이썬] - 5. 주가 데이터 엑셀로 다운로드 받기 확장판 feat.등락률 + 거래량

 

5. 주가 데이터 엑셀로 다운로드 받기 확장판 feat.등락률 + 거래량

지난 회차에 쥬피터 노트북을 사용하여 주가 데이터를 엑셀로 다운로드 받을 때 이동평균을 더하는 방법을 알아봤습니다. 2022.03.30 - [주식공부 feat. 파이썬] - 4. 주가 데이터 엑셀로 다운로드 받

pmxsg.tistory.com

 

이번 회차에는 다운로드 엑셀자료를 분석하는 법을 알아보겠습니다.

파이썬의 판다스 라이브러리에 자료를 분석해 주는 함수가 있습니다.

이를 이용해 주가 자료를 분석해 보겠습니다.

 

>>>  엑셀 주가데이터 분석하기  

         feat. 판다스 describe( )

 

1. 주가 데이터 다운로드 및 그래프 그리기 코드

이번 회차는 시가총액 8위인 삼성SDI 입니다.

지난 회차에 했던 엑셀 다운로드를 먼저 해보겠습니다.

이번에는 "pykrx" 라는 라이브러리를 사용해 보겠습니다.

Jupyter Notebook을 열고, 아래의 코드를 입력하시면 됩니다.

!pip install pykrx
from pykrx import stock

df = stock.get_market_ohlcv("20210401", "20220401", "006400")
df['등락률'] = df['종가'].pct_change()
df.to_excel('Stocks/삼성SDI.xlsx')

등락률을 포함해서 다운로드를 받았습니다.

from pykrx import stock
import matplotlib.pyplot as plt
import pandas as pd
import matplotlib
matplotlib.rcParams['font.family'] ='Malgun Gothic' 
matplotlib.rcParams['font.size'] = 15
matplotlib.rcParams['axes.unicode_minus'] = False 

df=pd.read_excel('./Stocks/삼성SDI.xlsx')

plt.figure(figsize=(15,10))
plt.xticks(rotation=45)
plt.plot(df['날짜'],df['종가'], label='종가', linewidth=3, color='red')
plt.xlabel('20210401~20220401', color='red', loc='right') #left, center, right
plt.ylabel('단위: 원', color='red', loc='top') # top, center, bottom
plt.legend()
plt.title('삼성SDI', color='red')
plt.grid(axis='y')
plt.savefig('Stocks/삼성SDI.png',dpi=100)

plt.figure(figsize=(15,5))

plt.bar(df['날짜'],df['거래량'], color='green')
plt.title('삼성SDI 거래량')
plt.xlabel('20210401~20220401', color='green', loc='right') #left, center, right
plt.ylabel('단위: 1,000,000 주', color='green', loc='top') # top, center, bottom
plt.grid(axis='y')
plt.savefig('Stocks/삼성SDI 거래량.png',dpi=100)

종가 기준의 그래프와 거래량 그래프를 함께 그려봅니다.

 

2. 요약정보 구하기 - describe( )

파이썬의 판다스 라이브러리는 데이터를 분석하고 조작하는 데 유용한 프로그램입니다.

그 중에 describe( )는 데이터 전체의 요약정보를 알려줍니다.

코드는 간단히 만들어 놓은 데이터프레임뒤에 ".describe()"만 붙여주면 됩니다.

df.describe()

"count" : 총 데이터 수 - 여기서는 기간을 나타냅니다. 248일

"mean" : 데이터의 평균 - 종가기준으로 평균이 673,338 원이 지난 1년간 평균가격입니다.

현재가격이 600,000원이니 지난 1년간 하락세 였네요.

"std" : 데이터 표쥰편차

"min" : 데이터 최소값 - 52주 최소값을 보려면 저가의 최소값인 462,500원 입니다.

"max" : 데이터 최대값 - 52주 최대값을 보려면 고가의 최대값인 828,000원 입니다.

25% , 50%, 75% : 백분위수의 각 지점으로, 분포를 반영해 평균을 보완하는 목적으로 사용합니다.

 

df_s=df.describe()
df_s.to_excel('Stocks/삼성SDI_s.xlsx')

 

위 내용을 엑셀로도 저장할 수 있습니다.

 


삼성SDI 엑셀파일 + 그래프 :

 

삼성SDI.xlsx
0.02MB
삼성SDI_s.xlsx
0.01MB
삼성SDI.png
0.07MB
삼성SDI 거래량.png
0.02MB

 

아직은 계속 공부중이라 이것저것 자료들 만드는 것에 집중하고 있습니다.

혹시 유용하다 생각하시면 가져다 쓰시면 됩니다.


from pykrx import stock

df = stock.get_market_ohlcv("20210401", "20220401", "006400")
df['등락률'] = df['종가'].pct_change()
df.to_excel('Stocks/삼성SDI.xlsx')
from pykrx import stock
import matplotlib.pyplot as plt
import pandas as pd
import matplotlib
matplotlib.rcParams['font.family'] ='Malgun Gothic' 
matplotlib.rcParams['font.size'] = 15
matplotlib.rcParams['axes.unicode_minus'] = False 

df=pd.read_excel('./Stocks/삼성SDI.xlsx')

plt.figure(figsize=(15,10))
plt.xticks(rotation=45)
plt.plot(df['날짜'],df['종가'], label='종가', linewidth=3, color='red')
plt.xlabel('20210401~20220401', color='red', loc='right') #left, center, right
plt.ylabel('단위: 원', color='red', loc='top') # top, center, bottom
plt.legend()
plt.title('삼성SDI', color='red')
plt.grid(axis='y')
plt.savefig('Stocks/삼성SDI.png',dpi=100)

plt.figure(figsize=(15,5))

plt.bar(df['날짜'],df['거래량'], color='green')
plt.title('삼성SDI 거래량')
plt.xlabel('20210401~20220401', color='green', loc='right') #left, center, right
plt.ylabel('단위: 1,000,000 주', color='green', loc='top') # top, center, bottom
plt.grid(axis='y')
plt.savefig('Stocks/삼성SDI 거래량.png',dpi=100)
df_s=df.describe()
df_s.to_excel('Stocks/삼성SDI_s.xlsx')

 

 

 종목별 분석자료 

 

1. 삼성전자

2022.03.31 - [주식공부 feat. 파이썬/종목별 분석] - 1. 삼성전자 분석 자료 정리 feat. 파이썬

 

1. 삼성전자 분석 자료 정리 feat. 파이썬

파이썬 공부 중에 주식 분석을 할 수 있는 코드들을 알게 되었고 알고만 있다면 바로 잊어버릴 수도 있고 해서 블로그에 하나씩 알게된 코드를 올려보려 합니다. 파이썬에 대해서 전혀 몰라도

pmxsg.tistory.com

 

2. LG에너지 솔루션

2022.03.31 - [주식공부 feat. 파이썬/종목별 분석] - 2. LG에너지 솔루션 분석 자료 정리 feat. 파이썬

 

2. LG에너지 솔루션 분석 자료 정리 feat. 파이썬

파이썬 공부 중에 주식 분석을 할 수 있는 코드들을 알게 되었고 알고만 있다면 바로 잊어버릴 수도 있고 해서 블로그에 하나씩 알게된 코드를 올려보려 합니다. 파이썬에 대해서 전혀 몰라도

pmxsg.tistory.com

 

3. SK하이닉스

2022.03.31 - [주식공부 feat. 파이썬/종목별 분석] - 3. SK 하이닉스 분석 자료 정리 feat. 파이썬

 

3. SK 하이닉스 분석 자료 정리 feat. 파이썬

파이썬 공부 중에 주식 분석을 할 수 있는 코드들을 알게 되었고 알고만 있다면 바로 잊어버릴 수도 있고 해서 블로그에 하나씩 알게된 코드를 올려보려 합니다. 파이썬에 대해서 전혀 몰라도

pmxsg.tistory.com

 

 

4. 네이버

2022.04.02 - [주식공부 feat. 파이썬/종목별 분석] - 4. 네이버 분석자료 정리 feat. 파이썬

 

4. 네이버 분석자료 정리 feat. 파이썬

파이썬 공부 중에 주식 분석을 할 수 있는 코드들을 알게 되었고 알고만 있다면 바로 잊어버릴 수도 있고 해서 블로그에 하나씩 알게된 코드를 올려보려 합니다. 파이썬에 대해서 전혀 몰라도

pmxsg.tistory.com

 

5. 삼성바이오로직스

 

2022.04.04 - [주식공부 feat. 파이썬/종목별 분석] - 5. 삼성바이오로직스 분석 자료 정리 feat. 파이썬

 

5. 삼성바이오로직스 분석 자료 정리 feat. 파이썬

파이썬 공부 중에 주식 분석을 할 수 있는 코드들을 알게 되었고 알고만 있다면 바로 잊어버릴 수도 있고 해서 블로그에 하나씩 알게된 코드를 올려보려 합니다. 파이썬에 대해서 전혀 몰라도

pmxsg.tistory.com

 

6. 삼성전자 우선주

2022.04.04 - [주식공부 feat. 파이썬/종목별 분석] - 6. 삼성전자 우선주 분석 자료 정리 feat. 파이썬

 

6. 삼성전자 우선주 분석 자료 정리 feat. 파이썬

파이썬 공부 중에 주식 분석을 할 수 있는 코드들을 알게 되었고 알고만 있다면 바로 잊어버릴 수도 있고 해서 블로그에 하나씩 알게된 코드를 올려보려 합니다. 파이썬에 대해서 전혀 몰라도

pmxsg.tistory.com

 

댓글