주피터노트북 44

pandas pivot_table

피벗테이블 컬럼값을 인덱스로 만들고, 인덱스를 중복제거하여 유니크하게 만드는 방법 pd.pivot_table(데이터프레임, index = ['컬럼명'] 이러한 데이터 프레임이 있다면 여기서 Name 컬럼에 중복되는 데이터가 많다 이러한 경우 피벗테이블을 이용해 쉽게 유니크 시킬수 있음 이런식으로 중복되는 컬럼은 인덱스로 옮기며 하나로 합쳐지고 그외 숫자 데이터도 합쳐지는걸 볼수있다. 이때, 기본 디폴트는 숫자데이터의 평균 파라미터 aggfunc= np.sum 파라미터 aggfunc은 데이터 처리를 표현해줌 파라미터 values = ['컬럼명'] 원하는 데이터만 피벗테이블화 시킬수 있음 피벗테이블 함수) pd.pivot_table(데이터프레임, index = ['컬럼명']) 파라미터 aggfunc= 식 숫..

파이썬 데이터 시각화7 plt.tilte 한글사용 가능하게 하기

import numpy as np import pandas as pd import matplotlib.pyplot as plt import seaborn as sb %matplotlib inline import platform from matplotlib import font_manager, rc plt.rcParams['axes.unicode_minus'] = False if platform.system() == 'Darwin': rc('font', family='AppleGothic') elif platform.system() == 'Windows': path = "c:/Windows/Fonts/malgun.ttf" font_name = font_manager.FontProperties(fname=p..

파이썬 데이터시각화6 Heatmaps

히트맵 스캐터사용시엔 데이터별 구분에 직관성이 떨어짐 히트맵은 색깔로 데이터 분포를 표시해서 데이터가 많고 적음을 표시할 수 있다. plt.hist2d(data = 데이터프레임 , x='비교컬럼', y='비교컬럼') 히스토그램을 2차원으로 표현한다는 뜻 데이터가 없는 부분에도 색이 있기때문에 표현이 힘듬 cmin = 0.n 파라미터 cmin은 데이터 없는 부분 색을 지울수 있음 plt.colorbar() 어떤 색이 많은 데이터를 함유하는지 표시가 가능 파라미터 cmap='viridis_r' 농도가 많을수록 진하고 없을수록 연하게 바꿀수 있음 bins = n 당연히 더 촘촘하게 넉넉하게 bin의 범위도 설정 가능 plt.hist2d(data = 데이터프레임 , x='비교컬럼', y='비교컬럼', cmin ..

파이썬 데이터시각화5 Scatterplots/regplot/pairplot/상관계수

Scatterplots 두 컬럼간의 관계를 차트로 표현하는 방법 비례,반비례,아무관계 없음을 확인할수있음 plt.scatter(data = 데이터프레임, x='비교할첫번째 칼럼',y='주번째 컬럼' ) plt방법 반비례하는 모습을 이렇게 시각화된 모습으로 보는게 가능 데이터프레임.corr() 보통 scatter와 상관관계 계수를 붙여서 많이 활용 수많은 컬럼과 컬럼사이 상관관계 계수가 표현 원하는 값만 가져와서 보여줄수도 있음 regplot seaborn의 rgplot을 활용한 방법 sb.regplot(data= df1, x='비교컬럼1', y='비교컬럼2') 그래프와 상관관계 분포를 한번에 보여준다. pairplot 데이터마다 매칭하여 비교 2개이상의 데이터를 비교할수있음 sb.pairplot(data..

파이썬 데이터시각화 라이브러리4 subplots

서브플롯 차트영역안에 여러개 데이터를 표현하는것 plt.subplot(행,열,차트순서번호) 데이터시각화 라이브러리 함수 사용 plt.subplot(행,열,차트순서번호) 데이터시각화 라이브러리 함수 사용 보기 편하게 가로세로 비율 정하기 plt.figure(figsize= (가로,세로) ) 코드 첫번째로 써줌 plt.subplot(행,열,차트순서번호) 데이터시각화 라이브러리 함수 사용 plt.figure(figsize= (가로,세로) )

파이썬 데이터시각화 라이브러리3 히스토그램

히스토그램 구간을 설정하여, 해당 구간에 포함되는 데이터가 몇개인지 세는 차트 각 구간을 bin이라고 하며 보통 복수형인 bins라고 부른다 히스토그램은 똑같은 데이터를 가지고 bin에따라 차트모양이 바뀌기 때문에 해석이 달라진다 plt.hist(data= 데이터프레임 , x='컬럼') 직관성이 떨어지니 막대 사이 간격을 조정하는 파라미터는 rwidth = 0.n n의 간격 bins = n n은 디폴트가 10개이고 수정가능 모든 범위에서 빈값을 나눌경우 최소값과 최대값으로 범위를 지정해서 변수로 지정해서 bins에 넣어저도 가능하다 히스토그램 기본 plt.hist(data= 데이터프레임 , x='컬럼명', rwidth = 0.n, bins = )

데이터시각화 라이브러리2 파이차트

파이차트 데이터를 퍼센테이지로 비교해서 보고싶을때 사용하며 특정컬럼을 불러와서 표현하면됨 plt.pie(변수, labels= '컬럼변수'.index) 파라미터 autopct='%.nf 파라미터의 autopct 는 %.nf 소수점 n번째 자리까지 표현 startangle = 파이차트 시작 각도 wedgeprops={'width' : 0.n} ) n은 구멍 크기 plt.title('@@@@@') 차트 제목설정 가능 plt.legend() 범례 설정 디폴트는 레이블명으로 설정 되고 본인이 직접 설정도 가능하다 plt.pie(데이터프레임, labels= 활용컬럼변수.index , autopct='%.nf' ,startangle = n , wedgeprops={'width' : 0.n} ) plt.title(' ..

데이터시각화 라이브러리1 카운트플롯 matplotlib/seaborn/plt/barchart

데이터 시각화 많은 데이터를 보기쉽게 시각화 하여 빅데이터를 처리하기 용이하게 해주는 과정 대표적인 데이터 시각화로 Plot 파이썬에 내장된 가장 기본적인 데이터 시각화 방법 import matplotlib.pyplot as plt x가 0~9까지 숫자라고 하고 y와 x가 같다고 했을때 plt.plot(x,y) [] plt.show() 위에 더러운거 없이 깨끗함 plt.savefig('test.jpg') 사진저장 실행중인 주피터노트북 위치에 저장 막대차트 데이터프레임, csv 에서 특정 컬럼이 카테고리컬 데이터일때 각 value 별로 몇개씩이 있는지를 차트로 표현이 가능하다 seaboen 라이브러리 사용후 카운트플로 함수를 사용 sb.countplot(data = '데이터프레임' , x='특정칼럼', c..

파이썬 라이브러리22 pandas 데이터프레임 정렬하기/sort/ascending

데이터 정렬하기 1)오름차순 변수.sort_values('컬럼') 변수.sort_values('컬럼' , ascending = True) 변수.sort_values('컬럼' , ascending = True) ascendign(증가) = True란뜻으로 오름차순을 의미 기본적으로 어센딩이 포함된 형태가 맞지만 기본적으로 디폴트값으로 설정되어 있어서 특별하게 표시를 안해줘도 오름차순으로 정렬 된다. 이 데이터에서 경력으로 정렬을 한다면 2)내림차순 변수.sort_values('컬럼' , ascending = False) 반대로 어센딩이 거짓이라면 내림차순 3)혼합 이름은 오름차순으로 정리하고 경력은 내림차순이라면 먼저 이름과 경력을 정렬을 해보고 df.sort_values(['Employee Name','..

파이썬 라이브러리21 pandas 데이터프레임 : applying 함수

데이터프레임 함수적용 데이터프레임의 데이터에 함수를 이용해서 새로운 데이터를 만들고 컬럼을만들어 저장하기 데이터를 한번에 가공하는 함수는 변수['컬럼'].apply( 함수 ) apply 함수안에 내가 적용하고 싶은 함수의 이름만 써준다 이때 함수옆에()는 빼준다. 이 데이터 프레임안에 직원의 이름이 몇글자인지 나타내는 컬럼을 작성 할때. 기존 글자수를 세는 파이썬 기본함수 len()이 있다 기존엔 문자데이터 하나를 변수에 저장하고 변수에 함수를 적용하여 글자수를 확인하는 하나하나씩 데이터를 저장했는데 df['Employee Name'].apply( len ) 0 6 1 5 2 5 3 4 Name: Employee Name, dtype: int64 df데이터프레임 안에 'Employee Name' 컬럼안 ..