brunch

You can make anything
by writing

C.S.Lewis

by 유자 Jan 13. 2023

혼공학습단 9기 2주차 / 데이터분석 with 파이썬

1주차 다른 분들의 공부글을 보니 아무래도 커피쿠폰은 글렀다.

목표를 6주 출석하는 것으로 낮추었다. 가볍게 가자.


생각보다 분량이 많았는데, 한 페이지 한페이지가 다 신경써서 봐야할 내용이라서 시간이 오래 걸리는 부분이었다.



2-1. API


공공기관에서 공문서를 작성하거나,

법원에 소장을 제출할 때 지켜야 할 양식이 있다.

문과가 이해한 API는 딱 이 정도의 느낌이다.


통신으로 정보를 주고 받기 위해서 정해진 규칙의 명령어를 사용하면, 정해진 규칙의 답변이 돌아온다.


각 사이트마다 이 규칙(API)을 문서로 정해두고 공개두었는데, 처음 사용하는 사람에게는 읽는 것조차 난해해서 익숙해질 시간이 필요하다.


API는 워낙 많은 사람들이 최대한 쉽게 설명해주는 강의가 많아서 이해가 될 때까지 이것 저것 많이 들어보는 게 도움이 많이 되었다.


https://youtu.be/ogT267HvNuQ


https://youtu.be/fBbRFhAGEIE


https://youtu.be/iyFHfzCRHA8




기본적으로 데이터를 다룰 때, 데이터 형식을 많이 고민해야하는데...

그래서 그런지 88페이지부터 이해하기가 어려웠다.


딕셔너리와 리스트, JSON...


일단 이것저것 테스트를 하나씩 다 해보고 넘어갔다... 이해는 나중에 하는 걸로.


XLM은 자주 보이는 형태가 아니여서 역시나 빠르게 훑고 넘어간다. 


API로 20대가 가장 좋아하는 도서 찾기

도서관 정보나루 사이트 회원가입이 필요해졌다.

회원으로 가입해야 API 인증키를 발급받을 수 있다. 발급 신청을 하고 나서 3시간 안으로 승인이 난 것 같다. 생각보다 빨랐다.



챕터 2-2. 웹 스크래핑 사용하기

데이터 분석을 한다는 기술 개발을 하게 되면 도둑질을 잘 해야한다.

웹 스크래핑이라고 표현하지만 그냥 남의 홈페이지에 들어가서 거기 있는 데이터를 다 훔쳐오는 거다. 분명히 홈페이지 개발자는 로봇의 접근을 막는 코드를 삽입했을텐데 굳이 이걸 뚫고 들어가는 방법들도 많더라.


데이터를 하나씩 손으로 눈으로 찾기에는 시간이 오래 걸리고, 대용량의 데이터들을 한 꺼번에 수집을 하기 위해서는 웹 스크래핑을 이용해 필요한 데이터를 찾아야한다.


하지만 HTML 기반으로 된 홈페이지에서 이 데이터를 찾기 위한 코드를 작성하는 것도 꽤나 험난한 일이다.

수 많은 div와 td와 th와 p 사이에서 내가 원하는 데이터가 나올 때까지 뒤적거려야 했다... 이것도 좀 더 쉽게 할 수 있는 방법이 있는지 찾아봐야겠다.


게다가 기본 미션인 이 파트를 하다가 수많은 에러를 만났는데 정말 기본적인 실수였다.


맨 처음에 이렇게 코딩했다가 자꾸 에러값만 출력되길래 뭐가 문제인가

한 줄씩 print 해서 변수값을 확인했는데,

for 문을 다 끝내고 리턴을 해야되기 때문에, 띄워쓰기를 한 탭을 없애야 했다.


파이썬으로 할 경우 탭 간격까지도 코드의 일부이기 때문에 주의를 좀 더 기울여야겠다.



기본 미션




선택 미션

4) df.loc[::2, 'col1':'col2']


손으로 계산해볼까 하다가 그래도 코드로 먼저 구현해봤다.


#혼공 #혼공분석 #혼공학습단

브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari