본문 바로가기
728x90
반응형

Python 파이썬59

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.
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.
librosa ) constant Q 변환 librosa.cqt를 이용하면 얻을 수 있다. 1. 예제파일 가져오기 import numpy as np import matplotlib.pyplot as plt from IPython.display import Audio import librosa import librosa.display y, sr = librosa.load(librosa.ex('trumpet')) # Audio를 이용하면 오디오로 들을 수 있다. Audio(data=y, rate=sr) # 다음을 이용하면 원하는 부분만 들을 수 있다. #Audio(data=y[5*sr:10*sr], rate=sr) # 5~10초 2. constant Q 변환 freq_n = 4 # 클수록 더 많은 중심주파수를 가진다. hop_len = 1024 # .. 2022. 3. 28.
librosa ) 소개 & bpm 분석 예제 음악 및 오디오 분석을 위한 파이썬 패키지 bpm 분석 예제 1. 예제파일 경로 가져오기 filename = librosa.example('nutcracker') librosa에 포함된 오디오 예제 파일의 경로(path)를 가져온다. 예제 목록 Key Full name Description brahms Brahms - Hungarian Dance #5 A short performance of this piece, with soft note onsets and variable tempo. choice Admiral Bob - Choice A short drum and bass loop, good for demonstrating decomposition methods. fishin Karissa Hobbs .. 2022. 3. 28.
numpy ) 조건을 이용한 요소 선택(바꾸기) numpy.where() numpy.where( condition, [x, y] ) x, y 가 없을 때 numpy.asarray(condition).nonzero() 와 동일하게 작동함. x, y 가 있을 때 ** condition이 True일 경우 x를 False일 경우 y를 선택한다. 모든 매개변수는 브로드캐스팅이 가능하여야 한다. 요소 선택 np.where([[True, False], [True, True]], [[1, 2], [3, 4]], [[9, 8], [7, 6]]) # 실행결과 array([[1, 8], [3, 4]]) 바꾸기 a = np.array([[0, 1, 2], [0, 2, 4], [0, 3, 6]]) np.where(a < 4, a, -1) # -1 is broadcast # 실행결과 array([[ .. 2022. 3. 28.
matplotlib ) 하나의 figure에 여러 개의 그래프 그리기 하나의 Axes의 여러 그래프 그리기 plot([x], y, [fmt], [x2], y2, [fmt2], ..., **kwargs) 방식 키워드 매개변수가 모든 그래프에 똑같이 적용된다. plt.plot(a, a, 'r--', a, a**2, 'bo', a, a**3, 'g-.', ) plt.show() plt.plot(a, a, 'r--', a, a**2, 'bo', a, a**3, 'g-.', lw=5 ) plt.show() plot() 메소드를 여러번 호출 각각의 그래프마다 마커와 선을 다르게 설정할 수 있다. plt.plot(a, a, 'bo') plt.plot(a, a**2, color='#e35f62', marker='*', linewidth=2) plt.plot(a, a**3, color='.. 2022. 3. 25.
728x90
반응형