[주식-프로그래밍] 6. 파이썬 - 주식 전체종목 재무데이터 가져오기 - 세번째
안녕하세요.
2020/05/26 - [코딩이야기/파이썬] - [주식-프로그래밍] 5. 파이썬 - 주식 전체종목 재무데이터 가져오기 - 두번째
[주식-프로그래밍] 5. 파이썬 - 주식 전체종목 재무데이터 가져오기 - 두번째
안녕하세요. 2020/05/25 - [코딩이야기/파이썬] - [주식-프로그래밍] 4. 파이썬 - 주식 전체종목 재무데이터 가져오기 [주식-프로그래밍] 4. 파이썬 - 주식 전체종목 재무데이터 가져오기 안녕하세요. 2
kang-stock-coding.tistory.com
우선 지난번 코드를 다시 한번 보겠습니다.
여기서 중요한 변화를 시작합니다.
자칫 잘못하면 코드에 에러가 발생하니 집중!!
현재 코드는 "함수fs_data(code)" 와 "본문" 2개로 구성되어 있죠.
여기서 본문 내용의 일부를 함수로 이동하겠습니다.
1) fs_data(code)에서 return하는 값이 df[0]이 아니라 필요한 행열만 뽑아낸 테이블을 리턴하게 변경합니다.
빨간색 박스를 return앞으로 옮기는 것이죠.
이때 변수값을 조금 변경합니다.
df[0]을 temp_df로 넣은 후 데이터를 처리하죠.
즉 앞선 변수 dataframe → temp_df가 되었구요. fs_data(code) → df[0]이 되었습니다.
그리고 return하는 값이 df[0]→temp_df로 변경 되었습니다.
fs_data 함수는 위와 같이 변경 됩니다.
이렇게 변경을 해도 지난 글에서 똑같은 포맷으로 출력이 됩니다.
이제 필요한것은 행열을 바꾸고, 종목을 순차적으로 넣어야 하는것이죠.
아래처럼 말입니다.
2) 이제 행열을 변환하고 연도별로 묶어주는 테이블을 만들고, 종목데이터를 순차적으로 덮는 함수를 만들어야 합니다.
code번호와 1)에서 만들었던 테이블을 받아서 함수가 실행됩니다.
종목 1개의 데이터를 옆으로 눞히는 함수가 되는것입니다.
엑셀표로 비쥬얼화 하게 되면 아래와 같은 테이블이 만들어지는 것이죠
3) 본문에서 종목코드작성
Loop(반복문for) 하여 1)의 함수와 2)함수를 반복해서 돌리고, 해당 데이터를 새로운 변수에 축적시켜 나갑니다.
여기서 print문은 for loop를 다돌고 나와서 1회만 출력하구요. 이때 앞선 글에서 적용한 tabulate를 쓰지는 않습니다.
이유는??
tabulate를 쓰게 되면 아래와 같이 지저분해집니다.
뭔가 원하는 테이블 형식이지만 이상하죠...
그렇기에 tabulate를 쓰지않고 그냥 테이블만 출력합니다.(근데 이또한 마음에 들지 않네요...해결방법을 찾아봐야겠습니다.)
이상 오늘도 매우 조금 발전하였습니다.
전체코드는 아래와 같습니다.
감사합니다.