반응형

파이썬 24

[머신러닝] Decision Tree(결정트리) [스마트인재개발원]

Decision Tree(결정트리) Tree를 만들기 위해 예/아니오 질문을 반복하며 학습 분류와 회귀에 모두 사용가능 타깃 값이 한개인 리프 노드를 순수노드라고 한다. 모든 노드가 순수 노드가 될때 까지 학습하면 복잡해지고 과대적합이 된다. 새로운 데이터 포인트가 들어오면 해당하는 노드를 찾아 분류라면 더 많은 클래스를 선택하고, 회귀라면 평균을 구한다. Decision Tree(결정트리) 과대적합 제어 사전 가지치기(pre-pruning) : 노드 생성을 미리 중단하는 방법 사후 가지치기(pruning) : 트리를 만든후에 크기가 작은 노드를 삭제하는 방법 트리의 최대깉이나 리프 노드의 최대 개수를 제어 노드가 분할 하기 위한 데이터 포인트의 최소 개수를 지정 주요 매개변수(Hyperparameter..

[머신러닝] KNN을 이용한 비만도 분석

import pandas as pd import matplotlib.pyplot as plt from sklearn.datasets import load_iris # sklearn에서 제공하는 붓꽃 데이터 from sklearn.model_selection import train_test_split from sklearn.neighbors import KNeighborsClassifier from sklearn.linear_model import LinearRegression 1. 문제정의 500명의 키와 몸무게, 비만도 라벨을 통해서 비만을 판단하는 모델을 만들어보자2. 데이터 수집 2. 데이터 수집 data = pd.read_csv('bmi_500.csv', index_col = "Label" #La..

[웹 크롤링] Gmarket 100 가져오기로 창없는 크롤링하기

먼저 Gmarket에서 인기순위 1위인 상품의 상품명, 가격, 카테고리 정보를 가져와 보자. from selenium import webdriver as wb import pandas as pd import time driver = wb.Chrome() url = "http://corners.gmarket.co.kr/Bestsellers" driver.get(url) # 단수, 복수 잘보자! # elements 복수는 list로 가져와짐 # no1인 상품 클릭! div = driver.find_element_by_css_selector("p#no1 + div") div.click() itemTitle = driver.find_element_by_css_selector("h1.itemtit") itemPr..

[Data Science] 큰데이터 프레임/큰 시리즈를 살펴볼때 도움이 되는 함수

큰 데이터프레임을 살펴볼때 데이터프레임.shape 데이터프레임의 행과 열수를 알수있다. (행수, 열수) 데이터프레임.columns 어떤 컬럼들이 있는지 확인할수있다. 데이터프레임.info() 각 컬럼들의 기본 정보를 한눈에 볼수있다. 데이터프레임.describe() 각 컬럼들에 대한 기술통계정보를 보여준다. 데이터프레임.sort_values(by="") by값을 기준으로 정렬한다. ascending = False를 하면 내림차순으로 정렬된다. 디폴트는 오름차순 inplace = True를 해야 정렬된 값이 원본에 저장된다. 디폴트는 False다. 큰 시리즈를 살펴볼때 .unique() 중복되는 값을 뺀 값만 보여준다. .value_counts() 몇개인지 횟수를 세준다. .describe() 시리즈 요약값

[Data Science] pandas라이브러리 정리

pandas 라이브러리 데이터 조작 및 분석을 위한 라이브러리 Series Class : 1차원 :인덱스 + 값 DataFrame Class : 2차원 :행과 열을 가지는 표와 같은 형태 :서로 다른 종류의 자료형을 저장 할수있음 import pandas as pd로 임폴트하고 보통 pd로 불여부른다. import pandas as pd Series 사용(1차원) list1 = [996231, 654615, 452305, 44645] city = ['서울', '부산', '인천', '대구'] population = pd.Series(list1, index = city) population Series 값, 인덱스, 데이터 타입 확인 population.values # 값 확인 population.index..

주피터 노트북 마크다운

마크다운 연습하면 좋은 사이트 https://dillinger.io/ Online Markdown Editor - Dillinger, the Last Markdown Editor ever. Make something great today! dillinger.io https://stackedit.io/app# StackEdit stackedit.io esc = 커맨드 모드 커맨드 모드에서 F -> 변수명 찾아서 바꾸기 m -> 마크다운 모드로 바꿈 **두껍게** -> 글을 두껍게 바꿔줌 *날려쓰기* -> 글을 날려써지게 해줌 번호가 있는 목록 아래처럼 적으면 번호가 있는 목록(리스트)을 만들 수 있습니다. 1. 첫 번째 할일입니다. 2. 두 번째 할일입니다. 3. 세 번째 할일입니다. 번호가 없는 목록 숫..

파이썬 2021.06.05

[머신러닝] 서울시 CCTV현황으로 선형회귀 구하기

먼저 데이터 분석과 전처리부터 한후 선형회귀를 구할거다. 서울시 구별 CCTV 현황 분석하기 서울시 각 구별 CCTV수 파악 인구대비 CCTV 비율을 파악해서 순위매기기 인구대비 CCTV의 예측치를 확인하고, CCTV가 부족한 구 확인 # numpy : 고성능 과학계산을 위한 라이브러리, 다차원 데이터 # pandas : 데이터를 표현식으로 보여준다. 1,2차원 데이터 # matplotlib : 데이터 시각화 import numpy as np import pandas as pd import matplotlib.pyplot as plt 1. csv파일 읽어오기 - 서울시 구별 CCTV현황 cctvSeoul = pd.read_csv('CCTV_in_Seoul.csv', encoding = 'utf-8') #..

[머신러닝] 과대적합과 과소적합 & KNN(K- 최근접 이웃 알고리즘)

일반화 훈련 데이터로 학습한 모델이 예측 데이터에 대해 정확히 예측하도록 하는것 trian(훈련)과 test(예측) 데이터의 비율이 7:3 과대적합과 과소적합의 중간 같은 느낌 예측률이 제일 높다 과대적합 훈련 데이터에 너무 적합되어서 예측 데이터를 넣었을 때 제대로 작동되지 않음 예를 들어 훈련 데이터로 축구공을 넣어서 학습시켜 둥글면 공이라고 인식시키고 싶은데 훈련 데이터에 너무 적합되어 농구공, 야구공 같은 것들은 공이라고 인식하지 못하고 축구공만 공이라고 인식한다. 데이터의 칼럼수가 증가할 수 록 과대적합 확률 증가 train데이터가 많을수록 과대적합 확률 증가 훈련 데이터에는 오차가 적은데 예측 데이터에는 오차가 증가하는 현상 (여기서 오차는 실제 데이터랑 얼마나 다른지 정도로 보면 된다.) (..

[웹 크롤링] 페이지 다운과 이미지 크롤링

페이지 다운을 이용해서 유튜브에서 영상의 제목, 조회수 크롤링 from selenium import webdriver as wb from selenium.webdriver.common.keys import Keys from bs4 import BeautifulSoup as bs import pandas as pd import time # 1. 크롬 드라이버를 실행해서 유튜브 화면 실행 driver = wb.Chrome() url="https://www.youtube.com/results?search_query=%EC%82%AC%EB%82%98%EA%B3%A0" driver.get(url) 페이지 다운 Keys.PAGE_DOWN 컴퓨터가 페이지 스크롤을 내릴수있게 해준다. 아래는 유튜브의 영상 제목과 영상..

[웹크롤링] Selenium 모듈과 tqdm라이브러리

라이브러리랑 모듈의 차이 모듈이란 함수나 변수 또는 클래스를 모아 놓은 파일이다. 모듈은 다른 파이썬 프로그램에서 불러와 사용할 수 있게끔 만든 파이썬 파일이라고도 할 수 있다. 다른 사람들이 이미 만들어 놓은 모듈을 사용할 수도 있고 우리가 직접 만들어서 사용할 수도 있다. 파이썬 라이브러리는 파이썬을 설치할 때 자동으로 설치되는 파이썬 모듈을 말한다. Selenium 모듈 웹페이지를 제어하기 위한 모듈 selenium모듈은 설치가 따로 필요하다. !pip install selenium 를 주피터노트북에 넣어 실행하면 설치가 된다. selenium모듈에 있는 함수들을 임폴드해주자! webdriver = 웹페이지를 제어하기 위한 모듈 >> 웹 그자체가 됨! Keys = 컴퓨터의 키보드와 같은 역할 모듈,..

반응형