본문 바로가기

DINOLEARNING

[머신러닝] 사이킷런(Scikit-learn) 데이터의 특성 / 클래스 별 데이터 개수 / 크기 확인하기 사이킷런(Scikit-learn) 라이브러리는 의사결정 트리, 분류, 회귀 등의 알고리즘에 사용하기 적합한 함수 및 데이터를 제공하는 라이브러리로, 이번 글에서는 사이킷런에서 제공하는 데이터를 불러와 데이터의 특성, 클래스 별 데이터의 개수, 크기를 확인하는 방법에 대해서 살펴보도록 하겠습니다. 1. 데이터 불러오기 - iris_data 먼저, 사용할 사이킷런 데이터를 불러와야 하는데요, 그중 대표적인 iris_data 를 불러오도록 하겠습니다. from sklearn.datasets import load_iris iris = load_iris() 데이터를 불러와 iris 라는 변수에 저장해주었습니다. 2. 데이터의 특성 살펴보기 그 다음에, 데이터에 어떠한 특성(keys)이 있는지 살펴보려면 .keys.. 더보기
[머신러닝] train_test_split : 비율 설정 방법 - test_size 이전 글에서는 train_test_split() 함수를 이용하여 데이터를 train data와 test data로 나눌 때, 무작위로 나눌지 순차적으로 나눌지 설정하는 방법에 대해 살펴보았는데요, 이번에는 train data와 test data로 나눌 때 비율을 지정해주는 방법에 대해서 살펴보도록 하겠습니다. - train_test_split : 비율 설정 방법 train_test_split() 함수를 사용하여 데이터를 train data와 test data로 나눌 때, 기본값은 75 : 25 비율로 나누어지게 됩니다. 하지만, 데이터가 많이 없다면 학습할 데이터를 늘려주어야 하며, 데이터가 매우 많다면 오버피팅 문제를 방지하기 위해 학습할 데이터를 조금 줄여주는 게 좋을 수 있습니다. 따라서 각 상황에.. 더보기
[머신러닝] train_test_split : 순차적으로/무작위로 데이터 나누는 방법 train_test_split 함수는 데이터를 학습데이터의 입력값, 결과값과 테스트 데이터의 입력값, 결과값으로 데이터를 나눠주는 함수인데요, 설정을 통해 순차적으로 데이터를 나눌지, 무작위로 데이터를 나눌지 선택할 수 있답니다. 설정하는 방법은 매우 간단한데요, 아래 코드를 보면서 살펴보도록 하겠습니다. - train_test_split : 순차적으로/무작위로 데이터 나누기 train_test_split 함수에서 데이터를 무작위로 나눌지, 순차적으로 나눌지에 대해선 'shuffle'을 통해 설정할 수 있는데요, train_test_split 함수에서 shuffle은 기본값으로 shuffle = True 로 설정되어 있기 때문에, 따로 코드를 입력해주지 않아도 무작위로 나누어집니다. 하지만 만약 데이터를.. 더보기
[머신러닝] 사이킷런(Scikit-learn) 데이터 train data와 test data로 나누는 방법 사이킷런 데이터를 이용하여 머신러닝 모델을 학습시키려고 하면, 이 데이터를 train data와 test data로 나눠야 하는데요, 코드를 어떻게 작성해야 하는지 아래 코드를 보며 살펴보도록 하겠습니다. 1. 데이터 불러오기 먼저, 데이터를 불러오는 코드부터 살펴볼텐데요, 사이킷런 데이터에서 대표적으로 사용되는 iris data를 불러오는 코드를 작성해보겠습니다. from sklearn import datasets iris_dataset = datasets.load_iris() 이와 같이 입력한 뒤, 아래와 같이 iris_dataset.keys() 를 입력하고 실행하면, 'data'와 'target'이라는 array가 있는 것을 확인할 수 있습니다. iris_dataset.keys() # output .. 더보기
[머신러닝] 사이킷런(Scikit-learn) - iris(붓꽃) 데이터 불러와 데이터프레임으로 저장하기 사이킷런(Scikit-learn) 라이브러리는 의사결정 트리, 분류, 회귀 등의 알고리즘에 사용하기 적합한 함수 및 데이터를 제공하는 라이브러리로, 이번 글에서는 사이킷런에서 제공하는 데이터를 불러와 데이터프레임 형식으로 보는 방법에 대해서 살펴보도록 하겠습니다. - 사이킷런 데이터 불러오기 사이킷런 라이브러리에는 다양한 데이터가 들어있는데요, 그중 대표적인 데이터인 iris(붓꽃) 데이터를 가져와보겠습니다. from sklearn import datasets iris_dataset = dataset.iris() 먼저, sklearn 에서 데이터가 들어있는 datasets 라이브러리를 import 해준 다음, dataset.load_iris() 을 통해 iris 데이터를 가져와 iris_dataset 이.. 더보기
[머신러닝] 사이킷런(Scikit-learn) - sklearn 데이터 불러오기 (보스턴 주택데이터) 사이킷런(Scikit-learn) 라이브러리는 의사결정 트리, 분류, 회귀 등의 알고리즘에 사용하기 적합한 함수 및 데이터를 제공하는 라이브러리로, 이번 글에서는 사이킷런에서 제공하는 데이터를 불러와 데이터프레임 형식으로 보는 방법에 대해서 살펴보도록 하겠습니다. - 사이킷런 데이터 불러오기 사이킷런 라이브러리에는 다양한 데이터가 들어있는데요, 그중 보스턴 주택 데이터를 가져와보겠습니다. from sklearn import datasets boston_dataset = dataset.load_boston() 먼저, sklearn 에서 데이터가 들어있는 datasets 라이브러리를 import 해준 다음, dataset.load_boston() 을 통해 보스턴 주택 데이터를 가져와 boston_datase.. 더보기
[웹크롤링] 자바스크립트로 이루어진 페이지와 html로 이루어진 페이지를 크롤링 하는 코드가 다른가요? 1. html로 이루어진 페이지 html로 이루어진 페이지를 크롤링하는 것은 자바스크립트로 이루어진 페이지를 크롤링하는 것과 다르게 코드를 작성해야 하는지 궁금하실 수 있는데요, html로 이루어진 페이지와 자바스크립트로 이루어진 페이지를 크롤링하는 방법은 약간 다르답니다! html로 이루어진 경우 간단하게 url을 찾고 BeautifulSoup()를 이용하여 본문을 가져오면 되는데요, 기본적으로 다음과 같이 코드를 입력하면 됩니다. from bs4 import BeautifulSoup import requests url = "https://www.naver.com/" resp = requests.get(url,params) soup = BeautifulSoup(resp.content, 'lxml') 2.. 더보기
[웹크롤링] 자바 스크립트로 이루어진 페이지, json 형식으로 불러오는 방법은? 동적 페이지와 같이 자바스크립트로 이루어진 페이지를 json으로 불러온 뒤, 크롤링을 해야 경우가 있을 수 있는데요, 이러한 경우 어떻게 해야 할까요? 우선, 자바스크립트로 이루어진 페이지의 url을 찾아야 합니다. 이전 글에서 자바스크립트로 이루어진 페이지의 url을 찾는 방법에 대해 살펴보았는데요, 다시 간단하게 설명하자면, F12를 누른 뒤 [Network] 탭에서 "XHR", 또는 "JS" 버튼을 누르며 보이는 항목들을 클릭하면 됩니다. 그리고, 항목들을 미리보기(Preview) 하면서 해당되는 영역이 맞다면 "Headers" 에서 Request URL 부분을 복사하면 됩니다. 아래 이미지처럼 URL을 찾아서 복사하면 됩니다. 그리고나서, 아래와 같이 코드를 작성했다고 가정할 때, url = "자.. 더보기
[웹크롤링] 자바스크립트 페이지의 url 찾는 방법 자바스크립트로 이루어진 페이지 또는 영역을 크롤링하려면, 해당 페이지의 url을 알아야 하는데요, 자바스크립트 페이지의 url을 알아내는 방법은 F12를 누른 뒤 [Network] 탭에서 "XHR" 또는 "JS" 버튼을 누르며 보이는 항목들을 클릭해보면서 찾아야 합니다. 아래 페이지는 네이버 금융 페이지에서, [Network] 탭의 "XHR" 을 눌렀을 때 보이는 화면입니다. 아래 각 항목을 누르면 어느 영역을 나타내는 항목인지 가늠할 수 있는데요, 원하는 항목을 찾으면 오른쪽 "Headers"에서 "Request URL" 부분을 복사하면 됩니다. 한 URL 을 골라서 주소창에 입력해본 결과 아래와 같은 페이지를 확인할 수 있습니다. 따라서 이와 같이 해당 url을 찾으면 이제 이 url을 자신의 코드에.. 더보기
[웹크롤링] 자바스크립트 비활성 하는 방법 예를 들어, 구글에서 이미지를 크롤링할 때, html 말고도 자바스크립트로 이루어진 이미지가 있을 수 있는데요, 이러한 겨우 자바스크립트를 비활성 해서 이미지를 수집해야 합니다. 한편, 해당 페이지가 자바스크립트로 이루어졌는지 확인하는 경우에도 자바스크립트를 비활성하면 되는데요, 자바스크립트를 비활성하는 방법은 F12를 누른 뒤, [setting(톱니바퀴)] - [Preferences] - [Debugger] 에서 'Disable JavaScript' 를 체크하면 됩니다. 아래 이미지처럼 오른쪽 하단에 체크박스에 체크를 하면 됩니다. 그리고나서, F5를 눌러 페이지를 새로고침 했을 때, 해당 페이지가 나오지 않거나, 일부분이 안 보인다면 그 영역은 자바스크립트로 이루어졌다고 보면 됩니다. 저는 위 이미지.. 더보기