본문 바로가기

Python/Data Visualization26

[API 활용] xml 파일 데이터프레임으로 변환 (read_xml) xml 파일 ▶︎ pandas 데이터프레임으로 서울시 열린데이터 광장 API 를 가지고 예제 진행 원하는 컬럼들만 가져와서 처리가 편한 pandas dataframe으로 변환 read_xml 메서드로 쉽게 xml 파일을 변환할 수 있음 원하는 컬럼을 지정하고, 컬럼명도 바꿔준다 결측치가 있는 경우, 이를 제외하고 인덱스를 리셋 import pandas as pd import xml.etree.ElementTree as ET import requests url = "http://openapi.seoul.go.kr:8088/인증키/xml/tbLnOpendataRtmsV/1/5/" response = requests.get(url) df = pd.read_xml(response.content) select_c.. 2023. 8. 7.
상관관계를 확인하는 그래프 - Heatmap & Scatter 그래프 feature 간 상관관계를 보여주는 그래프의 두가지 타입 : heatmap 그래프와 Scatter(산점도) 그래프 1. Heatmap 그래프 그려보기 👉 모든 컬럼간 상관관계를 점으로 보여주는 것. (색이 짙을시 상관관계가 높음) doc.corr() #doc라는 데이터프레임의 feature 간 상관관계를 보여줌. doc2 = doc.corr() #doc2라는 변수에 해당 데이터셋을 저장 doc2.iplot(kind='heatmap') #iplot으로 히트맵 그래프 그리기 옵션 : colorscale = 'ylorrd' 등이 있음. 2. Scatter 그래프 그려보기 👉 두 컬럼간 상관관계를 점으로 보여주는 것. (우상향시 상관관계가 높음) doc.iplot(kind='scatter', x = 'A', .. 2023. 3. 12.
[탐색적 데이터 분석] 테이블 데이터와 시계열 데이터 테이블 데이터란? 엑셀처럼 행과 열로 나타낸 데이터로, 대부분 이 형태로 처리 가능함 구성요소: feature : 테이블의 열 record : 테이블의 행 index : 각 데이터 위치를 식별하기 위한 값 시계열 데이터란? 일정 시간 간격으로 배치된 데이터(예: 주식!) 막대그래프와 라인그래프로 시각화함 시계열 데이터 시각화하기 pd.date_range(start = '2023-01-01', end = '2023-12-31') # 2023년 1월 1일 부터, 말일까지 하루 단위로 인덱스가 생성됨 freq = '3M' (3개월 단위) freq = 'D' (1일 단위, 디폴트) periods = 10 (start와 End 날짜 사이를 10등분하는 것) [예시] date_index = pd.date_range.. 2023. 3. 12.
[탐색적 데이터 분석] 수치형 데이터의 이해, 그래프로 표현하기 범주형 데이터 종류 (1) 명목형 데이터 : 카테고리, 항목 등 분류되어 이미 정해진 값이 있는 데이터, 그 값을 수준(Level)이라고 함. (2) 순서형 데이터 : 정해진 값 사이에 순서 관계가 있는 데이터 범주형 데이터 파악 순서 수준별 데이터 분류하고, 각 갯수 세기 절대빈도 : 절대적인 갯수 막대그래프로 확인 상대빈도 : 각 수준별 비율(%) 원그래프로 확인 수준별 데이터 갯수 세기 Series 형 데이터 파악하는 것과 동일한 방법 사용(컬럼별로) size : 전체 사이즈 count() : 데이터 없는 경우를 제외한 사이즈 unique() : 유일한 값만 value_counts() : 데이터 없는 경우를 제외한, 각 값의 갯수 df['A'].value_counts() #A컬럼의 데이터 없는 경우.. 2023. 3. 9.
[탐색적 데이터 분석] 수치형 데이터의 이해, 그래프로 표현하기 데이터를 분석하고, 시각화하는 전반적인 과정에서 데이터의 분류를 이해하고 있으면 도움이 될 것! 크게 수치형과 범주형 데이터로 나뉨 수치형 데이터 수치형 데이터의 개념 (1) 연속형 데이터 : 특정 범위 안에 어떤 값(정수와 부동소수점)이 가질 수 있는 데이터 (2) 이산 데이터 : 정수만 가질 수 있는 데이터 ▶︎ 다섯 수치 요약(5 number summary) 로 간단히 수치형 데이터를 파악할 수 있음. - 최솟값 - 제 1사분위수 : 25%에 해당하는 값 - 중간값 (=제 3사분위수) : 50%에 해당하는 값 - 제 3사분위수 : 75%에 해당하는 값 - 최댓값 ▶︎ 왜 평균이 없을까? - 특잇값이 평균에 포함되므로, 평균을 잘 보지 않기 때문! - 이상치 특잇값(outlier, 극단값)은 직접 데.. 2023. 3. 9.
plotly를 활용한 데이터시각화 : plotly.graph_objects (막대 그래프) 기본적인 그래프 그리기 방법은 꺾은선 그래프 그리기와 동일하다. 바 그래프 예시를 통해, 그래프 세부조정 옵션에 대해 간략이 정리해보았다. 데이터 프레임은 df 에 저장되어 있는 것으로 시작! 1. 두 개의 바 그래프 그리기 👉 textposition: 보여지기를 지정한 텍스트가 어디에 나타날지 선택(공식홈페이지에 다양한 옵션 값 확인 가능) 👉 texttemplate : 텍스트를 어떻게 보여줄 지(예시는 소수점 둘째자리 까지 : '%{y(표시할 값) : .2f (소수점 둘째자리까지)}' import plotly.graph_objects as go fig = go.Figure() fig.add_trace( go.Bar( x=df.index, y=df['B'], name='A', text=df['B'], .. 2023. 3. 9.
plotly를 활용한 데이터시각화 : plotly.graph_objects (꺾은선 그래프) plotly로 그릴 수 있는 그래프 종류 iplot, plotly.express, plotly.graph_objects iplot부터 순차적으로 조금씩 더 세부기능을 쓰며 복잡해진다고 보면 됨 plotly.graph_objects 로드 !pip install plotly import plotly.graph_objects as go # jupyter notebook 에서 그래프가 보이도록하는 명령(필수는 아님, 안보이면 쓰기) import plotly.offline as pyo pyo.init_notebook_mode() 📍 그래프 그리는 기본적인 순서 기본 객체 생성 만들기 : fig = go.Figure() 그래프 객체 추가 : fig.add_trace() (예: go.Scatter()) layout .. 2023. 3. 9.
plotly를 활용한 데이터시각화 : iplot() 데이터 시각화 주요 시각화 라이브러리 : matplotlib, seaborn, plotly matplotlib는 오래된 라이브러리로, 한계 보완을 위해 seaborn과 함께 쓰이는 경우가 많다 plotly는 최신 시각화 라이브러리로, pandas 기능과 조합하여 시각화 가능 라이브러리 설치 (3가지) 👉 chart_studio 와 plotly 라이브러리 모두 설치해야함. 👉 chart_studio : plotly로 작성된 그래프를 웹 상에서 보여주는 역할 📍 cufflinks : pandas로 그래프를 그리기 위한 기능을 plotly와 연결시키는 역할 !pip install plotly chart_studio !pip install cufflinks 라이브러리 로드 👉 iplot() 함수 호출전 로드해줘.. 2023. 3. 9.
728x90