[파이썬] 데이터 시각화와 수치형 데이터

데이터 시각화는 데이터 분석 과정에서 매우 중요한 역할을 합니다. 시각화를 통해 수치형 데이터의 패턴과 관계를 빠르게 파악할 수 있으며, 결과를 직관적으로 이해할 수 있습니다. 이번 블로그 포스트에서는 Python을 사용하여 데이터 시각화를 위한 도구와 수치형 데이터의 시각화에 대해 알아보겠습니다.

데이터 시각화 도구

데이터 시각화를 위해 다양한 도구와 라이브러리들이 있습니다. 그 중에서도 Python은 데이터 시각화에 매우 효과적인 도구입니다. 몇 가지 주요한 도구들을 살펴보겠습니다.

  1. Matplotlib: Python에서 가장 많이 사용되는 시각화 라이브러리입니다. 다양한 그래프 타입을 지원하며, 사용하기 간편합니다. (예: 선 그래프, 막대 그래프, 산점도 등)
import matplotlib.pyplot as plt

# 선 그래프
x = [1, 2, 3, 4, 5]
y = [2, 4, 6, 8, 10]
plt.plot(x, y)
plt.show()

# 막대 그래프
x = ['A', 'B', 'C', 'D']
y = [10, 15, 7, 12]
plt.bar(x, y)
plt.show()

# 산점도
x = [1, 2, 3, 4, 5]
y = [2, 4, 6, 8, 10]
plt.scatter(x, y)
plt.show()
  1. Seaborn: Matplotlib을 기반으로 한 통계와 관련된 시각화를 위한 라이브러리입니다. Matplotlib보다 더 간단하고 통계적인 시각화를 생성할 때 유용합니다.
import seaborn as sns

# 박스 플롯
x = ['A', 'A', 'B', 'B', 'B', 'C']
y = [10, 15, 7, 12, 6, 9]
sns.boxplot(x, y)
plt.show()

# 히스토그램
data = [5, 10, 15, 20, 25, 30]
sns.histplot(data)
plt.show()

# 히트맵
data = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
sns.heatmap(data)
plt.show()
  1. Plotly: MatplotlibSeaborn보다 인터랙티브한 시각화를 제공하는 라이브러리입니다. 웹상에서 동적으로 그래프를 만들 수 있습니다.
import plotly.express as px

# 3D 산점도
df = pd.DataFrame({'x': [1, 2, 3], 'y': [4, 5, 6], 'z': [7, 8, 9]})
fig = px.scatter_3d(df, x='x', y='y', z='z')
fig.show()

# 막대 그래프
df = pd.DataFrame({'x': ['A', 'B', 'C'], 'y': [10, 15, 20]})
fig = px.bar(df, x='x', y='y')
fig.show()

# 지도
df = px.data.gapminder().query("year == 2007")
fig = px.choropleth(df, locations="iso_alpha", color="gdpPercap")
fig.show()

수치형 데이터 시각화

이제 데이터 시각화를 통해 수치형 데이터를 어떻게 분석할 수 있는지 알아보겠습니다. 예를 들어, 주식 가격 데이터를 시각화하여 분석해보겠습니다.

import yfinance as yf

# Yahoo Finance에서 주식 데이터 가져오기
ticker = "AAPL"  # 애플 주식
data = yf.download(ticker, start="2020-01-01", end="2021-01-01")

# 종가 데이터 시각화
plt.plot(data['Close'])
plt.title('Stock Price of {}'.format(ticker))
plt.xlabel('Date')
plt.ylabel('Price')
plt.show()

위의 코드를 실행하면 애플(AAPL) 주식의 종가 데이터를 그래프로 확인할 수 있습니다. 데이터의 패턴과 추이를 시각적으로 파악할 수 있습니다.

결론

데이터 시각화는 수치형 데이터를 이해하고 분석하는 데 매우 유용한 도구입니다. Python을 사용하여 Matplotlib, Seaborn 및 Plotly와 같은 다양한 시각화 도구를 활용할 수 있으며, 데이터의 패턴과 관계를 빠르게 파악할 수 있습니다. 데이터 시각화를 통해 보다 직관적이고 명확한 분석 결과를 얻을 수 있으며, 더 효과적인 결정을 내릴 수 있습니다.