목록분류 전체보기 (43)
나의 분석일기 ♬

군집 분석(Cluster Analysis)군집 분석이란?각 데이터의 유사성을 측정하여 다수의 군집으로 나누고 군집 간의 상이성을 확인하는 분석 군집 분석을 수행하려면 개체 간의 유사성, 비유사성을 정의하고 측정해야됨유사성 ↑ : 같은 군집에 속할 가능성 ↑ 비유사성 ↑ : 다른 군집에 속할 가능성 ↑ 유사성의 척도- 상관 계수(correlation coefficient)두 변수 간의 선형 관계의 강도를 측정- 코사인 유사도(cosine similarity)두 벡터 사이의 코사인 값으로 0에서 1사이의 값을 가짐두 벡터가 정확히 동일하면 코사인 유사도는 1, 완전히 다르면 0비유사성의 척도거리(distance)거리가 가까울수록 유사성이 높고, 거리가 멀수록 유사성이 낮음- 유클리드 거리(Euclide..

[웹 크롤링]OPEN APIREST APIHTTP URI를 통해 자원을 명시하고, HTTP Method (POST, GET, PUT, DELETE)를 통해 해당 자원에 대한 CRUD OPERATION을 적용하는 것을 의미한다.즉, REST는 자원 기반의 구조 (ROA: Resource Oriented Architecture) 설계의 중심에 Resoure가 있고 HTTP Method를 통해 Resource를 처리하도록 설계된 아키텍쳐를 의미한다.웹의 모든 자원에 고유한 ID인 HTTP URI 를 부여한다.- 영화진흥위원회 오픈 API 정보url = https://www.kobis.or.kr/kobisopenapi/homepg/apiservice/searchServiceInfo.do# 필수 라이브러리 불러오..

[웹 크롤링]네이버 블로그 업로드 자동화(SELENIUM & ChatGPT)1. 필요한 라이브러리 불러오기import seleniumimport timefrom selenium import webdriverfrom selenium.webdriver.common.action_chains import ActionChainsimport pyperclip #복붙에 사용할 모듈from selenium.webdriver.common.keys import Keys # ctrl + v 를 위해 import getpass #민감한 정보를 입력받는 모듈2. 네이버 로그인 함수def login_naver(id_, pw_): driver = webdriver.Chrome() driver.get("https://ww..

[웹 크롤링]동적 웹 크롤링로봇 배제 표준 문서웹 사이트에 로봇이 접근하는 것을 방지하기 위한 규약일반적으로 접근 제한에 대한 설명을 robots.txt 기술해 놓고 루트 디렉토리에 위치 시킨다.이 규약은 권고안이며, 로봇이 robots.txt 파일을 읽고 접근을 중지하는 것을 목적으로 한다.접근 방지 설정을 하였다고 해도, 다른 사람들이 그 파일에 접근할 수 있다데이터 수집 시 주의 사항로봇 배제 표준이 권고안이라도 불법으로 데이터를 수집하여 영업 혹은 저작권 침해에 해당된다면 법적 제재를 받을 수 있다.https://ko.wikipedia.org/wiki/%EB%A1%9C%EB%B4%87_%EB%B0%B0%EC%A0%9C_%ED%91%9C%EC%A4%801. SELENIUM(셀레니움)Selenium은..

[웹 크롤링]정적 웹 크롤링1. BeautifulSoupHTML 문서에서 원하는 부분출 추출해내는 라이브러리'requests'는 HTML을 텍스트 형태로 출력할 뿐이지 실제 HTML 태그를 다루지는 않는다.BeautifulSoup 라이브러리는 위의 텍스트 결과를 실제 HTML 코드로 변환해준다.- BeautifulSoup()문자열 HTML 코드를 실제 HTML 코드로 변환해주는 함수BeautifulSoup(문자열, 'html.parser')# 문자열을 HTML 코드로 해석해서 읽어라 - find_all()HTML 코드에서 우리가 원하는 부분을 모두 가져오는 함수원하는 부분을 지정할 때 사용하는 것은 태그와 Selector해당 태그의 모든 HTML 코드를 리스트 형태로 반환# 실제HTML코드.find_al..

웹 크롤링 기초1. 크롤링의 종류정적 크롤링-웹에 있는 정적인 데이터를 수집할 때 사용정적인 데이터란 로그인과 같은 사전 작업 없이 바로 볼 수 있는 데이터새로고침을 하지않는 이상 변하지 않는 데이터주소를 통해 요청받고 결과를 전달해주고 종료 동적 크롤링웹에 있는 동적인 데이터를 수집할 때 사용동적인 데이터는 입력, 클릭, 로그인과 같이 페이지 이동 시 얻을 수 있는 데이터단계적 접근이 필요하기 때문에 수집 속도가 느리지만 수집 대상에 한계가 거의 없다는 큰 장점연속적인 접근이 가능, 페이지 이동이 필수적이거나 페이지 안에 정보가 은닉되어 있을 경우 사용 정적 크롤링동적 크롤링연속성주소를 통한 단발적 접근 속도빠름느림수집 성능수집 대상에 한계가 있음수집 대상에 한계가 거의 없음 2. 라이브러리1. tim..
[SQL] Analytic SQL_Window 절Window 절 = { ROWS | RANGE }BETWEEN{ UNBOUNDED PRECEDING | CURRENT ROW | value_expr { PRECEDING | FOLLOWING }AND{ UNBOUNDED FOLLOWING | CURRENT ROW | value_expr { PRECEDING | FOLLOWING }| { UNBOUNDED PRECEDING | CURRENT ROW | value_expr PRECEDING} Window 절의 상세 구문 설명구문구문 설명ROWS | RANGEWindow의 개별 row를 정의함. Rows는 물리적인 row를, Range는 논리적인 row를 의미. Order by 절이 없으면 해당 구문은 기술..

Analytic SQL_집계 Analytic집계(Aggregate) Analytic SQLsum(), max(),min(),avg(),count() 와 같은 집계 함수를 window를 이용하여 로우 레벨로 자유 자재로 집계할 수 있는 기능 제공OVER ([ Partition 절 ] → 그룹화 컬럼명[ Sorting 절 ] → 정렬 컬럼명(Window 이동 방향 기준 컬럼 명)[ Window 절 ] → Window 범위(Rows, Range)) - SUM() Analytic SQL 활용select order_id, line_prod_seq, product_id, amount , sum(amount) over (partition by order_id) as total_sum_by_ord , sum(am..