このトピックでは、テーブル関数の構文について説明し、パラメーターの説明と関数の例を示します。

関数

データ型 機能 説明
テキストからテーブルへの変換 tab_parse_csv 区切られたテキストファイルからテーブルを作成します。
テーブルから辞書への変換 tab_to_dict テーブルから辞書を作成します。

tab_parse_csv

  • 構文
    tab_parse_csv(data, sep=',', quote='"', lstrip=True, headers=None, case_insensitive=True)
  • パラメーター
    パラメーター データ型 必須/任意 説明
    data String 必須 区切り形式のテキストデータです。 通常、データはコンマ区切り値 (CSV) 形式です。
    sep String 任意 値を区切るために使用される区切り文字です。 デフォルト値はコンマ (,) です。
    quote String 任意 値に区切り文字が含まれる場合に値を囲むために使用される文字です。 デフォルト値は二重引用符 (") です。
    lstrip Boolean 任意 値から先行スペース文字を削除するかどうかを指定します。 デフォルト値は True です。
    headers String or string list 任意 データの解析に使用される列ヘッダーです。 デフォルトでは、システムはデータの最初の行からヘッダーを取得します。 データの最初の行がヘッダーの格納に使用されていない場合は、このパラメーターを使用してヘッダーを関数に渡すことができます。 このパラメーターは、文字列または文字列リストに設定することができます。
    case_insensitive Boolean 任意 フィールド名を大文字と小文字を区別しない方法で照合するかどうかを指定します。 デフォルト値は True です。
  • レスポンス

    作成されたテーブルが返されます。

    • 例 1:テーブルを作成し、生ログのフィールドをテーブルデータにマッピングします。 ログデータとテーブルデータ間のマッピングを確立できるように、ソース Logstore にはテーブル内のフィールドが含まれている必要があります。
      生ログ:
      city: nanjing
      処理ルール:
      e_table_map(tab_parse_csv("province,city,pop,gdp\nshanghai,shanghai,2000,1000\njiangsu,nanjing,800,500"), "city", "province")
      処理結果:
      city: nanjing
      province: jiangsu
    • 例 2:テーブルを作成し、生ログの複数のフィールドをテーブルデータにマッピングします。
      生ログ:
      city: nanjing
      province: jiangsu
      処理ルール:
      e_table_map(tab_parse_csv("province,city,pop,gdp\nshanghai,shanghai,2000,1000\njiangsu,nanjing,800,500"), ["province", "city"], ["pop", "gdp"])
      処理結果:
      city: nanjing
      gdp: 500
      pop: 800
      province: jiangsu
    • 例 3:テーブルを作成し、生ログの複数のフィールドをテーブルデータにマッピングします。 この例では、生ログのフィールドはテーブルのフィールドと同じではありません。 ソースフィールドを指定する括弧内の最初のフィールドは生ログのフィールドで、2 番目のフィールドはテーブルのフィールドです。 ターゲットフィールドを指定する括弧内の最初のフィールドはテーブルのフィールドで、2 番目のフィールドは新しいフィールドです。
      生ログ:
      city: nanjing
      province: jiangsu
      処理ルール:
      e_table_map(tab_parse_csv("prov,city,pop,gdp\nshanghai,shanghai,2000,1000\njiangsu,nanjing,800,500"), [("province","prov"), "city"], [("pop", "population"), ("gdp", "GDP")])
      処理結果:
      GDP: 500
      city: nanjing
      population: 800
      province: jiangsu

tab_to_dict

  • 構文
    tab_to_dict(table, key_field, value_field, key_join=",", value_join=",")
  • パラメーター
    パラメーター データ型 必須/任意 説明
    table Table 必須 辞書の作成元のテーブルデータです。
    key_field String or string list 必須 辞書でキーを作成するために使用される列です。 key_join で指定した文字で複数の列を区切ります。
    value_field String or string list 必須 辞書で値を構成するために使用される列です。 value_join で指定した文字で複数の列を区切ります。
    key_join String 任意 辞書でキーとして使用される複数の列を区切るために使用される文字列です。 デフォルト値: カンマ (,) です。
    value_join String 任意 辞書の値として使用される複数の列を区切るために使用される文字列です。 デフォルト値: カンマ (,) です。
  • レスポンス

    構築された辞書が返されます。

    • 例 1
      生ログ:
      k1: v1
      city: nj
      処理ルール:
      e_dict_map(tab_to_dict(tab_parse_csv("city,pop\nsh,2000\nnj,800"), "city", "pop"), "city", "popu")
      処理結果:
      k1: v1
      city: nj
      popu: 800
    • 例 2
      生ログ:
      k1: v1
      city: js,nj
      処理ルール:
      e_dict_map(tab_to_dict(tab_parse_csv("province,city,pop\nsh,sh,2000\njs,nj,800"), ["province", "city"], "pop"), "city", "popu")
      処理結果:
      k1: v1
      city: js,nj
      popu: 800