지금, 나는 

Art is anything you can get away with.

반응형

Programming/혼공분석 9기.py 6

6주차 객체지향 API 방식으로 그래프 그리기

객체지향 API 방식은 pyplot과 달리, 피겨 객체와 서브플롯 객체를 만들고 이 객체의 메서드를 사용하는 방식이다. matplotlib.pyplot을 사용하면 주로 plt.으로 시작해서 함수들이 하나의 피겨 객체에 대한 상태를 공유한다. 객체지향 API 방식은 fig, ax = plt.subplots()로 우선 Axes 객체를 가지는 피겨를 생성한다. 이렇게 하면 하나의 피겨에 대해 여러 Axes를 추가할 수 있다. 즉, 하나의 도표에 여러 그래프를 넣을 수 있다는 것이다. 따라서 이 방식은 여러 데이터를 사용하고, 복잡한 그래프를 그릴 때 유용하다. 그래프의 경우, 엑셀의 피벗테이블과 유사하다. 행, 열, 그리고 값으로 이루어져 있어서 어떻게 보면 3차원 형식으로 볼 수 있다. 피벗테이블을 그래프로..

5주차 pyplot

단원의 이름이 이다. 파이썬으로 도표를 만들 때 대표적으로 matplotlib.pyplot을 이용한다. 맷플롯립의 최상위 객체 Figure는 모든 그래프 구성 요소를 담고 있다. (그래프를 그려놓을 도화지라고 생각하면 편하다) DPI(dot per inch) 또는 픽셀 크기로 설정해서 그래프 크기를 변동할 수 있고, 산점도에 대해서는 마커의 모양을 바꿀 수 있다. 또한 하나의 Figure 객체 안에 여러 개의 서브플롯을 담을 수도 있다! 선그래프, 막대그래프 등 여러 그래프를 그릴 수 있고 축 구간 등의 세밀한 설정 또한 가능하다. 오른쪽 막대그래프(기본 미션)의 경우, 오프셋이 치우쳐 있고, 눈에 띄지 않는다. 조금 조정하면 다음과 같이 깔끔하게 나타낼 수 있다.

4주차 통계

정리된 데이터에서 유의미한 관계를 찾기 위해 통계를 이용한다. 평균 일반적으로 (산술)평균은 값을 모두 더해 개수로 나눈 것을 의미한다. 이와 달리 가중 평균은 각 값의 중요도에 따라 가중치를 부여하여 계산하는 평균값이다. 여기서는 나누는 값이 개수가 아닌 가중치의 총합이다. 이외에도 평균을 구하는 방식은 다양하다. 따라서 요약된 통계량은 오해를 일으키기 쉽기에 주의해야 한다. 중앙값 말 그대로 순서대로 놓았을 때 중앙에 위치한 값이다. 중복된 값을 포함하느냐에 따라 값이 달라지기도 한다. (홀수의 경우 중앙의 두 값을 평균한다) 분위수 분위수는 데이터를 늘어 놓았을 때 균등한 간격으로 나누는 기준점을 말한다. 주로 사분위수를 사용하며, (25%, 50%, 75%)로 각각 (제1, 제2, 제3)사분위수로..

3주차 정리

3단원은 이다. 저번에 데이터를 수집했다면 이번엔 수집한 데이터를 편집한다. 전에 웹에서 데이터는 CSV, JSON, XML 등의 형식으로 주어진다고 배웠다. 이러한 데이터들은 파이썬의 '판다스'를 통해 '데이터 프레임'의 모습으로 정리된다. 파이썬의 방식으로 엑셀을 다루는 느낌이다. 파이썬은 문자열을 다루는 게 편리한 것 같다. 몇 가지 명령어로 셀 하나하나 필요한 부분만 남길 수 있고, 심지어 다른 열의 정보를 바탕으로 크롤링을 통해 누락된 셀을 자동으로 채울 수 있다. 더군다나 이 모든 과정을 함수로 자동화할 수 있다는게 가장 큰 장점인 것 같다. 같은 인덱스로 저장된 파일에 대해서 동일한 알고리즘으로 빠르게 원하는 모습으로 바꿀 수 있기 때문이다. 기본 미션 #2 데이터 프레임에서 열을 선택할 때..

2주차 데이터 수집

1주차에서 살펴봤듯이 제공되는 데이터베이스는 보통 CSV 혹은 JSON, XML 형식이다. 하지만 일반 개인이 DB로의 직접 접근을 허용하지는 않고 API라는 방식을 통해 간접적으로 이용할 수 있게 한다. 웹 기반 API에는 CSV보다 JSON이나 XML을 많이 사용한다. 웹 기반 API 즉, HTTP를 이용하게 되면 데이터는 텍스트 형식으로 전달된다. 따라서 데이터를 받은 후 파이썬 객체로 바꿔야 한다. 인증키를 받고, HTTP GET 방식으로 호출 URL을 작성하면 해당 파일을 열람할 수 있다. 이후 이 데이터는 그대로 사용하지 않고 다루기 쉽고, 보기 좋은 형태로 정제해야 한다. 하지만 데이터베이스에 원하는 정보가 없고, 웹에서 하나하나 얻어야 한다면 웹크롤링(웹 스크래핑)이라는 방법을 사용해야 한..

데이터 분석 1주차

데이터 분석은 쉽지 않은 작업이다. 양질의 데이터를 마련할 수 있어야 하고 데이터를 정제해서 사용하기 편하게 만들어야 하고 데이터 속에서 분석할 요소를 찾아야 하고 투명하고 합리적인 방법으로 분석해서 이해하기 쉽게 시각화해서 결론을 도출해야 하기 때문이다. 그래서 크롤링부터, 데이터베이스(sql), 통계학 등등 꽤 넓은 지식이 필요하다.. (아는 만큼 보이기에 많이 알수록 더 다양하고 명확한 분석이 가능하다) 이젠 국민 프로그램이 된 파이썬으로 데이터 분석이라니 기대된당^^ '혼공 학습단 8기'에서 썼던 구글 코랩 다시 쓰니까 좋다 뭘 깔아야 할 필요도 없고 메모리, 디스크 사용량도 볼 수 있고 셀 단위로 실행 가능해서 편리 그 잡채 기본 미션 #4 판다스 read_csv() 함수는 말 그대로 csv 파..

728x90