bamboolib

重要

この機能はパブリック プレビュー段階にあります。

Note

bamboolib は、Databricks Runtime 11.3 LTS 以降でサポートされています。

bamboolib は、Azure Databricks ノートブック内から、コードなしでデータ分析と変換を実行できるようにするユーザー インターフェイス コンポーネントです。 bamboolib を使用すると、ユーザーはデータをより簡単に操作でき、また一般的なデータ ラングリング、探索、視覚化タスクが高速化されます。 ユーザーがデータを使用してこれらの種類のタスクを完了すると、bamboolib はバックグラウンドで Python コードを自動的に生成します。 ユーザーはこのコードを他のユーザーと共有できます。他のユーザーはこのコードを自分のノートブックで実行して、元のタスクをすばやく再現できます。 また、bamboolib を使用して、追加のデータ タスクによりそれらの元のタスクを拡張できます。このとき、コードの記述方法を知る必要はまったくありません。 コーディングの経験があるユーザーは、このコードを拡張して、さらに高度な結果を作成できます。

バックグラウンドで bamboolib は ipywidgets を使用します。これは IPython カーネル用の対話型 HTML ウィジェット フレームワークです。 ipywidgets は IPython カーネル内で実行されます。

目次

必要条件

クイックスタート

  1. Python ノートブックを作成します。

  2. 要件を満たすクラスターにノートブックをアタッチします。

  3. ノートブックの最初のセルに次のコードを入力し、そのセルを実行します。 bamboolib がワークスペースまたはクラスターに既にインストールされている場合、この手順はスキップできます。

    %pip install bamboolib
    
  4. ノートブックの 2 番目のセルに次のコードを入力し、そのセルを実行します。

    import bamboolib as bam
    
  5. ノートブックの 3 番目のセルに次のコードを入力し、そのセルを実行します。

    bam
    

    注意

    または、既存の pandas DataFrame を出力して、その特定の DataFrame で使用する bamboolib を表示できます。

  6. 主要なタスクを続行します。

チュートリアル

bamboolib は単独で使用することも、既存の pandas DataFrame で使用することもできます。

bamboolib を単独で使用する

このチュートリアルでは、bamboolib を使用して、サンプルの販売データ セットの内容をノートブックに表示します。 次に、bamboolib によって自動的に生成される関連ノートブック コードの一部を試します。 販売データ セットの内容のコピーを照会し、並べ替えたら終了です。

  1. Python ノートブックを作成します。

  2. 要件を満たすクラスターにノートブックをアタッチします。

  3. ノートブックの最初のセルに次のコードを入力し、そのセルを実行します。 bamboolib がワークスペースまたはクラスターに既にインストールされている場合、この手順はスキップできます。

    %pip install bamboolib
    
  4. ノートブックの 2 番目のセルに次のコードを入力し、そのセルを実行します。

    import bamboolib as bam
    
  5. ノートブックの 3 番目のセルに次のコードを入力し、そのセルを実行します。

    bam
    
  6. [Load dummy data] (ダミー データを読み込む) をクリックします。

  7. [Load dummy data] (ダミー データを読み込む) ウィンドウの [Load a dummy data set for testing bamboolib] (bamboolib をテストするためにダミー データ セットを読み込む) で、[Sales dataset] (販売データ セット) を選択します。

  8. [実行] をクリックします。

  9. [item_type] (項目の種類)[Baby Food] (ベビー フード) であるすべての行を表示します。

    1. [Search actions] (検索アクション) リストで、[行のフィルター選択] を選択します。
    2. [行のフィルター選択] ウィンドウの ([where] (場所) の上にある) [選択] リストで、[行の選択] を選択します。
    3. [where] (場所) の下にあるリストで、[item_type] (項目の種類) を選択します。
    4. [item_type] (項目の種類) の横の [選択] リストで、[has value(s)] (1 つ以上の値がある) を選択します。
    5. [has value(s)] (1 つ以上の値がある) の横の [Choose value(s)] (1 つ以上の値の選択) ボックスで、[Baby Food] (ベビー フード) を選択します。
    6. [実行] をクリックします。
  10. このクエリ用に自動的に生成された Python コードをコピーします。

    1. データ プレビューの下にある [コードのコピー] をクリックします。
  11. コードを貼り付けて変更します。

    1. ノートブックの 4 番目のセルに、コピーしたコードを貼り付けます。 次のようになります。

      import pandas as pd
      df = pd.read_csv(bam.sales_csv)
      # Step: Keep rows where item_type is one of: Baby Food
      df = df.loc[df['item_type'].isin(['Baby Food'])]
      
    2. このコードに追加を行い、order_prioC である行のみ表示されるようにし、セルを実行します。

      import pandas as pd
      df = pd.read_csv(bam.sales_csv)
      # Step: Keep rows where item_type is one of: Baby Food
      df = df.loc[df['item_type'].isin(['Baby Food'])]
      
      # Add the following code.
      # Step: Keep rows where order_prio is one of: C
      df = df.loc[df['order_prio'].isin(['C'])]
      df
      

    ヒント

    このコードを記述する代わりに、3 番目のセルで bamboolib を使用して、order_prioC である行のみを表示することでも同じことができます。この手順は、bamboolib が先ほど自動的に生成したコードを拡張する例です。

  12. 行を [リージョン] を基準に昇順に並べ替えます。

    1. 4 番目のセル内のウィジェットの [Search actions] (検索アクション) リストで、[行の並べ替え] を選択します。
    2. [Sort column(s)] (列の並べ替え) ウィンドウの [列の選択] リストで、[リージョン] を選択します。
    3. [リージョン] の横のリストで、[ascending (A-Z)] (昇順 (A から Z)) を選択します。
    4. [実行] をクリックします。

    注意

    これは、次のコードを自分で記述することと同じです。

    df = df.sort_values(by=['region'], ascending=[True])
    df
    

    また、3 番目のセルで bamboolib を使用して、行を [リージョン] を基準に昇順に並べ替えることもできます。 この手順では、bamboolib を使用して、記述するコードを拡張する方法を示します。 bamboolib を使用すると、バックグラウンドで追加のコードが自動的に生成されるため、既に拡張されたコードをさらに拡張できます。

  13. 主要なタスクを続行します。

既存の DataFrame で bamboolib を使用する

このチュートリアルでは、bamboolib を使用して pandas DataFrame の内容をノートブックに表示します。 この DataFrame には、サンプルの販売データ セットのコピーが含まれています。 次に、bamboolib によって自動的に生成される関連ノートブック コードの一部を試します。 DataFrame の内容の一部を照会し、並べ替えたら終了です。

  1. Python ノートブックを作成します。

  2. 要件を満たすクラスターにノートブックをアタッチします。

  3. ノートブックの最初のセルに次のコードを入力し、そのセルを実行します。 bamboolib がワークスペースまたはクラスターに既にインストールされている場合、この手順はスキップできます。

    %pip install bamboolib
    
  4. ノートブックの 2 番目のセルに次のコードを入力し、そのセルを実行します。

    import bamboolib as bam
    
  5. ノートブックの 3 番目のセルに次のコードを入力し、そのセルを実行します。

    import pandas as pd
    
    df = pd.read_csv(bam.sales_csv)
    df
    

    bamboolib では pandas DataFrame のみがサポートされることに注意してください。 PySpark DataFrame を pandas DataFrame に変換するには、PySpark DataFrame で toPandas を呼び出します。 Spark DataFrame 上の Pandas API を pandas DataFrame に変換するには、Spark DataFrame 上の Pandas API で to_pandas を呼び出します。

  6. [Show bamboolib UI] (bamboolib UI の表示) をクリックします。

  7. [item_type] (項目の種類)[Baby Food] (ベビー フード) であるすべての行を表示します。

    1. [Search actions] (検索アクション) リストで、[行のフィルター選択] を選択します。
    2. [行のフィルター選択] ウィンドウの ([where] (場所) の上にある) [選択] リストで、[行の選択] を選択します。
    3. [where] (場所) の下にあるリストで、[item_type] (項目の種類) を選択します。
    4. [item_type] (項目の種類) の横の [選択] リストで、[has value(s)] (1 つ以上の値がある) を選択します。
    5. [has value(s)] (1 つ以上の値がある) の横の [Choose value(s)] (1 つ以上の値の選択) ボックスで、[Baby Food] (ベビー フード) を選択します。
    6. [実行] をクリックします。
  8. このクエリ用に自動的に生成された Python コードをコピーします。 これを行うには、データ プレビューの下にある [コードのコピー] をクリックします。

  9. コードを貼り付けて変更します。

    1. ノートブックの 4 番目のセルに、コピーしたコードを貼り付けます。 次のようになります。

      # Step: Keep rows where item_type is one of: Baby Food
      df = df.loc[df['item_type'].isin(['Baby Food'])]
      
    2. このコードに追加を行い、order_prioC である行のみ表示されるようにし、セルを実行します。

      # Step: Keep rows where item_type is one of: Baby Food
      df = df.loc[df['item_type'].isin(['Baby Food'])]
      
      # Add the following code.
      # Step: Keep rows where order_prio is one of: C
      df = df.loc[df['order_prio'].isin(['C'])]
      df
      

    ヒント

    このコードを記述する代わりに、3 番目のセルで bamboolib を使用して、order_prioC である行のみを表示することでも同じことができます。この手順は、bamboolib が先ほど自動的に生成したコードを拡張する例です。

  10. 行を [リージョン] を基準に昇順に並べ替えます。

    a. 4 番目のセル内のウィジェットで、[行の並べ替え] をクリックします。

    1. [Sort column(s)] (列の並べ替え) ウィンドウの [列の選択] リストで、[リージョン] を選択します。
    2. [リージョン] の横のリストで、[ascending (A-Z)] (昇順 (A から Z)) を選択します。
    3. [実行] をクリックします。

    注意

    これは、次のコードを自分で記述することと同じです。

    df = df.sort_values(by=['region'], ascending=[True])
    df
    

    また、3 番目のセルで bamboolib を使用して、行を [リージョン] を基準に昇順に並べ替えることもできます。 この手順では、bamboolib を使用して、記述するコードを拡張する方法を示します。 bamboolib を使用すると、バックグラウンドで追加のコードが自動的に生成されるため、既に拡張されたコードをさらに拡張できます。

  11. 主要なタスクを続行します。

主なタスク

このセクションの内容は次のとおりです。

セルにウィジェットを追加する

シナリオ: bamboolib ウィジェットをセルに表示します。

  1. ノートブックが bamboolib の要件を満たしていることを確認します。

  2. bamboolib がまだワークスペースまたはクラスターにインストールされていない場合は、ノートブックのセル (できれば最初のセル) で次のコードを実行します。

    %pip install bamboolib
    
  3. できればノートブックの最初または 2 番目のセルで、次のコードを実行します。

    import bamboolib as bam
    
  4. オプション 1: ウィジェットを表示するセルに次のコードを追加し、セルを実行します。

    bam
    

    ウィジェットがコードの下のセルに表示されます。

    または

    オプション 2: pandas DataFrame への参照が含まれるセルで、DataFrame を出力します。 たとえば、次の DataFrame 定義を指定して、セルを実行します。

    import pandas as pd
    from datetime import datetime, date
    
    df = pd.DataFrame({
      'a': [ 1, 2, 3 ],
      'b': [ 2., 3., 4. ],
      'c': [ 'string1', 'string2', 'string3' ],
      'd': [ date(2000, 1, 1), date(2000, 2, 1), date(2000, 3, 1) ],
      'e': [ datetime(2000, 1, 1, 12, 0), datetime(2000, 1, 2, 12, 0), datetime(2000, 1, 3, 12, 0) ]
    })
    
    df
    

    ウィジェットがコードの下のセルに表示されます。

    bamboolib では pandas DataFrame のみがサポートされることに注意してください。 PySpark DataFrame を pandas DataFrame に変換するには、PySpark DataFrame で toPandas を呼び出します。 Spark DataFrame 上の Pandas API を pandas DataFrame に変換するには、Spark DataFrame 上の Pandas API で to_pandas を呼び出します。

ウィジェットをクリアする

シナリオ: ウィジェットの内容をクリアし、新しいデータを既存のウィジェットに読み込みます。

オプション 1: 対象のウィジェットが含まれるセル内で次のコードを実行します。

bam

ウィジェットがクリアされ、[Databricks: Read CSV file from DBFS] (Databricks: DBFS から CSV ファイルを読み込む)[Databricks: Load database table] (Databricks: データベース テーブルを読み込む)[Load dummy data] (ダミー データを読み込む) ボタンが再表示されます。

注意

エラー name 'bam' is not defined が表示された場合は、ノートブックで (可能であればノートブックの最初のセルで) 次のコードを実行し、もう一度やり直してください。

import bamboolib as bam

オプション 2: pandas DataFrame への参照が含まれるセルで、セルをもう一度実行して DataFrame をもう一度出力します。 ウィジェットがクリアされ、新しいデータが表示されます。

データ読み込みタスク

このセクションの内容は次のとおりです。

サンプル データセットの内容をウィジェットに読み込む

シナリオ: 一部のサンプル データ (架空の販売データなど) をウィジェットに読み込み、ウィジェットの機能をテストできるようにします。

  1. [Load dummy data] (ダミー データを読み込む) をクリックします。

    注意

    [Load dummy data] (ダミー データを読み込む) が表示されない場合は、オプション 1 でウィジェットをクリアし、もう一度試してください。

  2. [Load dummy data] (ダミー データを読み込む) ウィンドウの [Load a dummy data set for testing bamboolib] (bamboolib をテストするためにダミー データ セットを読み込む) で、読み込むデータセットの名前を選択します。

  3. [Dataframe name] (Dataframe 名) に、テーブルの内容のプログラム識別子の名前として「DataFrame」と入力するか、既定のプログラム識別子である df をそのまま使用します。

  4. [実行] をクリックします。

    ウィジェットにデータセットの内容が表示されます。

ヒント

現在のウィジェットを切り替えて、別のサンプル データセットの内容を表示できます。

  1. 現在のウィジェットで、[Load dummy data] (ダミー データを読み込む) タブをクリックします。
  2. 前述の手順に従って、他のサンプル データセットの内容をウィジェットに読み込みます。

CSV ファイルの内容をウィジェットに読み込む

シナリオ: Azure Databricks ワークスペース内の CSV ファイルの内容をウィジェットに読み込みます。

  1. [Databricks: Read CSV file from DBFS] (Databricks: DBFS から CSV ファイルを読み込む) をクリックします。

    注意

    [Databricks: Read CSV file from DBFS] (Databricks: DBFS から CSV ファイルを読み込む) が表示されない場合は、オプション 1 でウィジェットをクリアし、もう一度試してください。

  2. [Read CSV from DBFS] (DBFS から CSV を読み込む) ウィンドウで、対象の CSV ファイルが含まれる場所を参照します。

  3. 対象の CSV ファイルを選択します。

  4. [Dataframe name] (Dataframe 名) に、CSV ファイルの内容のプログラム識別子の名前として「DataFrame」と入力するか、既定のプログラム識別子である df をそのまま使用します。

  5. [CSV value separator] (CSV 値の区切り記号) に、CSV ファイル内の値を区切る文字を入力するか、値の既定の区切り記号である , (コンマ) 文字をそのまま使用します。

  6. [Decimal separator] (小数点) に、CSV ファイル内の小数点以下を区切る文字を入力するか、値の既定の区切り記号である . (ドット) 文字をそのまま使用します。

  7. [Row limit: read the first N rows - leave empty for no limit] (行の制限: 最初の N 行を読み込む - 制限なしの場合は空にする) に、ウィジェットに読み込む行の最大数を入力するか、行の既定の数である 100000 をそのまま使用します。また、行の制限がないことを指定する場合は、このボックスは空にします。

  8. [Open CSV file] (CSV ファイルを開く) をクリックします。

    指定した設定に基づいて、ウィジェットに CSV ファイルの内容が表示されます。

ヒント

現在のウィジェットを切り替えて、別の CSV ファイルの内容を表示できます。

  1. 現在のウィジェットで、[Read CSV from DBFS] (DBFS から CSV ファイルを読み込む) タブをクリックします。
  2. 前述の手順に従って、他の CSV ファイルの内容をウィジェットに読み込みます。

データベース テーブルの内容をウィジェットに読み込む

シナリオ: Azure Databricks ワークスペース内のデータベース テーブルの内容をウィジェットに読み込みます。

  1. [Databricks: Load database table] (Databricks: データベース テーブルを読み込む) をクリックします。

    注意

    [Databricks: Load database table] (Databricks: データベース テーブルを読み込む) が表示されない場合、オプション 1 でウィジェットをクリアし、もう一度試してください。

  2. [Databricks: Load database table] (Databricks: データベース テーブルを読み込む) ウィンドウの [Database - leave empty for default database] (データベース - 既定のデータベースの場合は空のままにする) に、対象のテーブルがあるデータベースの名前を入力します。また、既定のデータベースを指定する場合は、このボックスは空のままにします。

  3. [テーブル] に、対象のテーブルの名前を入力します。

  4. [Row limit: read the first N rows - leave empty for no limit] (行の制限: 最初の N 行を読み込む - 制限なしの場合は空にする) に、ウィジェットに読み込む行の最大数を入力するか、行の既定の数である 100000 をそのまま使用します。また、行の制限がないことを指定する場合は、このボックスは空にします。

  5. [Dataframe name] (Dataframe 名) に、テーブルの内容のプログラム識別子の名前として「DataFrame」と入力するか、既定のプログラム識別子である df をそのまま使用します。

  6. [実行] をクリックします。

    指定した設定に基づいて、ウィジェットにテーブルの内容が表示されます。

ヒント

現在のウィジェットを切り替えて、別のテーブルの内容を表示できます。

  1. 現在のウィジェットで、[Databricks: Load database table] (Databricks: データベース テーブルを読み込む) タブをクリックします。
  2. 前述の手順に従って、他のテーブルの内容をウィジェットに読み込みます。

データ アクション タスク

bamboolib では、50 を超えるデータ アクションが提供されます。 以下は、最初に使用する一般的なデータ アクション タスクの一部です。

このセクションの内容は次のとおりです。

Select columns

シナリオ: 名前、データ型を基準にして特定のテーブル列のみを表示するか、正規表現に一致する特定のテーブル列のみを表示します。 たとえば、ダミーの販売データセットで、item_type 列と sales_channel 列のみ表示するか、列名に文字列 _date が含まれる列のみを表示します。

  1. [データ] タブの [Search actions] (検索アクション) ドロップダウン リストで、次のいずれかを行います。
    • select (選択)」と入力し、[Select or drop columns] (列を選択または削除する) を選択します。
    • [Select or drop columns] (列を選択または削除する) を選択します。
  2. [Select or drop columns] (列を選択または削除する) ウィンドウの [選択] ドロップダウン リストで、[選択] を選択します。
  3. 対象の列の名前または包含条件を選択します。
  4. [Dataframe name] (Dataframe 名) に、テーブルの内容のプログラム識別子の名前として「DataFrame」と入力するか、既定のプログラム識別子である df をそのまま使用します。
  5. [実行] をクリックします。

列の削除

シナリオ: 名前、データ型を基準にして特定のテーブル列を非表示にするか、正規表現に一致する特定のテーブル列を非表示にします。 たとえば、ダミーの販売データセットで、order_prioorder_dateship_date 列を非表示にするか、日時値しか含まれていないすべての列を非表示にします。

  1. [データ] タブの [Search actions] (検索アクション) ドロップダウン リストで、次のいずれかを行います。
    • drop (削除)」と入力し、[Select or drop columns] (列を選択または削除する) を選択します。
    • [Select or drop columns] (列を選択または削除する) を選択します。
  2. [Select or drop columns] (列を選択または削除する) ウィンドウの [選択] ドロップダウン リストで、[削除] を選択します。
  3. 対象の列の名前または包含条件を選択します。
  4. [Dataframe name] (Dataframe 名) に、テーブルの内容のプログラム識別子の名前として「DataFrame」と入力するか、既定のプログラム識別子である df をそのまま使用します。
  5. [実行] をクリックします。

行のフィルター選択

シナリオ: 一致または欠損する特定の列値などの条件に基づいて、特定のテーブル行を表示または非表示にします。 たとえば、ダミーの販売データセットで、item_type 列の値が Baby Food に設定されている行のみを表示します。

  1. [データ] タブの [Search actions] (検索アクション) ドロップダウン リストで、次のいずれかを行います。
    • filter (フィルター)」と入力し、[行のフィルター選択] を選択します。
    • [行のフィルター選択] を選択します。
  2. [行のフィルター選択] ウィンドウの [where] (場所) の上にある [選択] ドロップダウン リストで、[行を選択する] または [Drop rows] (行を削除する) を選択します。
  3. 最初のフィルター条件を指定します。
  4. 別のフィルター条件を追加するには、[条件の追加] をクリックし、次のフィルター条件を指定します。 必要に応じて繰り返します。
  5. [Dataframe name] (Dataframe 名) に、テーブルの内容のプログラム識別子の名前として「DataFrame」と入力するか、既定のプログラム識別子である df をそのまま使用します。
  6. [実行] をクリックします。

行の並べ替え

シナリオ: 1 つ以上の列内の値に基づきテーブル行を並べ替えます。 たとえば、ダミーの販売データセットで、region 列の値に基づいてアルファベット順 (A から Z) に行を表示します。

  1. [データ] タブの [Search actions] (検索アクション) ドロップダウン リストで、次のいずれかを行います。
    • sort (並べ替え)」と入力し、[行の並べ替え] を選択します。
    • [行の並べ替え] を選択します。
  2. [Sort column(s)] (行の並べ替え) ウィンドウで、並べ替えの基準にする最初の列と並べ替え順序を選択します。
  3. 別の並べ替え条件を追加するには、[列の追加] をクリックし、次の並べ替え条件を指定します。 必要に応じて繰り返します。
  4. [Dataframe name] (Dataframe 名) に、テーブルの内容のプログラム識別子の名前として「DataFrame」と入力するか、既定のプログラム識別子である df をそのまま使用します。
  5. [実行] をクリックします。

行と列のグループ化タスク

このセクションの内容は次のとおりです。
1 つの集計関数で行と列をグループ化する

シナリオ: 計算によるグループ化によって行と列の結果を表示し、それらのグループにカスタム名を割り当てます。 たとえば、ダミーの販売データセットで、country 列の値を基準に行をグループ化し、同じ country 値が含まれる行の数を表示し、計算された数のリストに country_count という名前を付けます。

  1. [データ] タブの [Search actions] (検索アクション) ドロップダウン リストで、次のいずれかを行います。
    • group (グループ)」と入力し、[Group by and aggregate (with renaming)] (グループ化基準と集計 (および名前変更)) を選択します。
    • [Group by and aggregate (with renaming)] (グループ化基準と集計 (および名前変更)) を選択します。
  2. [Group by with column rename] (グループ化基準と列の名前変更) ウィンドウで、グループ化の基準とする列、最初の計算を選択し、必要に応じて計算対象列の名前を指定します。
  3. 別の計算を追加するには、[add calculation] (計算の追加) をクリックし、次の計算と列名を指定します。 必要に応じて繰り返します。
  4. 結果を保存する場所を指定します。
  5. [Dataframe name] (Dataframe 名) に、テーブルの内容のプログラム識別子の名前として「DataFrame」と入力するか、既定のプログラム識別子である df をそのまま使用します。
  6. [実行] をクリックします。
複数の集計関数で行と列をグループ化する

シナリオ: 計算によるグループ化によって行と列の結果を表示します。 たとえば、ダミーの販売データセットで、regioncountrysales_channel 列の値を基準に行をグループ化し、同じ region 値と country 値が含まれる行の数を sales_channel 別に表示し、また regioncountrysales_channel の一意の組み合わせ別に total_revenue を表示します。

  1. [データ] タブの [Search actions] (検索アクション) ドロップダウン リストで、次のいずれかを行います。
    • group (グループ)」と入力し、[Group by and aggregate (default)] (グループ化基準と集計 (既定)) を選択します。
    • [Group by and aggregate (default)] (グループ化基準と集計 (既定)) を選択します。
  2. [Group by with column rename] (グループ化基準と列の名前変更) ウィンドウで、グループ化の基準にする列と最初の計算を選択します。
  3. 別の計算を追加するには、[add calculation] (計算の追加) をクリックし、次の計算を指定します。 必要に応じて繰り返します。
  4. 結果を保存する場所を指定します。
  5. [Dataframe name] (Dataframe 名) に、テーブルの内容のプログラム識別子の名前として「DataFrame」と入力するか、既定のプログラム識別子である df をそのまま使用します。
  6. [実行] をクリックします。

欠損値を含む行を削除する

シナリオ: 特定の列の値が欠損している行を削除します。 たとえば、ダミーの販売データセットで、item_type 値が欠損している行を削除します。

  1. [データ] タブの [Search actions] (検索アクション) ドロップダウン リストで、次のいずれかを行います。
    • drop (削除)」または「remove (除去)」と入力し、[Drop missing values] (欠損値を削除する) を選択します。
    • [Drop missing values] (欠損値を削除する) を選択します。
  2. [Drop missing values] (欠損値を削除する) ウィンドウで、列の値が欠損している行を削除するために、その列を選択します。
  3. [Dataframe name] (Dataframe 名) に、テーブルの内容のプログラム識別子の名前として「DataFrame」と入力するか、既定のプログラム識別子である df をそのまま使用します。
  4. [実行] をクリックします。

重複する行を削除する

シナリオ: 指定した列の値が重複している行を削除します。 たとえば、ダミーの販売データセットで、相互に完全に重複している行を削除します。

  1. [データ] タブの [Search actions] (検索アクション) ドロップダウン リストで、次のいずれかを行います。
    • drop (削除)」または「remove (除去)」と入力し、[Drop/Remove duplicates] (重複を削除/除去する) を選択します。
    • [Drop/Remove duplicates] (重複を削除/除去する) を選択します。
  2. [Remove Duplicates] (重複を削除する) ウィンドウで、列の値が重複している行を削除するために、その列を選択し、値が重複している最初の行を保持するか、最後の行を保持するかを選択します。
  3. [Dataframe name] (Dataframe 名) に、テーブルの内容のプログラム識別子の名前として「DataFrame」と入力するか、既定のプログラム識別子である df をそのまま使用します。
  4. [実行] をクリックします。

欠損値を検索して置換する

シナリオ: 指定の列の値が欠損している行で、その欠損値を置換値に置き換えます。 たとえば、ダミーの販売データセットの、item_type 列の値が欠損している行で、その欠損値を値 Unknown Item Type に置換します。

  1. [データ] タブの [Search actions] (検索アクション) ドロップダウン リストで、次のいずれかを行います。
    • find (検索)」または「replace (置換)」と入力し、[Find and replace missing values] (欠損値を検索して置換する) を選択します。
    • [Find and replace missing values] (欠損値を検索して置換する) を選択します。
  2. [Replace missing values] (欠損値を置換する) ウィンドウで、欠損値を置換する対象の列を選択し、置換値を指定します。
  3. [実行] をクリックします。

列の数式を作成する

シナリオ: 一意の数式を使用する列を作成します。 たとえば、ダミーの販売データセットで、各行の total_profit 列の値を units_sold 列の値で除算した結果を表示する profit_per_unit という名前の列を作成します。

  1. [データ] タブの [Search actions] (検索アクション) ドロップダウン リストで、次のいずれかを行います。
    • formula (数式)」と入力し、[New column formula] (新しい列の数式) を選択します。
    • [New column formula] (新しい列の数式) を選択します。
  2. [Replace missing values] (欠損値を置換する) ウィンドウで、欠損値を置換する対象の列を選択し、置換値を指定します。
  3. [実行] をクリックします。

データ アクション履歴タスク

このセクションの内容は次のとおりです。

ウィジェットで実行されたアクションのリストを表示する

シナリオ: ウィジェットで実行されたすべての変更を、新しい変更から順番にリストとして表示します。

[履歴] をクリックします。 アクションのリストが [Transformations history] (変換履歴) ウィンドウに表示されます。

ウィジェットで実行された最新のアクションを元に戻す

シナリオ: ウィジェットで実行された最新の変更を元に戻します。

以下のいずれかを実行します。

  • 反時計回りの矢印のアイコンをクリックします。
  • [履歴] をクリックし、[Transformations history] (変換履歴) ウィンドウで、[Undo last step] (最後の手順を元に戻す) をクリックします。

ウィジェットで実行された最新のアクションをやり直す

シナリオ: ウィジェットで実行された最新の元に戻す操作を元に戻します。

以下のいずれかを実行します。

  • 時計回りの矢印のアイコンをクリックします。
  • [履歴] をクリックし、[Transformations history] (変換の履歴) ウィンドウで、[Recover last step] (最後の手順を回復する) をクリックします。

ウィジェットで実行された最新のアクションを変更する

シナリオ: ウィジェットで実行された最新の変更を変更します。

  1. 次のいずれかの操作を行います。
    • 鉛筆アイコンをクリックします。
    • [履歴] をクリックし、[Transformations history] (変換履歴) ウィンドウで、[Edit last step] (最後の手順を編集する) をクリックします。
  2. 必要な変更を行い、[実行] をクリックします。

DataFrame としてのウィジェットの現在の状態をプログラムで再作成するコードを取得する

シナリオ: pandas DataFrame として表される現在のウィジェットの状態をプログラムで再作成する Python コードを取得します。 このコードを、このブックの別のセルまたは別のブックで実行します。

  1. [コードを取得する] をクリックします。

  2. [Export code] (コードのエクスポート) ウィンドウで、[コードのコピー] をクリックします。 コードがシステムのクリップボードにコピーされます。

  3. このブック内の別のセルまたは別のブックにコードを貼り付けます。

  4. この pandas DataFrame をプログラムで操作する追加のコードを記述し、セルを実行します。 たとえば、DataFrame の内容を表示するには、DataFrame が df によってプログラムで表されていると想定します。

    # Your pasted code here, followed by...
    df
    

制限事項

詳細については、「Databricks ノートブックの既知の制限事項」を参照してください。

その他のリソース