본문 바로가기
반응형

데이터기초15

[ADP-8] 분석도구 R의 특징 / R 시작하기(install.packages, library, ?, help) / R의 데이터 구조(벡터 c, 행렬 matrix, 데이터프레임 data.frame) 분석도구 R의 특징 - R은 무료 소프트웨어이면서도 고차원적인 계산이 가능하며 통계 분석과 시각화에 최적화된 환경을 통해 단순한 계산부터 복잡한 통계 기법까지를 폭넓게 다룰 수 있음 1) 그래픽 처리 - 상용 소프트웨어에 버금가는 상당한 수준의 그래프와 그림 - 그림의 용도와 역할에 맞게 적절한 그래프를 언제든지 쉽게 생산할 수 있음 - 매우 세부적인 부분까지 사용자가 직접 지정, 섬세한 작업을 수행할 수 있음 - 출판물로 사용해도 손색이 없을 정도의 고해상도 이미지를 생산함에도 그 처리 시간이 매우 빠름 2) 데이터 처리 및 계산 능력 - 벡터, 행렬, 배열, 데이터프레임, 리스트 등 다양한 형태의 데이터 구조 지원 - 다양한 데이터 형태의 분석이 용이함 - 복잡한 구조 내 개별 데이터에 접근하는 절차.. 2022. 8. 12.
Optimization methods Loss 는 비순환그래프(DAG)를 거쳐 계산됩니다. 가설이 무수히 많기 때문에 모든 것을 다 시도해보고 최적인 것을 고를 수가 없습니다. 따라서, 일단 아무 곳을 선택한 후에 Loss 를 낮추는 방향으로 최적화를 진행합니다. 방법: Local, Iterative Optimization: Random Guided Search 장점: 어떤 비용함수를 사용해도 무관합니다. 단점: 차원이 작을 때는 잘 되지만, 차원의 저주 때문에 커질 수록 오래걸립니다. 샘플링(sampling) 에 따라서 오래걸립니다. Gradient-based Optimization: 미분을 통해 최적화 할 방향을 정합니다 장점: Random Guided search 에 비해서 탐색영역은 작지만 확실한 방향은 정할 수 있습니다. 단점: 학.. 2022. 3. 28.
[8일차] 튜플(tuple)과 딕셔너리(dictionary)는 복습이 필요해. [튜플; Tuple] - 리스트와 비슷하지만 아이템 변경 불가 - 아이템 변경(수정, 삭제 등)이 불가능함 : 리스트는 가능 - ()을 이용해서 선언하고, 데이터 구분은 콤마(,)를 활용한다. - 숫자, 문자(열), 논리형 등 모든 데이터를 같이 저장할 수 있다. - 튜플에 또 다른 컨테이너 자료형 데이터를 저장할 수 있다. - 튜플 아이템 조회 : 리스트와 마찬가지로 아이템에 자동으로 부여되는 번호표가 있음 - N개의 요소가 있다면 인덱스는 0 ~ (N-1)까지 자동 부여 - 튜플 아이템은 tuple[idx] 방식으로 조회 - in /not in : 아이템 존재 유/무 판단 - item in tuple : 있으면 True, 없으면 False 결과 나옴 - in과 not in 키워드는 문자열에서도 사용 .. 2021. 10. 22.
[7일차] 리스트 요긴하게 쓰기 위한 추가/삭제/슬라이싱. 분명하게 정리하기! * Web Data 관련 강의가 함께 있어서, 오늘 수강한 강의 분량이 적다. [리스트 요소 추가, 삭제, 수정] - 추가 : list.append(요소) - append() - append로 들어갈 수 있는 요소는 또 다른 리스트도 가능하다. ex) list.append([a,b,c]) - append는 항상 리스트의 마지막 인덱스에 추가됨 - 추가2 : list.insert(인덱스, 요소) - 특정 위치(인덱스)에 아이템을 추가할 수 있음 - insert() 연습문제) 오름차순으로 정렬되어 있는 숫자들에 사용자가 입력한 정수를 추가하는 프로그램을 만들어보자. (단, 추가 후에도 오름차순 정렬이 유지되어야 한다.) - 주어진 리스트 : [1, 3, 6, 11, 45, 54, 62, 74, 85] - e.. 2021. 10. 19.
[6일차] 기초수학 연습문제로 마무리하고, 자료구조 시작! [연습문제] - N보다 작은 약수, 소수, 소인수 출력하기 -> 약수는 N에서 해당 수를 나눠서 나머지가 0이면 출력 -> 소수는 해당 수를 다시 1부터 해당 수 - 1 까지 나눠서 나머지가 0인 애가 없으면 출력 -> 소인수는 약수이면 +1, 소수이면 +1해서 2 이면 출력 - N을 소인수분해해서, 소인수들의 지수 출력하기 -> 나머지가 0이면 리스트에 추가하고 갯수 세기 : list.count(n) - list에서 n의 갯수를 카운트함 - 서로소는 1 이외에 약수가 없는 두 수를 의미함 - 최소공배수는 두 수의 곱에서 최대공약수로 나누면 구할 수 있음 : 최대공약수를 먼저 구하면 될 듯 - 2진수로 변환 : bin(n) - 8진수로 변환 : oct(n) - 16진수로 변환 : hex(n) - 10진수.. 2021. 10. 17.
[seaborn] 데이터 정리 및 다양한 시각화 실행 데이터 정리 - 우리가 사용할 데이터프레임 crime_anal_station 은 다음과 같다. - 일단 해당 데이터를 활용해서, '구별'을 인덱스로 하여, 값의 합계를 나타낸 피봇테이블을 만들었다. crime_anal_gu = crime_anal_station.pivot_table( #여기서 pd.pivot_table(crime_anal_station, ~ 으로 시작해도 된다. index="구별", aggfunc=np.sum, ) - 여기서 우리는 lat, lng 컬럼이 필요가 없기 때문에, 삭제한다. (drop()을 활용했다.) crime_anal_gu.drop(["lat", "lng"], axis=1, inplace=True) - 우리가 궁금한 수치는, 각 범죄별 '검거율'이다. 예를 들면 살인의 검.. 2021. 10. 14.
[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] colormap 형태의 산점도와 선형 회귀식, 그리고 오차 표현 - 지난 시간에 배운 산점도(plt.scatter())를 활용해서 data_result의 인구수와 소계를 표현 def drawGraph(): plt.figure(figsize=(14,10)) plt.scatter( data_result["인구수"], data_result["소계"], s=50 ) plt.xlabel("인구수") plt.ylabel("CCTV") plt.grid() plt.show() drawGraph() 선형회귀, Linear Regression - numpy에서 지원하고 있기 때문에, 항상 import numpy as np를 불러주고 시작한다. - np.polyfit(x, y, 차수) : 선형회귀식의 각 계수를 찾는 함수 - np.poly1d(계수) : 계수를 넣으면 선형회귀식을 만들어.. 2021. 10. 13.
반응형