データのクレンジングとフィルタリング

Microsoft Fabricでデータを変換して分析する

Luis Silva

Solution Architect - Data & AI

データクレンジングのツール

 

 

3つのツール(SQL、Spark、Dataflows)のアイコン

Microsoft Fabricでデータを変換して分析する

空白行の処理

  • 行全体が空白の行を削除

 

複数の空白行を含む表が、空白行削除後の表に変換される図

Microsoft Fabricでデータを変換して分析する

Dataflows で空白行を処理する

  • 「空白行を削除」変換

 

Dataflow の [行を削除] メニューで空白行削除オプションを強調し、削除前後の表を示すスクリーンショット

Microsoft Fabricでデータを変換して分析する

Spark で空白行を処理する

  • DataFrame の dropna( ) 関数
  • 任意の null を含む行、またはすべて null の行を削除可能

dropna の2つの使い方で行を削除する前後の表の例

Microsoft Fabricでデータを変換して分析する

重複行の処理

  • 重複行を削除

 

重複行のある表が、重複の一方を削除した表に変換される図

Microsoft Fabricでデータを変換して分析する

Dataflows で重複行を処理する

  • 「重複を削除」変換

 

Dataflow の [行を削除] メニューで重複削除オプションを強調し、削除前後の表を示すスクリーンショット

Microsoft Fabricでデータを変換して分析する

Spark で重複行を処理する

  • DataFrame の dropDuplicates( ) 関数

 

重複行のある表が、dataframe の dropDuplicates 関数実行後に重複が1つ削除された表に変換される図

Microsoft Fabricでデータを変換して分析する

値の置換

  • 列内の特定値を別の値に置換。
  • 空セルを値で埋めることも可能。

 

表内の一部レコードの ABC が XYA に置換される図

Microsoft Fabricでデータを変換して分析する

Dataflows で値を置換する

  • 「値の置換」変換

 

Dataflow の [値の置換] メニューと、空値を '(Unknown)' に置換する前後の表の例

Microsoft Fabricでデータを変換して分析する

Spark で値を置換する

  • DataFrame の replace( ) 関数

 

PySpark の replace 実行後、複数レコードの N/A が 'Unknown' に置換される図

Microsoft Fabricでデータを変換して分析する

データ型の修正

  • モデル全体でのデータ型の一貫性
  • 値の比較をサポート

文字列として保存された数値列を数値型に変換するイメージ

Microsoft Fabricでデータを変換して分析する

データ型の修正

  • モデル全体でのデータ型の一貫性
  • 値の比較をサポート
  • 型固有の操作をサポート
    • 数値列での算術演算
    • 日付/時刻列での日時演算

テキスト列の小文字化・大文字化・トリム、数値列の合計・最大などの変換例

Microsoft Fabricでデータを変換して分析する

Dataflows でデータ型を修正する

  • コンテキストメニュー(方法1):
    1. データビューで列を選択。
    2. 列見出し左のアイコンをクリック。

データビューの列見出し左のアイコン(Change type メニュー)を強調したスクリーンショット

Microsoft Fabricでデータを変換して分析する

Dataflows でデータ型を修正する

  • コンテキストメニュー(方法1):
    1. データビューで列を選択。
    2. 列見出し左のアイコンをクリック。
    3. 一覧から新しいデータ型を選択。

データビューの列見出しのデータ型をクリックした際の Change type メニューのスクリーンショット

Microsoft Fabricでデータを変換して分析する

Dataflows でデータ型を修正する

  • コンテキストメニュー(方法2):
    1. データビューで列を選択。
    2. 列見出しを右クリック。

データ型を変更したい列の見出しを強調したスクリーンショット

Microsoft Fabricでデータを変換して分析する

Dataflows でデータ型を修正する

  • 変換を追加:
    1. データビューで列を選択。
    2. ダイアグラムビューで (+) をクリックして変換を追加。
    3. ポップアップで「型の変更」を選び、新しいデータ型を選択。

Change Type 変換を追加中のクエリのスクリーンショット

Microsoft Fabricでデータを変換して分析する

Spark でデータ型を修正する

  • DataFrame の cast( ) 関数
df.withColumn("new_column_name", df["column_name"].cast("new_data_type"))
  • 例:
# [orderID] 列を integer に変換
df = df.withColumn("orderID", df["orderID"].cast("integer"))
Microsoft Fabricでデータを変換して分析する

データのフィルタリング

  • 条件に基づき行を包含・除外
SELECT
  OrderID, State, Date, Amount
FROM
  Orders 
WHERE
  State = 'NY'

NY 州に関連しない行を除外するフィルタの図

Microsoft Fabricでデータを変換して分析する

Dataflows でフィルタリングする

  • Filter 変換を使用

列に適用したフィルタ変換のスクリーンショット

Microsoft Fabricでデータを変換して分析する

Spark でフィルタリングする

  • DataFrame の filter( ) 関数
  • where( )filter( ) のエイリアス
df.filter( <condition> )
  • 例:
# State = 'NY' の行のみ返す
df.filter( df.state == 'NY' )
Microsoft Fabricでデータを変換して分析する

Passons à la pratique !

Microsoft Fabricでデータを変換して分析する

Preparing Video For Download...