AI & DS/머신러닝(34)
-
[머신러닝] 주식 종목 추천 시스템 - (3) 데이터 전처리 & k-NN 모델 최근접 이웃 찾기
주식 종목 추천 시스템을 만들 때 필요한 데이터 전처리와k-NN모델을 이용하여 최근접 이웃을 찾고,최근접 이웃 호출 및 추천 주식 반환에 대해 알아보도록 하겠습니다.필요한 라이브러리 임포트import pandas as pdfrom sklearn.preprocessing import StandardScaler, OneHotEncoderfrom sklearn.compose import ColumnTransformerfrom sklearn.pipeline import Pipelinefrom sklearn.impute import SimpleImputer수치형 특성 리스트 정의num_features = ['marketCap', 'dividendYield', 'payoutRatio', 'beta', 'traili..
2024.08.14 -
[머신러닝] 주식 종목 추천 시스템 - (2) 데이터 수집
yfinance 라이브러리와 pandas를 사용하여S&P 500에 속한 회사들의 재무 정보를 수집하고이를 데이터프레임으로 변환하는 과정에 대해 알아보겠습니다.1. 라이브러리 임포트import pandas as pdimport yfinance as yffrom tqdm import tqdmpandas: 데이터 조작 및 분석을 위한 라이브러리 → 특히 데이터프레임을 다루는 데 유용yfinance: 야후 파이낸스 데이터를 손쉽게 가져올 수 있게 해주는 라이브러리tqdm: 루프의 진행 상황을 시각적으로 보여주는 진행률 표시줄 라이브러리DataFrameDataFrame은 pandas 라이브러리에서 제공하는 2차원 데이터 구조로, 행(row)과 열(column)로 구성된 데이터 테이블tqdm예시 코드from tqd..
2024.08.14 -
[머신러닝] 주식 종목 추천 시스템 - (1) yfinance 라이브러리 설치 & Ticker란?
yfinance 라이브러리 설치 및 설명!pip install yfinance!pip install --upgrade yfinance #로드가 안 될 경우 업그레이드가 필요import yfinance as yfTicker란 무엇인가?주식 시장에서 "티커(ticker)"는 특정 주식의 고유 식별자를 의미하며, 각 주식은 고유한 티커 심볼(ticker symbol)로 식별된다. 티커 심볼은 특정 회사나 펀드를 대표한다.예를 들어, Apple Inc.의 티커 심볼은 'AAPL', Microsoft의 티커 심볼은 'MSFT’이다.yf.Ticker(티커명).infoPython의 yfinance 라이브러리를 사용하여 Apple Inc. (AAPL) 주식의 52주 변동률(52-week change)을 가져온다.yf...
2024.08.14 -
[데이터분석] 데이터 크롤링 실습(2) - 인프런 크롤링
오늘은 인프런 사이트의 데이터 크롤링 실습을 진행하여 보도록 하겠습니다DataCrawling Pycharm Library Settingimport seleniumprint(selenium.__version__)from selenium import webdriverfrom selenium.webdriver.common.by import Byimport sysfrom selenium.webdriver.common.keys import Keysimport urllib.requestimport osfrom urllib.request import urlretrieveimport timeimport pandas as pdimport numpy as npimport re # 전처리를 위한 라이브러리chrome_opt..
2024.08.14 -
[데이터분석] 데이터 크롤링 실습(1)
파이참에 환경 세팅selenium 다운로드pip install seleniumpip install --upgrade piphomebrew 로 Mac에 chromedriver 설치brew install chromedriberBeautifulSoup1. 라이브러리 가져오기# beautifulSoup 라이브러리 가져오기import requestsfrom bs4 import BeautifulSoup 2. robots.txt 읽어보기(예) 다나와 사이트 : https://danawa.com/robots.txt → url 뒤에 /robots.txt 붙이기robots.txt : 법적 효력이 없기 때문에, 수정사항이 있어도 반영되지 않을 수 있음모든 User-agent 에 대해 /user_report/, /elec/M..
2024.08.14 -
[데이터분석] 데이터 크롤링
Crawling자동으로 웹페이지 데이터를 수집하는 행위너무 많은 크롤링은 서버에 과도한 부하를 주게 되어서 IP가 차단되는 상황이 발생할 수 있음Robots.txt와 사용자 에이전트(user agent)Robots.txt웹 사이트 및 웹 페이지를 수집하는 로봇들의 무단 접근을 방지하기 위해 만들어진 로봇 배제 표준/국제 권고안 → 법적인 통제력은 없으나 서로 간 예의일부 스팸 봇이나 악성 목적을 지닌 가짜 클라이언트 로봇은 웹 사이트에 진짜 클라이언트처럼 접근무단으로 웹 사이트 정보를 긁어가거나, 웹 서버에 부하를 줌⇒ 이런 로봇들의 무분별한 접근을 통제하기 위해 마련User agent웹 서버에 요청을 보내도 요청을 거부 당하는 경우 발생 → 무단 봇으로 짐작하고 웹 서버에서 접근을 막는 것우리가 스팸 ..
2024.08.14