본문 바로가기
728x90
반응형

분류 전체보기195

pandas ) 누락 데이터 처리 isnull(), dropna(), fillna(), replace() isnull() 누락데이터이면 True를 아니면 False를 반환한다. 반대로 notnull()은 누락데이터이면 False를 아니면 True를 반환한다. 직관적으로 누락데이터만을 확인할 수 있다. import pandas as pd import seaborn as sns titanic = sns.load_dataset('titanic') # 각 열(axis=0)의 누락데이터 합 보기 print(titanic.isnull().sum()) # tip : 행으로 계산하려면 sum(axis=1) 실행결과 survived 0 pclass 0 sex 0 age 177 sibsp 0 parch 0 fare 0 embarked 2 class 0 who 0 adult_male 0 deck 688 embark_town 2.. 2022. 4. 4.
Folium ) 단계구분도 Choropleth Map 단계구분도(Choropleth map) 각기 다른 음영이나 색상 또는 값으로 각 지역과 관련된 데이터를 표현한 지도 지도 데이터 파일 (.geojson) - 지역에 대한 경계 정보를 제공 시각화 하고자 하는 데이터 파일 (.csv 등) - 지역별로 표현하고자 하는 데이터를 제공 Choropleth와 같은 레이어를 만들 때 위의 이 두 데이터를 파라미터로 넘겨줘야 하는데 데이터는 각자 다른 파일에 있으므로, 시각화할 데이터를 지도에 얹으려면 두 데이터를 매핑해야 한다. folium.Choropleth() geo_data = "지도 데이터 파일 경로 (.geojson, geopandas.DataFrame)" data = "시각화 하고자 하는 데이터파일. (pandas.DataFrame)" columns = .. 2022. 4. 4.
Folium ) 지도에 다양한 마커 표시하기 기본 마커 표시 folium.Marker 함수를 사용하면 기본적인 지도마커를 표시할 수 있다. import folium seoul_map = folium.Map(location=[37.459882,126.9519053], tiles='Stamen Terrain', zoom_start=12) folium.Marker( [37.459882, 126.9519053], tooltip='서울대학교', # 마우스가 오버레이되면 표시됨. popup='여기가 바로 서울대학교' # 마우스로 클릭하면 표시됨. ).add_to(seoul_map) display(seoul_map) seoul_map.save('output/seoul_colleges.html') 원형 마커 표시 import folium seoul_map = f.. 2022. 4. 1.
Folium ) 지도 만들기 지도만들기 Map() folium.Map(location=[위도, 경도], zoom_start=줌 횟수) 으로 원하는 위치를 중심으로 확대하여 볼 수 있다. tiles 옵션을 적용하면 지도에 적용하는 스타일을 변경하여 지정할 수 있다. “OpenStreetMap” (default) “Mapbox Bright” (Limited levels of zoom for free tiles) “Mapbox Control Room” (Limited levels of zoom for free tiles) “Stamen” (Terrain, Toner, and Watercolor) 'Stamen Terrain' - 산악지형 등의 지형이 보다 선명하게 드러난다. 'Stamen Toner' - 흑백 스타일로 도로망을 강조해서 .. 2022. 3. 31.
Folium ) 소개 Folium 라이브러리는 Python에서 사용 가능한 가장 대표적인 지도를 다루는 라이브러리이다. leaflet.js 기반으로 지도를 그려주고, 모바일에서도 쓸 수 있을만큼 가볍다. 세계 지도를 기본 지원하고 다양한 타일세트의 지도를 제공한다. Folium은 웹 기반 지도를 만들기 때문에 오직 웹 환경(주피터노트북 등)에서만 지도를 확인할 수 있다. Folium은 이미지, 비디오, GeoJSON 및 TopoJSON 오버레이를 모두 지원한다. Folium 공식 문서 설치 conda에서 Folium을 설치할 경우 채널을 설정해주어야 한다. conda install -c conda-forge folium 2022. 3. 31.
seaborn ) 한 개의 Figure에 여러 Axes 적용 FaceGrid() 행과 열에 데이터 별로 상관관계를 시각화해준다. import matplotlib.pyplot as plt import seaborn as sns # Seaborn 제공 데이터셋 가져오기 titanic = sns.load_dataset('titanic') # 스타일 테마 설정 (5가지: darkgrid, whitegrid, dark, white, ticks) sns.set_style('whitegrid') # 조건에 따라 그리드 나누기 g = sns.FacetGrid(data=titanic, col='who', row='survived',margin_titles=True) # 그래프 적용하기 g = g.map(plt.hist, 'age') pairplot() scatter, kde, h.. 2022. 3. 30.
seaborn ) 2개의 연속형 데이터의 분포 시각화 회귀(regression)선이 있는 산점도(scatter plot) ; regplot import matplotlib.pyplot as plt import seaborn as sns titanic = sns.load_dataset('titanic') fig = plt.figure(figsize=(15,5)) gs = fig.add_gridspec(1,2) ax1 = fig.add_subplot(gs[0,0]) ax2 = fig.add_subplot(gs[0,1]) # 선형회귀선이 표시된 그래프 그리기 ( fit_reg = True 기본값 ) sns.regplot(x='age', y='fare', data=titanic, ax=ax1,# Axes 지정 line_kws={'color':'red'} # 선형회.. 2022. 3. 30.
머신러닝(Machine Learning)이란? 규칙을 일일이 프로그래밍하지 않아도 자동으로 데이터에서 규칙을 학습하는 알고리즘을 연구하는 분야 인공지능의 하위 분야 중에서 지능을 구현하기 위한 소프트웨어를 담당하는 핵심 분야이다. 예전에는 통계학에서 많은 머신러닝 알고리즘이 유래되었으나 최근에는 통계나 수학 이론보다 경험을 바탕으로 발전하는 경우도 많다. 대표적인 머신러닝 라이브러리는 사이킷런(scikit-learn)이 있다. 머신러닝(기계학습)의 과정 준비 정확한 출력값이 입력값과 찍지어진 데이터셋을 충분히 많이 준비한다 데이터를 계산할 함수의 모양을 만든다 기계학습시작 계수를 초기화한다 초기화된 계수와 입력데이터를 가지고 출력값을 계산한다 이렇게 계산해서 구한 출력값과 데이터셋에서 가지고 있던 출력값을 비교한다 이 두 값의 차이를 줄이는 쪽으로 .. 2022. 3. 30.
seaborn ) 단변수 데이터의 분포 그래프 커널 밀도 함수 주어진 데이터를 정규화시켜 넓이가 1이 되도록 그린 그래프 그래프와 x축 사이의 면적이 1이 되도록 그리는 밀도 분포 함수이다. import matplotlib.pyplot as plt import seaborn as sns titanic = sns.load_dataset('titanic') sns.kdeplot(x='fare',data=titanic) plt.show() 히스토그램 도수분포표를 그래프로 나타낸 것 가로축이 계급, 세로축이 도수를 뜻한다. import matplotlib.pyplot as plt import seaborn as sns titanic = sns.load_dataset('titanic') sns.histplot(x='fare',data=titanic) plt... 2022. 3. 30.
seaborn ) 범주형 데이터의 분포 시각화 범주형 변수에 들어있는 각 범주별 데이터의 분포를 확인하는 방법 히트맵 heatmap plt.figure(figsize=(6,4)) # 피벗테이블로 범주형 변수를 각각 행, 열로 재구분하여 정리 tips_var= tips.pivot_table( index="smoker", columns="sex", aggfunc="size"# 그룹 함수 ) # 히트맵 그리기 sns.heatmap( tips_var,# 데이터프레임 cmap=sns.light_palette("gray", as_cmap=True), # 컬러맵 annot=True,# 데이터 값 표시 여부 fmt="d"# 정수형 포맷 # cbar=False# 컬러바 표시여부 ) plt.show() swarm 그래프 plt.figure(figsize=(6,4)) .. 2022. 3. 29.
seaborn ) 막대 그래프 seaborn의 막대그래프는 기본적으로 오차범위를 계산하여 표시하여 준다. plt.figure(figsize=(5,4)) sns.barplot(x="sex",y="tip",data= tips) plt.show() 집단을 한 단계 더 나눠서 자세하게 시각화 할 수 있다. # 여러 열에서 집단 묶어서 세부 집단 시각화 하기 # hue 파라미터 추가 plt.figure(figsize=(6,4)) sns.barplot(x="sex",y="tip",hue="day", data=tips) plt.show() 오차막대가 보기 싫다면 ci=None # 오차막대 없애기 plt.figure(figsize=(6,4)) sns.barplot(x="sex",y="tip",hue="day", data=tips, ci=None) .. 2022. 3. 28.
seaborn ) 소개 Matplotlib을 기반으로 다양한 색상 테마와 통계용 차트 등의 기능을 추가한 확장된 시각화 패키지이다. 기본적인 시각화 기능은 Matplotlib 패키지에 의존하며 통계 기능은 Statsmodels 패키지에 의존한다. 추가로 다양한 데이터셋을 포함하고 있다. import seaborn as sns #데이터 준비 iris = sns.load_dataset("iris") # 붓꽃 데이터 titanic = sns.load_dataset("titanic") # 타이타닉호 데이터 tips = sns.load_dataset("tips") # 팁 데이터 lights = sns.load_dataset("flights") # 여객운송 데이터 간단한 예제 import pandas as pd import matplot.. 2022. 3. 28.
728x90
반응형