ドキュメントの検索
karat

+

K

APIリファレンス ↗
分析Code Workbookテンプレートはじめに
Feedback

注: 以下の翻訳の正確性は検証されていません。AIPを利用して英語版の原文から機械的に翻訳されたものです。

はじめに

このチュートリアルでは、以下の内容を実行します。

チャートの作成

titanic_dataset は、行(乗客を表す)と列(乗客に関する情報を表す)を含んでいるため、棒グラフを使って、特定の乗客の属性(Sex や Pclass など)に対する乗客数を可視化することができます。たとえば、以下は性別別の乗客の内訳です。

template-bar-chart

この例では、所望のチャートを作成するトランスフォームを作成します。bar_chart_of_row_counts という名前の Python トランスフォームを作成し、次のコードを挿入してください。

Copied!
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 def bar_chart_of_row_counts(titanic_dataset): import matplotlib.pyplot as plt from pyspark.sql import functions as F import numpy as np input_df = titanic_dataset categorical_column = "Sex" # カウントを計算する total = input_df \ .groupBy(categorical_column) \ .agg(F.count("*").alias("count")) \ .orderBy("count") # 集計したデータセットをpandasに変換 total_pdf = total.toPandas() # プロットのコード fig = plt.figure() ax = fig.add_subplot(111) y_pos = np.arange(len(total_pdf[categorical_column])) ax.set_yticks(y_pos) ax.barh(y_pos,total_pdf["count"]) ax.set_yticklabels(total_pdf[categorical_column]) plt.xlabel("count") plt.ylabel(categorical_column) plt.tight_layout() plt.show() # 集計したデータフレームを返して、データセットとして保存する return total

このトランスフォームを実行すると、上に示したチャートがワークブックのトランスフォームノードのグラフに表示されます。トランスフォームノード内のチャートにマウスオーバーして View Image を選択することで、フルスクリーンの画像ビューに移動することもできます。この画像ビューアは、コンテンツサイドバーと Visualization タブからもアクセスできます。

チャートを SVG として作成するには、プロットを作成する前に以下のコードを使用してください:

Copied!
1 2 # 出力画像のタイプを'svg'に設定します set_output_image_type('svg')

または、より良い可視性のためにデコレーターを使用します:

Copied!
1 2 3 4 5 # 'svg'という形式で出力する画像のタイプを指定します @output_image_type('svg') def bar_chart_of_row_counts(titanic_dataset): # ここにコードを書く # ...

テンプレートの作成

次に、この変換をテンプレートに変換して、一般化して再利用できるようにします。コードエディターの右上にあるActionsボタンをクリックし、Create templateをクリックします。

creating_a_template_1

これで、フルスクリーンエディターのテンプレート作成ビューに移動します。 テンプレートエディターでは、テンプレートの名前、説明、パラメーターを編集できます。このテンプレートの名前をBar Chart of Row Counts by Categorical Variableにし、以下のような説明を付けてみましょう:Create a transform with a bar chart of the row counts of 1 categorical column in any input dataset.

creating_a_template_2

任意の入力データセット - この場合は titanic_dataset のみ - は、テンプレートの dataset 型のパラメーターとして自動的に追加されます。テンプレートエディターで titanic_dataset をクリックして変更します。このテンプレートを汎用的に使いたいので、パラメーター名を titanic_dataset から input_dataset に変更し、説明を追加します。

creating_a_template_3

変換コード内の {{{input_dataset}}} の2つのインスタンスがハイライト表示されます。次に、入力列をパラメータ化しましょう。コード本文内の変数をテンプレートの入力パラメーターとして割り当てるには、変換の右上にある Add new parameter をクリックして、コード内の適切な変数をハイライトします。以下のように "Sex" をハイライトします:

creating_a_template_4

これにより、このコードの一部が、ソースデータセットが input_dataset 型のパラメーターとして追加されます。テンプレートエディターで、 param1 パラメーター名を編集し、それを selected_column に変更します。

この例のコードでは、最初の変換で列名を変数として定義しているため、一度だけパラメータ化する必要があります。他の変換をテンプレート化するときは、 Add ボタンを使用して同じパラメーターのインスタンスを追加できます。

次に、このテンプレートをデフォルトでデータセットとして保存するかどうかを選択します。 Save as dataset ボックスをチェックすると、テンプレートが追加されたときに、デフォルトで永続化された変換として追加されます。 Save as dataset がチェックされていない場合、テンプレートはデフォルトで永続化されていない変換として適用されます。今回は、出力を他のアプリケーションで使用したいので、デフォルトでデータセットとして保存を選択しましょう。

template-persistence

最後に、Create template ボタンをクリックしてテンプレートを作成し保存します。新しいテンプレートを作成するたびに、それを保存するフォルダーを選択する必要があります。この例では、ホームフォルダーにテンプレートを保存できます。

テンプレートは、アクセス権を持つユーザーだけが発見して使用できるため、作業中はホームフォルダーにテンプレートを保存し、広範囲に普及させたいときに共有フォルダーに移動できます。テンプレートは、Data Catalogにも追加できます。

テンプレートの使用

テンプレートを作成して保存した後、テンプレートをポイントアンドクリックの方法で使用できます。

use-template-initial-screen

利用可能なテンプレートを表示するには、変換作成ビューで Browse all templates をクリックします。

template-library

Browse Templatesでは、テンプレートを名前、説明、タグで検索したり、Favorites、Recently used templates、またはFiles structureに基づいてブラウズしたりできます。テンプレートを適用するには、その名前をクリックし、"Select"を選択します。作成したばかりのテンプレートを追加しましょう。

テンプレートをグラフに追加した後、変換の名前を変更し、入力を記入できます。input_dataset パラメーターを割り当てるには、Click here to add dataset をクリックし、グラフ内の titanic_dataset をクリックします。これで、任意の列を selected_column パラメーターとして選択し、その列に基づいたチャートを作成できます。

Run を選択して変換を計算します。出力が可視化の変換の場合、グラフビューはGraphのデフォルトです。右クリックし、Edit を選択し、次に Show table view を選択すると、ノードをテーブルとして表示できます。

テンプレートの編集

テンプレートの背後にあるコードを更新したい場合は、Actions をクリックし、次に Edit Template をクリックしてコードエディターに入り、テンプレートを編集します。

edit-template-button