목록전체 글 (305)
RUBY
서울시 CCTV 분석하기 프로젝트 3.Pandas로 데이터 읽기(1) Pandas Pandas는 데이터 조작 및 분석을 위한 Python 프로그래밍 언어 용으로 작성된 소프트웨어 라이브러리이다. 숫자 테이블과 시계열을 조작하기 위한 데이터 구조와 연산을 제공하며, 무료 소프트웨어 New BSD 라이센스이다. pandas란 이름은 한 개인에 대해 여러 기간동안 관찰을 한다는 데이터 세트에 대한 계량 경제학 용어인 "패널 데이터"라는 용어에서 파생되었다. 또한 "Python 데이터 분석"이라는 문구 자체에서 따온 것이기도 하다. Wes McKinney 는2007년부터 2010년까지 연구원으로 있을 때 AQR Capital에서 pandas를 만들기 시작했다. 통합 인덱싱으로 데이터 조작을 위한 Data Fra..
서울시 CCTV 분석하기 프로젝트 2. 데이터확보 1. 구글에 서울시 자치구 연도별 cctv 설치 현황 검색 2. 검색 결과에서 최신 버전을 다운받는다. 3. 파일명은 시스템 호환을 위해 영문으로 변경해준다. * 엑셀에서 데이터 한글 깨짐 현상 발생 시 1) 메모장으로 파일을 들어가준다. 2) 다른이름으로 저장에서 인코딩을 ANSI로 설정해준다. 4. 서울 열린데이터 광장 - 공공데이터 - 공공데이터 5. 공공데이터 결과에서 서울시 주민등록인구 (구별) 통계를 찾는다. 6. 주민등록인구에서 다운로드를 누른다. 7.다운로드 진행 8. 시스템 호환을 위해 파일명을 영문으로 변경해준다.
서울시 CCTV 분석하기 프로젝트 1. 목표 Python, Pandas 서울시 구별 CCTV 현황 데이터 확보 서울시 인구 현황 데이터 확보 CCTV 데이터와 인구 현황 데이터 합치기 데이터를 정리하고 정렬하기 Matplotlib 그래프 그리기 Regression using Numpy 전체적인 경향을 파악하기 Insight and Visualization 데이터를 강조하기
Google Colabotatory 사용하기 https://colab.research.google.com/ Google Colaboratory colab.research.google.com 구글 코랩 접속하기 파일 - 새 노트 클릭하기 새 노트가 생성되었습니다. print("Hello, world!") print("Hello, world!") 작성해보기 실행은 왼쪽 삼각형 모양의 플레이 버튼을 선택하거나 shift + enter 입력 초반 실행은 꽤나.. 오래걸립니다.. 기다린 후 정상 실행되는지 확인해봅시다. Colab에서 런타임 메뉴는 각 셀의 실행과 중단, 재실행 등 다양한 기능을 제공합니다. * 모두 실행 : 긴 노트의 코드를 한 번에 실행하는 명력 * 실행 중단 : 어떤 이유든 응답이 없거나, ..
VScode conda 환경설정(Window 환경) VScode 설치하기 https://code.visualstudio.com/ Visual Studio Code - Code Editing. Redefined Visual Studio Code is a code editor redefined and optimized for building and debugging modern web and cloud applications. Visual Studio Code is free and available on your favorite platform - Linux, macOS, and Windows. code.visualstudio.com 접속 후 다운로드 진행하기 동의합니다 > 다음 > 다음 > 다음 > 원하는..
miniconda 설치(Window 환경) miniconda 설치(Window 환경) 1. Google 에서 "miniconda" 또는 "미니콘다" 검색 Miniconda — conda documentation 접속 https://docs.conda.io/en/latest/miniconda.html Miniconda — conda documentation Miniconda is a free minimal installer for conda. It is a small, bootstrap version of Anaconda that includes only conda, Python, the packages they depend on, and a small number of other useful packag..
퀵 정렬 퀵 정렬 기준 데이터를 설정하고 그 기준보다 큰 데이터와 작은 데이터의 위치를 바꾸는 방법이다 일반적인 상황에서 가장 많이 사용되는 정렬 알고리즘 중 하나이다 병합 정렬과 더불어 대부분의 프로그래밍 언어의 정렬 라이브러리의 근간이 되는 알고리즘이다 가장 기본적인 퀵 정렬은 첫 번째 데이터를 기준 데이터(Pivot)로 설정한다 def qSort(ns): if len(ns) < 2: return ns midIdx = len(ns) // 2 midVal = ns[midIdx] smallNums = [] sameNums = [] bigNums = [] for n in ns: if n < midVal: smallNums.append(n) elif n == midVal: sameNums.append(n) ..
병합 정렬 병합 정렬 병합 정렬은 분할 정복 (Devide and Conquer) 기법과 재귀 알고리즘을 이용해서 정렬 알고리즘이다. 즉, 주어진 배열을 원소가 하나 밖에 남지 않을 때까지 계속 둘로 쪼갠 후에 다시 크기 순으로 재배열 하면서 원래 크기의 배열로 합친다. 다음과 같이 1부터 8까지 총 8개의 숫자가 들어있는 배열에 있다고 가정, 특징 알고리즘을 큰 그림에서 보면 분할(split) 단계와 방합(merge) 단계로 나눌 수 있으며, 단순히 중간 인덱스를 찾아야 하는 분할 비용보다 모든 값들을 비교해야하는 병합 비용이 크다. 예제에서 보이는 것과 같이 8 -> 4 -> 2 -> 1 식으로 전반적인 반복의 수는 점점 절반으로 줄어들 기 때문에 O(logN) 시간이 필요하며, 각 패스에서 병합할 ..