Spark Dataframe을 던져 히트 맵을 출력하는 함수

5847 단어 스파크

소개



Spark df에서 히트 맵을 만들 때마다 몇 번이나 같은 것을 조사하고 있으므로, 비망록이 테라 함수로 해 둡니다.

기능



Spark df와 상관관계를 조사하는 컬럼을 넣은 리스트, 2개를 인수에 취합니다.

def sparkdf_to_heatmap(spark_df, col_lis):
  import matplotlib.pyplot as plt
  import numpy as np
  import pandas as pd
  import seaborn as sns

  # 図の見た目指定
  # 見た目を逐一変えたい場合は引数に入れ込む
  # style_option from: 'paper', 'notebook', 'talk', 'poster'
  style = 'poster'
  color = 'Blues'
  fig_width = 30
  fig_height = 15
  linewidth = .5
  fmt = '.2f'

  sns.set_context(style)
  df_pd = spark_df.select('*').toPandas()
  df_pick = df_pd.loc[:, col_lis]
  fig, ax = plt.subplots(figsize=(fig_width, fig_height))
  ax =  sns.heatmap(df_pick.corr(), annot=True, cmap=color, linewidth=linewidth, fmt=fmt)
  display(fig)

사용 예



iris를 사용해보십시오.
from sklearn.datasets import load_iris
import numpy as np
import pandas as pd

# Enable Arrow-based columnar data transfers
spark.conf.set("spark.sql.execution.arrow.enabled", "true")

col_lis = iris.feature_names
iris_pd_df = pd.DataFrame(iris.data, columns=col_lis)
iris_spark_df = spark.createDataFrame(iris_pd_df)

sparkdf_to_heatmap(iris_spark_df, col_lis)



사이고에게



Pandas df 로 할 때 클러스터가 달리고 있어 자주 하는 경우에는 요주의. 소규모 데이터로 빨리 컬럼의 상관을 보고 싶을 때.

참고 링크



seaborn의 미세한 외형 조정을 포기하지 마십시오.

좋은 웹페이지 즐겨찾기