주식으로 배워보는 파이썬.
주식도 모르고 파이썬도 모르니 막막하군.. 일단 무조건 따라해보자.
오늘 배울 것 : pandas, dataframe, yfinance
pandas 는 데이터분석하는 사람들은 매우 익숙한 라이브러리라고 함.
아주 유용하니 잘 배워두라고..ㅎㅎ
판다스의 dataframe 형식을 이용하면 깔끔하게 표형태로 데이터를 볼수 있게 해준다고..
데이터가 얼마나 크든지 상관없이.
설치
pandas와 numpy 설치
!pip install pandas numpy
import
import pandas as pd
import numpy as np
pandas를 불러서 pd로 쓰겠다는 뜻
numpy를 불러서 np로 쓰겠다는 뜻.
기본 DataFrame만들어보기
data = {
'name' : ['영수','철수','영희','소희'],
'age' : [20,15,38,8]
}
df = pd.DataFrame(data)
df
(* DataFrame에서 D와 F는 대문자로!)
결과값은?
이게 DataFrame을 만드는 아주 기초.
주식데이터를 이용한 Pandas 실전
1) 엑셀데이터를 끌어다가 colab에 붙이기 -> 그냥 드래그로 끌어올 수 있음!
2) 엑셀을 DataFrame으로 읽기 / df변수에 넣기
pd.read_excel('종목데이터.xlsx')
df = pd.read_excel('종목데이터.xlsx')
3) 이러면 긴 줄을 모두 볼 필요 없이 앞에서5개, 뒤에서 5개 골라 볼 수 있다. ()안에 숫자를 넣으면 그만큼 보여줌
df.head()
df.tail()
df.head(20)
df.tail(20)
* 소수점 둘째자리까지 보여주기 명령어
pd.options.display.float_format = '{:.2f}'.format
이제 진짜 실전으로 가보자.
1) 어제 오른 종목들만 골라보기
change_rate가 0보다 큰 종목들만 보여주면 됨.
df[df['change_rate'] > 0]
2) per가 0 인 종목들을 제거하기
df = df[df['per'] > 0]
3) 순이익, 종가를 추가하기 : 살짝 연산 필요 .... 여기는 이해못함 주식개념까지 필요함.
per = 시가총액 / 순이익 = 주가 / 주당순이익
df['close'] = df['per'] * df['eps']
df['earning'] = df['marketcap'] / df['per']
4) date 컬럼을 없애기
del df['date']
5) pbr < 1 & 시총 1조 이상 & per < 20 을 추려보기
cond = (df['marketcap'] > 1000000000000) & (df['pbr'] < 1) & (df['per'] < 20)
df[cond]
... 여기부터는 따라가기 실패.
주식도 모르겠고 파이썬도 모르겠다 크앙
'Week I Learned' 카테고리의 다른 글
[SQL]스파르타코딩클럽3-3,4 본격 쿼리 작성해보기 스터디노트 (0) | 2023.02.13 |
---|---|
[SQL]연결하기 JOIN_스파르타코딩3주차강의노트 (0) | 2023.02.10 |
[파이썬]스파르타 코딩클럽으로 입문하기 (0) | 2023.02.06 |
[SQL]GROUP BY / ORDER BY 내가 원하는대로 묶고 정렬하기 (0) | 2023.02.03 |
[SQL]시작은 SELECT/FROM/WHERE (0) | 2023.02.02 |