본문 바로가기
반응형

데이터사이언스45

[googlemaps] 파이썬으로 구글 맵스 API 불러와서 데이터 업그레이드하기 - 구글맵스 API를 불러와서 데이터를 정리해봤다. - 정확히는 정리라기보다는, 우리가 가진 행정시/구 데이터를 바탕으로, 구글맵스에서 위도/경도 정보를 가져왔다. - 그 정보를 우리가 만든 데이터프레임(피봇테이블 등)에 업데이트했다. - 기본적으로 API를 이용하기 위해서는 Google Maps Platform에서 키 값을 받아와야 한다. - 아래 링크에 들어가서 키를 받으면 된다. https://mapsplatform.google.com/?hl=ko#products Google Maps Platform - Location and Mapping Solutions Create real world and real time experiences for your customers with dynamic map.. 2021. 10. 14.
[pandas.pivot_table] 피봇테이블, 개꿀. pandas.pivot_table - pandas 피봇테이블은 크게 index, columns, values, aggfunc으로 구성된다. - 피봇테이블을 그려 볼 데이터를 가져왔다. - pd.pivot_table() 로도 가능하지만, 해당 데이터프레임(df)이 있다면, df.pivot_table()로 만들 수 있다. - 피봇테이블을 만들었을 때, 숫자데이터만 취합된다. 문자로 된 것들은 보여주지 않는다. - 인덱스 설정은, index="인덱스"로 한다. df.pivot_table(index="name") - 멀티 인덱스도 가능하다. 2개 이상의 인덱스를 넣을 때는 리스트로 감싸서 넣어주면 된다. df.pivot_table(index=["Name", "Rep", "Manager"]) - values 설정.. 2021. 10. 13.
[matplotlib] 데이터 다듬어서 간단한 시각화 다뤄보기 - 기본적으로 데이터를 다룰 때는 pandas, numpy 모듈을 늘 달고 사는 것 같다. - 시각화에는 Matplotlib 모듈을 자주 쓴다. 물론 .plot으로 자체적으로 가능하지만, 더 많은 기능이 있는 듯하다. 데이터 다듬기 - 시각화에서 중요한 것은 "데이터 정렬" CCTV_Seoul.sort_values(by="소계", ascending = False).head() # by="정렬기준" # ascending은 오름차순이다. False를 하면 내림차순. # head()는 기본 상위 5개를 보여주고, 괄호 안에 숫자를 넣으면 그 수만큼 보여준다. - 최근 증가율(2014, 2015, 2016이 2013년도 이전에 비해 얼마나 증가했는지)이 중요한 지표가 될 수 있을 것 같아서, 컬럼을 추가하려고 .. 2021. 10. 13.
[5일차] 기초수학 왕창 듣는데, 파이썬 구현하는 거에 맛 들림 [최대 공약수] - 두 개 이상의 수에서 공통된 약수를 공약수라고 함 - 소인수분해를 하면 최대공약수 및 공약수를 구할 수 있다. - 겹치는 소인수를 다 곱하면 최대공약수! 예제) 두 개의 수를 입력하면 공약수와 최대공약수를 출력하는 코드를 작성하자. - 파이썬으로 최대공약수를 구하는 것은 "for문과 유클리드호제법"으로 구한다. - 유클리드 호제법 : x, y의 최대공약수는 y, r(=x%y)의 최대공약수와 같다. [최소 공배수] - 공배수 : 두 개 이상의 수에서 공통된 배수를 공배수라고 한다. - 공통인 소인수의 지수가 큰 값 * 공통이 아닌 모든 소인수 - 파이썬에서 최소공배수 : 최대공약수 구함 -> 최대공약수로 각각 나눈 값을 구함 -> 최대공약수와 그 값들 다 곱! 예제) 최소공배수 출력 프.. 2021. 10. 13.
[4일차] 파이썬으로 코딩 예제 풀고, 기초수학 출발 [연습문제] - 점수별 결과 출력 프로그램 코딩 연습 # 점수 입력받기 score = [0,0,0,0,0] score[0] = int(input("국어 점수를 입력하세요.")) score[1] = int(input("영어 점수를 입력하세요.")) score[2] = int(input("수학 점수를 입력하세요.")) score[3] = int(input("과학 점수를 입력하세요.")) score[4] = int(input("국사 점수를 입력하세요.")) #총점, 평균, 편차 출력 index = ['국어', '영어', '수학', '과학', '국사'] everyone = [85, 82, 89, 75, 94] sum_everyone = sum(everyone) avr_everyone = int(sum_every.. 2021. 10. 12.
[3일차] 반복문 완료, 그리고 복습하면서 연습문제 풀어봤음 [반복문] - 특정 실행을 반복하는 것 - 프로그래밍이 간결하고 유지 보수가 쉬움 - 횟수에 의한 반복 / 조건에 의한 반복 - 횟수 : 횟수 만큼 반복 실행 -> for - 조건 : 조건에 만족할 떄까지 반복 실행 -> while [for문 : 횟수에 의한 반복문] ex) 대량 메일 또는 문자 발송, 인사말 반복, mp3 반복 재생 - for ~ in for 변수 in 범위: 실행문 - in 뒤에는 iterable한 자료 구조가 나오면 됨 - 자료 구조 안에 요소들이 하나씩 출력된다고 생각하면 된다. - range(5) = [0, 1, 2, 3, 4] - N번 반복하고 싶으면 range(N)이라고 기억하면 좋을 것 같다. - 구구단 7단을 for 문으로 코딩해보기 - pass 키워드 : 코딩을 나중에 .. 2021. 10. 11.
[pandas] DataFrame(데이터프레임) 쪽지시험;Quiz 후기 젠장. 손 코딩이 문제에 나올거라는 생각을 못했다. - 비전공자는 웁니다 엉엉 뭐 그래도, 덕분에 이제 문제 어떻게 나올지 알겠으니까 제대로 해보자. 생각나는 문제 복기를 해보자면 아래와 같다. 1. Jupyter Notebook 에서 Pandas를 pd라는 별칭으로 불러오려면 어떻게 코딩하는가? import pandas as pd 2. "01. Seoul_CCTV.csv" 파일 불러올 때 코딩 어떻게 하는가? pd.read_csv("../data/01.Seoul_CCTV.csv") 3. 엑셀 파일 불러올 때는 어떻게 코딩하는가? pd.read_excel("파일 위치 및 파일명") 4. 데이터 프레임 생성할 때, 어떻게 코딩을 시작하는가? pd.DataFrame 5. 날짜 데이터를 pd로 만드려면 어떻게.. 2021. 10. 7.
[1일차] 파이썬이랑 친구하기로 함.. (Pycharm 초기 오류, 파이썬 데이터 기초) [PyCharm] - 오프라인 강의는 주피터노트북만 사용했는데, PyCharm에 대한 것을 알려줘서 흥미로웠다. - 개발 환경이 여러가지가 있는 것은 다 장단점이 있는거겠지? 다 써보고 좋은거 쓰면 좋지 뭐. - 처음에 셋팅할 때 문제가 많았다. 1) 원래 코딩을 입력하고 Ctrl + Shift + F10을 누르면 Run이 되는데, 나는 오류메시지가 계속 떴다. "Error running 'hello (1)': @NotNull method com/intellij/execution/configurations/GeneralCommandLine.getExePath must not return null" -> 그래서 구글링을 통해서 해당 상황을 해결했음 -> File - Setting - Project - Py.. 2021. 10. 7.
[Pandas] DataFrame(데이터프레임) 알아보기 DataFrame : 2차원 형태의 데이터를 다루기 위한 자료형 - 표 형식의 데이터를 담는 자료형 - Columns, Index, Values로 구성되어 있다. - 행 / 열 = index / column - index는 각 레코드, column은 각 데이터의 특징를 설명하는 '이름' 같은 존재 (개인적으로.. 2차원 numpy array의 부가적인 기능을 가능하게 하는 것이 Pandas 같은 느낌) - 처음에 불러오면 index는 0, 1, 2 등으로 번호가 매겨져 있다. 1) CSV 파일 불러오기 - pandas를 import하고, pd라고 별칭을 만들어주는 과정을 꼭 맨 처음에 하자! - 중요한 포인트는, minho라는 폴더 안에 저 파일이 있다는 걸 인지한 상태에서 코딩하는 것이다. - 불러올 .. 2021. 10. 6.
반응형