본문 바로가기

Data Scientist

(39)
웹크롤링(Selenium) 간단한 검색, 네이버 로그인, yes24검색 후 장바구니 담기 Selenium https://selenium-python.readthedocs.io/getting-started.html 웹앱을 테스트하는데 사용하는 프레임 워크 Webdriver라는 API를 통해 다양한 브라우저를 제어 브라우저를 직접 동작시킴으로써, Javascript를 이용해 비동기적인 컨텐츠를 가져올 수 있음 Requests 라이브러리와는 다른 동적 페이지의 결과 또는 접근 가능 설치 방법 1) pip install selenium (프롬프트에서) 2) https://selenium-python.readthedocs.io/installation.html 에서 크롬용 드라이버 다운로드 3) 다운로드 받은 zip파일 압축풀면 exe파일 나오는데 주피터 노트북 실행폴더에 저장 4) from selen..
웹크롤링(Requests & BeautifulSoup) 웹페이지는 html(hyper text markup language) / CSS / Javascript 가 섞여있다. 웹 크롤링 (Web Crawler) - 웹 크롤러란 자동화된 방법으로 웹(Web)에서 다양한 정보를 수집하는 소프트웨어다. - 원하는 서비스에서 원하는 정보를 편하게 얻어올 수 있다. - 언어를 막론하고 구현할 수 있지만, 주로 Python을 이용한다. 파이썬으로 크롤링할 때, 주로 사용하는 라이브러리 Requests: 파이썬에서 동작하는 작고 빠른 브라우저 웹서버로부터 초기 HTML만 받을 뿐, 추가 CSS/JavaScript 처리 X 거의 모든 플랫폼에서 구동 가능 Selenium: 브라우저 X, 브라우저를 원격 컨트롤하는 테스팅 라이브러리 Chrome, Firefox, IE, pha..
사이킷런 주요 모듈정리 사이킷런은 ML 모델 학습을 위해서 fit( )을, 학습된 모델의 예측을 위해 predict( ) 메소드를 제공한다. 사이킷런에서는 분류 알고리즘을 구현한 클래스를 Classifier로, 그리고 회귀 알고리즘을 구현한 클래스를 Regressor로 지칭한다. 이 두가지를 합쳐서 Estimator 클래스라고 부른다. 즉, 지도학습의 모든 알고리즘을 구현한 클래스를 통칭해서 Estimator라고 부른다. cross_val_score( )와 같은 evaluation 함수, GridSearchCV와 같은 하이퍼 파라미터 튜닝을 지원하는 클래스의 경우 이 Estimator를 인자로 받는다. 인자로 받은 Estimator에 대해서 cross_val_score( ), GridSearchCV.fit( ) 함수 내에서 이..
sklearn 기초 - 붓꽃 품종 예측하기 사이킷런(scikit-learn)은 파이썬 머신러닝 라이브러리 중 가장 많이 사용되는 라이브러리다. pip install scikit-learn conda install sciket-learn import sklearn print(sklearn.__version__) pip 또는 conda로 사이킷런을 인스톨하고 임포트 해준다. 버전확인까지 해주는 습관을 들이는 것이 좋다. 첫 번째로 만들어볼 머신러닝 모델은 붓꽃 데이터 세트로 붓꽃의 품종을 분류(classification)하는 것이다. 가장 대표적이고 모르면 간첩이자 깔끔하게 정제된 데이터셋이기 때문에 입문용으로 모두가 안다고 한다... 붓꽃(iris) 데이터 세트는 꽃잎의 길이와 너비, 꽃받침의 길이와 너비 피처(Feature)를 기반으로 꽃의 품종..
군집화(K-means clustering) K - Means clustering K-평균은 군집 중심점(centroid)이라는 특정한 임의의 지점을 선택해 해당 중심에 가장 가까운 포인트들을 선택하는 군집화 기법이다. [각 클러스터의 거리 차이의 분산을 최소화 하는 방식으로 동작하는 비지도 학습] 군집 중심점은 선택된 포인트의 ①평균 지점으로 이동하고 ②이동된 중심점에서 다시 가까운 포인트를 선택, ③다시 중심점을 평균 지점으로 이동하는 프로세스를 반복적으로 수행한다. 모든 데이터 포인트에서 더이상 중심점의 이동이 없을 경우에 반복을 멈추고 해당 중심점에 속하는 데이터 포인트들을 군집화하는 기법이다. ♧ 군집 중심점을 설정하면 각 데이터는 가장 가까운 중심점에 소속된다. 중심점에 할당된 데이터들의 평균 중심으로 중심점 이동을 한다. 각 데이터는 ..
빅데이터를 지배하는 통계의 힘 빅데이터를 지배하는 통계의 힘 니시우치 히로무 저/신현호 역 비전코리아 | 2013년 07월 30일 | 원제 : 統計學が最强の學問である|| 정가 15,000원, 할인가 13,500원/사진 출처: yes24 19세기 런던에서 인류는 통계학의 힘을 빌려 만 단위의 인명을 앗아간 원일을 알아내는데 도전했고 원인 모를 전염병을 막기 위해 연구한는 학문을 역학이라고 한다. 당시 외과의사 였고 역학의 아버지 '존 스노(John snow, 1813~1858)가 한 행동은 단순했다. -콜레라로 목숨을 잃은 희생자 집마다 방문해 이것저것 묻고 주변 환경을 잘 관찰한다. -똑같은 상황 아래서 콜레라에 걸린 사람과 걸리지 않은 사람의 차이를 비교한다. -가설이 세워졌으면 대규모로 데이터를 모아 콜레라의 발병과 관련돼 있을 ..
판다스 한번에 정리하기 ♧ Pandas란? 데이터를 효과적으로 처리하고, 보여줄 수 있도록 도와주는 라이브러리 Numpy와 함께 사용되어 다양한 연계적인 기능을 제공 인덱스에 따라 데이터를 나열하므로 사전(Dictionary) 자료형에 가까움 시리즈(Series)를 기본적인 자료형으로 사용 # Series: 시리즈는 인덱스와 값으로 구성됨 (칼럼이 하나) # DataFrame: 다수의 Series를 모아 처리하기 위한 목적으로 사용 (칼럼이 여러개) 표 형태로 데이터를 손쉽게 출력하고자 할 때 사용 가능 ♧ 파일 읽어오기 다양한 포맷으로 된 파일을 DataFrame으로 로딩할 수 있다. read_csv( ) / read_table( ) / read_fwf( ) read_csv와 read_table의 차이는 필드 구분 문자(de..
넘파이 한번에 정리하기 나동빈 님, 파이썬 머신러닝 완벽 가이드 기반으로 작성했습니다. Numerical Python: Numpy pip install numpy #또는 conda install numpy import numpy as np 기반 데이터 타입은 naddray이다. # Numpy의 차원 1차원 축(행): axis 0 -> Vector 2차원 축(열): axis 1 -> Matrix 3차원 축(채널): axis 2 -> Tensor(3차원 이상) array_int = np.array([1,2,3]) array_float = array_int.astype('float64') array_float_int = array_float.astype('i..