IBM Developer Japan Webサイトは2021年3月15日をもって終了となり、日本語コンテンツの一部は、オープンソースとして、提供予定です。 URLはこちら

Data Refinery によるデータの可視化

このチュートリアルはラーニング・パス「IBM Cloud Pak for Data 入門」を構成するコンテンツになっています

Data Refinery は IBM Watson® の一部であり、IBM Public Cloud 上の IBM Watson Studio から使用できます。また、IBM Cloud Pak® for Data を利用してオンプレミスで実行される IBM Watson Knowledge Catalog にも含まれています。データ・サイエンティスト、データ・エンジニア、ビジネス・アナリスト向けに設計された、このセルフサービスのデータ準備クライアントを利用すれば、膨大な量の生データを、利用可能な品質の高い情報にすばやく変換してすぐに分析できる状態にすることができます。Data Refinery では簡単にデータを探索して準備し、組織全体にわたって信頼できるデータを配信できます。

学習の目的

このチュートリアルを完了すると、以下の方法がわかるようになります。

  • Data Refinery で使用するデータを IBM Cloud Pak for Data プラットフォームにロードする
  • コマンド・ラインで R コードを入力するか、メニューから操作を選んで、サンプル・データセットを変換する
  • データ・フロー・ステップを使用して処理結果を追跡する
  • チャートとグラフでデータを可視化する

前提条件

所要時間

このチュートリアルの所要時間は約 45 分です。

手順

ステップ 1: billing.csv データを Data Refinery にロードする

billing.csv ファイルをダウンロードします。

プロジェクト のホームで、「Data sets (データセット)」、「+Add Data Set (データセットの追加)」の順にクリックし、billing.csv ファイルを選択します。

billing.csv データを追加する操作を示す画面のスクリーンショット

新しく追加した billing.csv ファイルをクリックします。

Data Refinery が起動して、以下の図に示すようにデータが開かれます。

Data Refinery に表示された BILLING テーブルを示す画面のスクリーンショット

ステップ 2: データを精製する

Data (データ)」タブでデータを精製する作業を開始します。

サンプル・データを変換するには、コマンド・ラインで R コードを入力するか、メニューから操作を選択します。例えば、コマンド・ラインに「filter」と入力すると、自動補完機能によって、構文に関するヒントとコマンドの使い方に関するヒントが示されます。

コマンド・ラインに filter と入力した画面のスクリーンショット

あるいは、演算または関数の名前にマウスのポインターを合わせると、そのコマンドの説明と実行方法に関する詳細が示されます。どのような処理が行われるかを理解したら、「Apply (適用)」をクリックして、その演算をデータセットに適用します。

TotalCharges」列を選択して強調表示してから「+Operation (演算)」ボタンをクリックします。

「Operation (演算)」ボタンを選択する操作を示す画面のスクリーンショット

まず、「TotalCharges」が文字列であることがわかります。けれども合計請求金額は 10 進数でなければなりません。この値を 10 進数に変換しましょう。演算「Convert Column Type (列の型を変換)」を選択します。

「Convert Column Type (列の型を変換)」を選択する操作を示す画面のスクリーンショット

型として「Decimal (10 進数)」を選択して、「Apply (適用)」をクリックします。

10 進数に変換する操作を示す画面のスクリーンショット

filter (フィルター)」をクリックして、ドロップダウンから「TotalCharges」列、演算「Is empty (空)」の順に選択します。

空の行をフィルタリングする操作を示す画面のスクリーンショット

TotalCharges の値が空の行は 3 つしかないことがわかります。

空の行をフィルタリングした結果を示す画面のスクリーンショット

これらの行をデータセットから破棄すれば無駄を省けるので、破棄しましょう。

TotalCharges」列で演算「Remove empty rows (空の行を削除)」を選択します。

空の行を削除する操作を示す画面のスクリーンショット

さらに、「CustomerID」列も削除できます。後でコード・パターンで機械学習モデルをトレーニングするときに、この列は役に立ちません。IBM Cloud Pak for Data ラーニング・パスを続けるとしたら、「Remove (削除)」演算を選択して「Apply (適用)」をクリックしてください。

CustomerID 列を削除する操作を示す画面のスクリーンショット

ステップ 3: データ・フロー・ステップを使用して処理結果を追跡する

意図しない結果となったら、円矢印アイコンを使って処理を取り消し (またはやり直し) できます。

前回の処理を取り消す操作を示す画面のスクリーンショット

データ精製の作業中に、IBM Data Refinery はデータ・フローに沿ったステップを追跡します。ステップは変更できます。さらに、ステップを選択して、その特定の時点にデータ変換を戻すこともできます。

データ・フローに沿って行ったステップを確認するには、「Steps (ステップ)」ボタンをクリックします。これにより、データに対して行った演算が表示されます。

データ・フローのステップを示す画面のスクリーンショット

これらのステップをリアルタイムで変更して、今後使用できるように保存できます。

ステップ 4: データのプロファイルを作成する

Profile (プロファイル)」タブをクリックすると、データに関する複数の大まかなヒストグラムが表示されます。

Data Refinery の「Profile (プロファイル)」タブを表示する画面のスクリーンショット

これらのヒストグラムから、データに関する次の洞察を得ることができます。

  • 2 年または 1 年契約の顧客に比べ、2 倍の顧客が月極めで契約しています。

  • 請求書をペーパーレスにしている顧客のほうが多いものの、いまだに約 40% の顧客が請求書の郵送を選んでいます。

  • MonthlyChargesTotalCharges の分布がわかります。

  • 「Churn」列を見ると、かなりの数の顧客がサービスを契約解除すると見込まれていることがわかります。

ステップ 5: チャートとグラフを使用してデータを可視化する

Visualizations (可視化)」タブを選択すると、列の可視化方法の選択肢が表示されます。以下の図で「Click here (ここをクリック)」と示されている「Columns to Visualize (可視化する列)」の余白の部分をクリックし、「TotalCharges」を選択してから「Visualize data (データを可視化)」をクリックしてください。

「TotalCharges」列を可視化する操作を示す画面のスクリーンショット

デフォルトでは、データがヒストグラムで示されますが、他のタイプのグラフも選択できます。例えば、「Scatter plot (散布図)」をクリックします。

TotalCharges ヒストグラムを可視化する操作を示す画面のスクリーンショット

散布図の設定で、x 軸として「TotalCharges」、y 軸として「MonthlyCharges」、「Color map (カラー・マップ)」として「Churn (チャーン)」を選択します。

x 軸、y 軸、カラー・マップを選択する操作を示す画面のスクリーンショット

必要に応じて、スクロールダウンして散布図のタイトルとサブタイトルを指定できます。「Actions (アクション)」の下にある歯車アイコンをクリックすると、「Start over (もう一度やり直す)」、「Download chart details (チャートの詳細をダウンロード)」「Download chart image (チャートの画像をダウンロード)」、「Global visualization preferences (可視化のグローバル設定)」などのタスクを選択できます。

可視化のタイトルの設定とその他の選択項目を示す画面のスクリーンショット

Global visualization preferences (可視化のグローバル設定)」では、「Titles (タイトル)」、「Tools (ツール)」、「Color schemes (カラー・スキーム)」、「Notifications (通知)」を設定できます。「Color scheme (カラー・スキーム)」を「Vivid (鮮明)」に設定しましょう。

鮮明な色の可視化を設定する操作を示す画面のスクリーンショット

すべてのグラフに鮮明な色が適用されます。

鮮明な色で表示された可視化を示す画面のスクリーンショット

まとめ

このチュートリアルでは、IBM Cloud Pak for Data 上の IBM Data Refinery の威力を明らかにする簡単な例を紹介しました。Data Refinery ではデータを変換するためにコマンド・ラインで R コードを使って、列に対するさまざまな演算を行えることを説明し、例として、データ型を変換し、空の行を削除し、列そのものを削除しました。続いて、データ・フローのすべてのステップは記録されることを説明しました。したがって、ステップを削除したり、繰り返したりすることも、個々のステップを編集することもできます。さらに、Data Refinery ではデータのプロファイルをすばやく作成して、ヒストグラムと各列の統計を表示できることも説明しました。そして最後に、さらに詳細な可視化を行えることを説明し、例として TotalCharges と MonthlyCharges をマッピングし、チャーンの結果を色で強調表示する散布図を作成しました。

このチュートリアルはラーニング・パス「IBM Cloud Pak for Data 入門」を構成するコンテンツです。このシリーズで引き続き IBM Cloud Pak for Data の詳細を学ぶには、次のコード・パターン「Watson Machine Learning と Jupyter Notebook を利用してデータ分析、モデルの作成、デプロイを行う」に進んでください。