개인공부

개인공부/알고리즘

BOJ 21735 [눈덩이 굴리기]

문제 https://www.acmicpc.net/problem/21735 21735번: 눈덩이 굴리기 눈송이들이 많은 동네인 숙명여대 앞마당에서 눈사람 만들기 대회를 연다. 앞마당의 길이는 $N$이고 위치 $1$부터 위치 $N$ 까지만 눈이 쌓여있다. 위치 $i$에 눈이 $a_i$만큼 쌓여있다. 대회 규칙은 www.acmicpc.net 풀이 #include using namespace std; int snow[105]; int N, M; int bf(int pos, int count, int size){ if(pos >= N) return size; if(count == M) return size; int result = 0; result = max(bf(pos+1, count+1, size+snow[p..

개인공부/알고리즘

BOJ 27963 [합금 주화]

문제 https://www.acmicpc.net/problem/27963 27963번: 합금 주화 첫 번째 줄에 0보다 크고 100보다 작은 세 정수 $d_1$, $d_2$, $\chi$가 공백으로 구분되어 주어진다. 서로 다른 두 정수 $d_1$, $d_2$는 기념주화를 이루는 두 가지 금속의 밀도이다. 단위는 $\text{g}/\text{cm} www.acmicpc.net 풀이 #include using namespace std; int main(){ int a, b, m; double result; cin >> a >> b >> m; if(a

개인공부/데이터 사이언스

로지스틱 회귀

로지스틱 회귀모델의 배경 선형 회귀모델의 경우 입력변수에 따른 출력변수는 연속성을 가지고 있다. 하지만 출력변수가 연속형 변수인 모델 뿐만 아니라 이진변수나 멀티변수 같은 범주형 데이터를 갖는 모델도 많다. 이러한 모델들을 다루기 위해서 선형 회귀모델과는 다른 방식으로 접근해야할 필요가 있는데 그것이 바로 로지스틱 회귀모델이다. 로지스틱 회귀모델은 새로운 관측치가 왔을 때 이를 기존 범주 중 하나로 예측하는 '분류' 모델이다. 예를 들어 생산된 물건이 불량인지 정상인지, 또는 이 사람이 병에 걸렸는지 안걸렸는지를 분류해주는 모델 등이 있다. 입력변수 X가 주어졌을 때 출력변수 Y가 이진 또는 멀티변수로 표현된다면 이를 그래프 상에 나타내어 의미있는 결과가 도출될 수 없다. 때문에 로지스틱 회귀모델에서 입..

개인공부/데이터 사이언스

최근접 이웃(K-Nearest Neighbor) 알고리즘을 이용한 종양 판별 모델 만들기

KNN(K-Nearest Neighbor) 알고리즘을 이용해 종양 덩어리에 대한 데이터가 주어졌을 때 이 종양 덩어리가 단순히 양성종양인지 아니면 악성종양인지 판별해주는 머신러닝 모델을 만들어보았다. 개발환경은 구글의 Colab에서 진행하였으며 다음은 전체 코드이다. https://github.com/hizibu7/datascience_practice/blob/master/cancer_%20discrimination GitHub - hizibu7/datascience_practice Contribute to hizibu7/datascience_practice development by creating an account on GitHub. github.com K-최근접 이웃 회귀 알고리즘이란? 우선 코드..

개인공부/알고리즘

오늘 알게된 내용 2021.10.03

-알고리즘이란? 주어진 문제를 해결하는 한가지 방법을 명료하게 써놓은 것을 알고리즘이라 한다. - 알고리즘의 시간복잡도에 따른 시간 O(N^3) 알고리즘: 크기 2560 이하인 입력을 1초 안에 풀 수 있다. O(N^2) 알고리즘: 크기 40960 이하인 입력을 1초 안에 풀 수 있다. O(NlgN) 알고리즘: 크기 대략 2천만 이하인 입력을 1초 안에 풀 수 있다. O(N) 알고리즘: 크기 대략 1억 6천만 이하인 입력을 1초 안에 풀 수 있다. - P/NP 문제란? P 문제: 다항 시간 알고리즘이 존재하는 문제들의 집합 NP 문제: 답이 주어졌을 때 이것이 정답인지를 다항시간 내에 확인할 수 있는 문제

개인공부/데이터 사이언스

신뢰도 높은 리뷰 탐색 프로젝트(파이어베이스, 파이썬)

인터넷에서 내가 찾고자 하는 리뷰를 검색해보면 신뢰할만한 리뷰를 찾을 때도 있지만 멋모르고 광고성 리뷰를 읽게 되는 경우도 적지 않다. 때문에 이번에는 파이썬과 파이어베이스를 이용해 리뷰에 적힌 단어들 중 광고성 리뷰에서 나올법한 단어들이 있는지를 확인하고 이를 바탕으로 그 리뷰의 신뢰도를 판단해주는 파이썬 프로젝트를 진행해봤다. 전체 코드는 다음과 같다. # import : firebase db import firebase_admin from firebase_admin import credentials from firebase_admin import db # import : crowling import urllib.request import urllib.parse from bs4 import Beaut..

개인공부/데이터 사이언스

Selenium을 이용한 미세먼지 크롤러 만들기(2)

이제 본격적으로 미세먼지 크롤러를 제작해보도록 하자. 다음은 전체 코드이다. from selenium import webdriver from bs4 import BeautifulSoup driver = webdriver.Chrome('C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python37_64\python\crawling\selenium\chromedriver') driver.implicitly_wait(3) driver.get('http://openAPI.seoul.go.kr:8088/(인증키)/xml/RealtimeCityAir/1/25/') raw = driver.page_source html = BeautifulSoup(raw, 'html...

개인공부/데이터 사이언스

Selenium을 이용한 미세먼지 크롤러 만들기(1)

오늘은 Selenium을 사용해서 미세먼지 데이터 크롤러를 만들어보자. OpenAPI 사용하기 우선 미세먼지 데이터를 크롤링해오기 위해서는 당연하게도 미세먼지 현황에 대한 데이터가 필요할 것이고 이러한 데이터는 OpenAPI(누구나 사용할 수 있는 API)를 통해 얻을 수 있다. 필자는 '서울 열린데이터광장'에서 제공하는 '서울시 권역별 실시간 대기환경 현황'이라는 공공데이터를 사용해 크롤러를 제작해보았다. data.seoul.go.kr/dataList/OA-2219/S/1/datasetView.do 서울시 권역별 실시간 대기환경 현황 대기 환경지수, 미세먼지, 오존, 이산화질소, 일산화탄소, 아황산가스 등의 권역별 실시간 대기환경정보를 제공합니다. data.seoul.go.kr 이러한 OpenAPI의 ..

개인공부/데이터 사이언스

네이버 e북 Top100 크롤링하기

오늘은 파이썬을 사용하여 네이버 e북에서 Top 1~100를 차지하고 있는 책들의 정보를 크롤링한 뒤 카테고리를 카운팅해서 어떤 종류의 책이 인기가 많은지에 대해 살펴보았다. 전체 코드는 다음과 같다. import requests from bs4 import BeautifulSoup dic = {} for page in range(1, 6): print("page ", page) print("") raw = requests.get("https://series.naver.com/ebook/top100List.nhn?page=" + str(page)) html = BeautifulSoup(raw.text, "html.parser") book = html.select("div#content li") for b..

DevM
'개인공부' 카테고리의 글 목록 (2 Page)