목록전체보기 (24)
뒤죽박죽 데이터분석 일기장
안녕하세요. 오늘은 AI_School을 들은 6주차입니다. 이번 주에 배운 Exploratory Data Analysis(EDA) 내용을 복습해보겠습니다. EDA는 데이터의 특징을 조사하는 데이터 분석 기법입니다. 이 기법을 통해 다양한 가설을 세울 수 있고, 이 가설을 통해 유용한 정보를 찾아낼 수 있습니다. 또한 EDA를 이용하면 데이터를 시각화할 수 있어 데이터를 보다 쉽게 이해할 수 있습니다. 이번에 분석할 데이터 셋은 아파트 미분양 데이터입니다. 저는 이 데이터로 진행한 탐색적 데이터 분석과 시각화를 검토하겠습니다. 이번 포스트에서는 구체적인 코드보다 EDA가 진행되는 흐름에 중점을 둬서 작성해 보도록 하겠습니다. 1. 라이브러리 불러오기 import pandas as pd import nump..

안녕하세요. 이번 포스트에서는 네이버 증권 일일 시세 크롤링을 진행해 봤습니다. 저번 포스트에서는 특정 종목의 뉴스 기사를 크롤링 해왔는데 이번에는 일일시세를 크롤링을 해보겠습니다. 하지만, 저번에 기사를 크롤링 했을 때와는 조금 다른 방식으로 접근해야합니다. 저번에는 pandas 모듈을 import 했지만 이번에는 BeautifulSoup 과 requests 모듈도 import 해야합니다. # 라이브러리 로드 import pandas as pd import requests from bs4 import BeautifulSoup as bs 우선, 미리 한 페이지 일일시세을 출력하는 함수는 적어보겠습니다. # 종목 번호를 이용해 page에 따라 데이터를 읽어오는 함수 # """ 는 이 두개 사이의 행들은 주..

안녕하세요! 이번 포스트에서는 Pandas에서 read_html 이라는 기능을 통해서 테이블 형태의 표를 수집하는 방법을 알아보겠습니다! read_html의 기능을 제대로 이해하기 위해서 네이버 증권에서 데이터 스크래핑으로 진행해 보겠습니다. 우리의 목표는 이 페이지에 나타나 있는 뉴스들을 스크랩핑해서 저장하는 것입니다. 이 페이지의 URL은 https://finance.naver.com/item/news.naver?code=005930입니다. 네이버의 종목 코드는 005930 입니다. 즉, 위의 URL을 살펴보면 code=005930 이라고 적힌 것을 확인할 수 있습니다. 이렇게 특정 코드를 URL에 붙여서 넘기는 문구를 Query String이라고 합니다. 따라서 URL 뒤에 물음표 뒤에서부터 검색하..

안녕하세요. 이번 포스트에서는 판다스의 기초적인 DataFrame을 생성하는 방법과 수정하는 법을 정리해 보겠습니다. 판다스란? 월스트리트 퀀트 개발자 웨스 메키니가 금융 데이터에 대한 계랑적 분석을 수행하기 위해 고성능의 유연한 툴을 만들 필요가 있다고 행각하여서 개발해낸 데이터 분석 라이브러리입니다. 판다스는 주로 수치형 테이블과 시계열 데이터를 조작하고 운영하는데 사용됩니다. 판다스 import 그리고 DataFrame 형성 판다스를 사용하기 위해선 2가지의 라이브러리를 출력해 줍니다. # 필요한 라이브러리를 로드합니다. # pandas, numpy를 불러옵니다. import pandas as pd import numpy as np 저번 파이썬 시간에 배웠던 대로 판다스와 넘파이는 alias을 저장..

안녕하세요. Dayconic 입니다. 이번 포스트는 파이썬에서 다양한 기능들을 사용하기 위한 필수 단계인 모듈과 패캐지 개념에 대해서 알아보려고 합니다. 모듈이란? : 변수, 함수, 클래스를 하나의 파일(.py)로 모아서 코드를 작성한 것 패키지이란? : 여러개의 모듈 파일을 디렉토리로 구분하여 코드를 작성하는 방법 모듈을 만들어 보겠습니다. %%writefile ai_school.py data = 'python' def echo(msg) : print('ai school : ', msg) 위의 모듈을 생성하고 나서 import ai_school # import 모듈명 ;을 입력해 모듈을 불러올 수 있습니다. 아래의 코드는 colab의 지원하는 기능이고 파일을 생성할 수 있게 기능을 가지고 있습니다. %..

이번에는 입출력에 대해서 알아보겠습니다. 간단하게 정리하자면 이 2가지에 대해서 정리하려고 합니다. 1. 램 → 하드 2. 하드 → 램 램과 하드 사이의 입출력 속도를 향상 시키려면 pickle이라는 패키지를 사용해야 합니다. pickle 패키지를 이용해 입출력하면 직렬화 자동화를 통해 입출력 속도가 빨라진다는 장점이 있습니다. 우선, 램에서 하드로 저장하는 예를 들어 보겠습니다. class Msg: def __init__(self, data): self.data = data msg = Msg('AI School') msg.data # 결과 # 'AI School' 어떤 값을 저장하는 클래스를 생성에 문자열을 하나 넣어보겠습니다. 현재, 이 문자열은 RAM에 저장되어 있습니다. 따라서, 이번에는 파일 형..

안녕하세요. 이번 포스트는 저번 포스트에 이어서 클래스에 대해 더 알아보려고 합니다. 우선, 프로퍼티에 대해서 복습하려고 합니다. getter 와 setter 이 두 가지 메서드가 있는데요. getter 값을 가져오는 메서드 setter 값을 저장하는 메서드 파이썬에서는 @property 라는 데코레이터를 사용해 구현할 수 있습니다. @property @메서드이름.setter 이제 예시를 들어서 확인해 보겠습니다. 비밀번호를 입력하고 수정하는 class를 getter와 setter 메서드로 표현해 보겠습니다. class Person: def __init__(self, pw): self.hidden_pw = pw #getter @property def pw(self): print('getter') retu..

안녕하세요! 이번 포스트에서는 파이썬 강의 4일 차에 공부한 class에 대해서 복습하려고 합니다. 간단하게 클래스는 변수와 함수를 묶어서 코드를 작성하는 방법 합니다. 그리고 객체지향을 구현하는 문법이기도 합니다. 여기서 객체지향 이란 실제세계를 모델링하여 프로그램을 개발하는 개발 방법론입니다. 또한 협업을 용이하게 한다는 장접도 있습니다. 클래스 사용업은 저번 포스트에서 공부했던 함수 사용법과 유사합니다. 기존 함수 사용법은 : 함수선언(코드작성) > 함수호출(코드실행) 그러고 클래스 사용법은 : 클래스선언(코드작성) > 객체생성(메모리 사용) > 메서드실행(코드실행)과 같은 방식으로 진행됩니다. 여기서 메서드라는 단어는 쉽게 이렇게 생각하면 됩니다. 클래스 안에 있는 함수 메서드 클래스 바깥에 있는..