분류 전체보기 12

수원시 유동인구데이터 기반 데이터 흡연구역 설치

방학 스터디로 진행한 개인 프로젝트입니다. 약 3주정도 개인적으로 진행한 사이드프로젝트입니다. 1. 아이디어 배경보통 대부분의 대학교에는 따로 지정된 흡연장이 존재합니다. 거기에는 담배꽁초를 버릴 수 있는 쓰레기통과, 그런 쓰레기통의 청소를 담당하는 분이 따로 존재하여, 언제나 깨끗한 학교를 유지시켜줍니다. 하지만, 학교 밖을 나오자마자 상당히 많은 담배꽁초를 길거리에서 흔히 발견할 수 있습니다. 이는 대학교 근처에는 항상 있는 술집, 음식점, 카페 모두에 해당합니다. 환경미화원분들이 매일매일 길거리를 청소하지만, 매일 길거리에 버려지는 담배꽁초를 전부 담당하기는 역부족입니다. 저는 이런 길거리 담배꽁초, 길거리 흡연 등의 문제를 다른 흡연자 친구에게 물어보았더니, 지정 흡연장이 너무 멀거나, 없을때 길..

대외활동 2024.12.24

고용노동 공공데이터 공모전 기록- 라이터서비스

2024년 제 3회 고용노동부 주관 공공데이터 공모전 기록입니다.주제는 라이센스 튜터, 줄여서 라이터 서비스입니다. 라이터서비스는 자격증 취득과정에 있어서 사용자에게 도움을 줄 수 있도록 만들어 자격증 통합정보조회, AI기반 자격증 추천, 학습관리를 포함하고 있습니다.  1. 서비스 구상 배경자격증 관심 증가많은 청년들이 취업 준비를 위해 자격증을 취득하려는 움직임이 활발해지고 있으며, 이에 더해 중장년층 역시 재취업이나 승진 등을 위해서 자격증을 따면서 자격증에 대한 관심이 꾸준히 증가하고 있는 추세입니다. 이에 더해 취미 자격증 등의 종류가 많아져 자신이 어떤 자격증을 취득해야 하는지, 어떤 자격증이 자신에게 맞는지 알려주는 서비스가 필요하다고 생각했습니다.  자격증 정보시스템의 미흡  많은 사람들이..

대외활동 2024.09.03

IE Field camp 참가기록

2024년 kaist에서 진행한 IE Field camp에서 수행했던 과제를 기록하고자 작성합니다.주제는 2가지로, 첫 번째는 시뮬레이션 프로그램을 통한 지하철 개찰구 최적화, 2번째는 대선결과에 따른 현대자동차 전략수립입니다.저희 조는 2번주제를 맡아 미국 대선별 각 산업별 영향과 현대자동차의 전략, 수송계획법에 대해서 설명하겠습니다. 2번 주제는 총 2개의 세션으로 이루어져 있으며 Session1 은 대선별 영향분석이고, Session2는 대선결과에 따라 임의로 부여한 조건에 따라서 수송계획 문제를 푸는 형태입니다.목차에는 안나와 있지만 SESSION1, 2 모두 2개의 Task로 이루어져 있습니다. 1-1 TASK1: 미국 대선 결과에 따른 '반도체', '자동차', '이차전지' 산업군의 영향 분석조..

대외활동 2024.08.30

프로젝트에 사용했던 라이브러리

1. Daum 증권 뉴스 내용 크롤링(by selenium)Selenium이란 #gpt 피셜1. 웹 자동화 도구: Selenium은 웹 브라우저를 자동으로 제어할 수 있는 오픈 소스 도구이다. 사용자가 브라우저에서 수행하는 작업을 프로그램 코드로 자동화할 수 있게 해줌2. 테스트 자동화: 주로 웹 애플리케이션의 테스트를 자동화하는 데 사용예를 들어 로그인 기능을 테스트하거나 폼을 자동으로 제출하는 등의 작업을 코드로 작성할 수 있음위의 말처럼 내 의지가 아닌 자동으로 작동하는(코드를 설정한 대로) 크롬 페이지를 하나 띄워서 하고싶은 작업을 하는것.자동화를 해놓으면 반복적인 일을 자동으로 할 수 있어 간편하다.  활용 예시:selenium 을 이용해 Daum 해외증시 뉴스 페이지에 접속, 각 뉴스에 들어가..

4주차- 머신러닝 데이터분석

1. 머신러닝 개요1-1 머신러닝이란?머신러닝이란 기계 스스로 데이터를 학습하여 서로 다른 변수 간의 관계를 찾아 나가는 과정해결하려는 문제에 따라 예측(prediction), 분류(classification), 군집(clustering) 알고리즘 등으로 분류된다.  1-2 지도학습 vs 비지도학습지도학습: 정답 데이터를 다른 데이터와 함께 알고리즘에 입력비지도학습: 정답 데이터 없이 컴퓨터 알고리즘 스스로 숨은 패턴 찾아내는 방식1-3 머신러닝 프로세스머신러닝을 실시하기 전에 먼저 알고리즘이 이해할 수 있는 형태로 데이터를 변환하는 작업이 선행되어야 한다.분석 대상에 관해 수집한 관측값(observation)을 속성(feature)을 기준으로 정리한다.그 뒤에 훈련 데이터를 모델에 입력해서 학습시키고,..

4주차- 데이터프레임의 다양한 응용

1. 함수 매핑함수 매핑은 시리즈 또는 데이터프레임의 개별 원소를 특정 함수에 일대일 대응시키는 과정임 1-1 개별 원소에 함수 매핑시리즈 객체에 apply() 메소드를 적용하면 인자로 전달하는 매핑 함수에 시리즈의 모든 원소를 하나씩 입력하고 함수의 리턴값을 돌려받는다.#시리즈 원소에 함수 매핑Series 객체.apply(매핑함수)import seaborn as sns#titanic 데이터셋에서 age, fare 2개 열을 선택하여 데이터프레임 만들기titanic= sns.load_dataset('titanic')df= titanic.loc[:, ['age', 'fare']]df['ten'] = 10print(df.head())#시리즈 의 원소에 함수 정의하기#사용자 함수 정의def add_10(n):..

3주차-데이터 사전 처리

1. 누락 데이터 처리누락 데이터 확인import seaborn as sns#titanic dataset 불러오기df = sns.load_dataset('titanic')print(df.head(10))#실행시 이미 deck 열에 많은 NaN 값이 있는것을 확인#얼마나 있는지 확인nan_deck= df['deck'].value_counts(dropna=False) #dropna 값을 False로 해야지 nan 값을 카운트print(nan_deck)#결과deckNaN 688C 59B 47D 33E 32A 15F 13G 4Name: count, dtype: int64#누락 데이터를 찾는 직접적인 방법: isnull(), no..

3주차-시각화 도구 및 데이터 사전 처리

4. 시각화 도구데이터를 모았고, 형태를 구분했으면 이제는 데이터를 시각화를 통해서 데이터가 주는 인사이트를 알아야 한다.다양한 동구를 통해서 데이터시각화가 가능하며 시각화를 하려면 데이터를 정제해야한다.4-1. Matplotlib - 기본 그래프 도구1-1. 선 그래프선 그래프는 연속하는 데이터값들을 직선 또는 곡선으로 연결하여 데이터 값 사이의 관계를 나타낸다. 특히 시계열 데이터와 같이 연속적인 값의 변화화 패턴을 파악하는데 적합하다. #예제 4-1 선 그래프import pandas as pdimport matplotlib.pyplot as plt#엑셀 데이터를 데이터프레임으로 변환df = pd.read_excel('C:/Users/sajog/Downloads/5674-980/pandas-data-..

2주차- 데이터 살펴보기

1. 데이터프레임의 구조1-1 데이터 내용 미리보기앞부분 미리보기: df.head(n) #처음 n개 미리보기뒷부분 미리보기: df.tail(n) #뒤에꺼 n개 미리보기 1-2 데이터 요약 정보 확인하기데이터프레임의 크기(행, 열)데이터프레임의 크기 확인: df.shape데이터프레임의 기본 정보데이터프레임의 기본 정보 확인: df.info()데이터프레임의 기술 통계 요약데이터프레임 기술적 요약: df.describe()# 산술데이터가 아닌 열에 대한 정보를 확인하고 싶다면 include=all 옵션을 추가 1-3 데이터 개수 확인각 열의 데이터 개수df.info() 메소드는 화면에 각 열의 데이터 개수 정보를 출력하지만, 반환해 주는 값이 없어서 다시 사용하는데 어려움이 있다. 이를 해결하기 위해서열 데이..

2주차- 데이터 입출력

1. 외부 파일 가져오기판다스는 다양한 형태의 파일을 가져와 데이터프레임으로 변환하고, 또한 다양한 파일형식으로 변환이 가능하다.한번 데이터프레임으로 변환하고 나면 판다스의 모든 함수를 사용할 수 있다.  1-1 csv 파일.csv 형식의 파일.#csv파일의 데이터프레임 변환pandas.read_csv("파일경로")#header 옵션: 데이터프레임의 열 이름으로 사용할 행을 지정하기pandas.read_csv("파일경로", header=0) #0행을 지정 pandas.read_csv("파일경로", header=1) #1행을 지정 pandas.read_csv("파일경로", header=none) #행 지정 안함#index 옵션: 데이터프레임의 행 이름으로 사용할 열 지정하기pandas.read_csv("파..