(Python) Pandas를 이용한 데이터분석(9)
-
데이터프레임의 응용
함수매핑 함수매핑은 시리즈 또는 데이터프레임의 개별 원소를 특정 함수에 일대일 대응시키는 과정을 뜻한다. 사용자가 직접만든 함수를 적용할 수 있기 때문에 판다스 기본 함수로 처리하기 어려운 복잡한 연산을 데이터프레임 등 판다스 객체에 적용하는 것이 가능하다. 시리즈 원소에 함수 매핑 import seaborn as sns titanic = sns.load_dataset('titanic') df = titanic.loc[:,['age','fare']] df['ten'] = 10 def add_10(n): return n+10 def add_two_obj(a,b): return a+b #시리즈 변수에 적용 sr1 = df['age'].apply(add_10) #모든행에 add_10 함수 적용 sr2 = df..
2021.07.28 -
데이터전처리
데이터프레임에 원소 데이터 값이 종종 누락되는 경우가 있다. 데이터를 파일로 입력할 때 빠뜨리거나 파일 형식을 변환하는 과정에서 데이터가 소실되는 것이 주요 원인이다. 누락데이터를 NaN(Not a Number) 으로 표시한다. Seaborn 라이브러리의 titanic 데이터의 누락값을 찾아본다. import seaborn as sns df= sns.load_dataset('titanic') print(df.info()) RangeIndex: 891 entries, 0 to 890 Data columns (total 15 columns): # Column Non-Null Count Dtype --- ------ -------------- ----- 0 survived 891 non-null int64 1..
2021.07.15 -
Folium 라이브러리를 이용한 지도 표현
Folium 라이브러리는 지도 위에 시각화 할때 유용한 도구이다. 첫번째로 서울의 지도를 만들어본다. Pycharm 같은 웹IDE가 아닌 IDE는 html 파일로 저장한후 확인해야한다. import folium #서울 지도 만들기 seoul_map = folium.Map(location=[37.55,126.98], zoom_start= 12) #지도를 HTML 파일로 저장하기 seoul_map.save('D:/seoul.html') 지도에 마커를 표시해보자 import folium import pandas as pd #대학교 리스트를 데이터 프레임으로 변환 df = pd.read_excel('D:/5674-833_4th/part4/서울지역 대학교 위치.xlsx',engine= 'openpyxl') #서울..
2021.07.09 -
Seaborn 을 이용한 데이터 시각화
Seaborn은 Matplotlib의 기능과 스타일을 확장한 파이썬 시각화 도구의 고급버전이다. 데이터는 Seaborn 내장 데이터인 titanic 데이터를 사용한다. 처음으로 회귀선이 있는 산점도 그래프를 그려본다. regplot() 함수는 사로 다른 2개의 연속 변수 사이의 산점도를 그리고 선형 회귀분석에 의한 회귀선을 함께 나타낸다. fit_reg = False 옵션을 설정하면 회귀선을 안보이게 할 수 있다. import seaborn as sns import matplotlib.pyplot as plt plt.style.use('seaborn-poster') plt.rcParams['axes.unicode_minus'] = False titanic = sns.load_dataset('titanic..
2021.07.09 -
여러가지 시각화 그래프(Histogram & Scatter & Pie Chart & Box Plot)
히스토그램 히스토그램은 변수가 하나인 단 변수 데이터의 빈도수를 그래프로 표현한다. x축을 같은 크기의 여러 구간으로 나누고 각 구간에 속하는 데이터 값의 개수를 y축에 표시한다. 구간을 나누는 간격의 크기에 따라 빈도가 달라지고 히스토그램의 모양이 변한다. import pandas as pd import matplotlib.pyplot as plt plt.style.use('classic') df = pd.read_csv('D:/5674-833_4th/part4/auto-mpg.csv',header=None) #열이름 지정 df.columns = ['mpg','cylinder','displacement','horsepower','weight', 'acceleration','model year','ori..
2021.07.09 -
Matplotlib 을 통한 인구 이동 그래프(2)
이젠 선그래프가 아닌 면그래프를 그려보자 import pandas as pd import matplotlib.pyplot as plt #한글 폰트 오류 제거 from matplotlib import font_manager,rc font_path ="D:/5674-833_4th/part4/malgun.ttf" font_name = font_manager.FontProperties(fname=font_path).get_name() rc('font',family = font_name) df = pd.read_excel('D:/5674-833_4th/part4/시도별 전출입 인구수.xlsx',engine = 'openpyxl',header =0) df = df.fillna(method='ffill') #누락값을..
2021.07.08