This topic describes the syntax and parameters of table functions. このトピックでは、関数の使用方法の例も示します。
関数
カテゴリー | 機能 | 説明 |
Text to table | Constructs a table from CSV-formatted text. | |
Table to dictionary | テーブルから辞書を作成します。 |
tab_parse_csv
tab_parse_csv関数は、CSV形式のテキストからテーブルを作成します。
構文
tab_parse_csv( data, sep=',', quote='"', lstrip=True, headers=None, case_insensitive=True, primary_keys=None, )
パラメーター
項目
データ型
必須/任意
説明
データ
String
必須
CSV形式のテキスト。
sep
String
任意
CSV形式のテキストで使用される区切り文字。 デフォルト値は、コンマ (,) です。
quote
String
任意
引用だ 値に区切り文字が含まれている場合は、値を囲むために引用符を使用する必要があります。 デフォルト値は二重引用符 (") です。
lstrip
Boolean
いいえ
各キーワードの先頭にあるスペースを削除するかどうかを指定します。 デフォルト値は True です。
ヘッダー
String or string list
いいえ
解析後に取得される見出し。 デフォルトでは、CSV形式のテキストの最初の行から見出しが取得されます。 最初の行に見出しが格納されていない場合は、このパラメーターを設定して、関数に見出しを渡すことができます。
case_insensitive
Boolean
いいえ
システムがマッピングを実行するときにデータが大文字と小文字を区別しないかどうかを指定します。 デフォルト値は True です。
primary_keys
String or string list
いいえ
dataパラメーターの値の主キー。
このパラメーターを設定し、この関数をマッピングおよびエンリッチメント関数と一緒に使用する場合は、マッピングおよびエンリッチメント関数のfieldパラメーターの値がこのパラメーターの値と同じであることを確認してください。 For more information about mapping and enrichment functions, see マッピングおよび強化関数.
レスポンス
The table that you construct is returned.
例
例1: テーブルを作成し、フィールドの値をテーブルにマップします。
生ログ
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
Example 3: Construct a table and map the values of multiple fields to the table. フィールド名は、テーブルの列名とは異なります。 ソースフィールドを含む括弧内の最初のフィールドは生ログのフィールドで、2番目のフィールドはテーブルのフィールドです。 In the parentheses that include the destination fields, the first field is a field of the table and the second field is a new field that is returned.
生ログ
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
例4: テーブルを作成し、複数のフィールドの値をテーブルにマップします。 フィールド名は、テーブルの列名とは異なります。 In the parentheses that include the source fields, the first field is a field of the raw log and the second field is a field of the table. 宛先フィールドを含む括弧内の最初のフィールドはテーブルのフィールドで、2番目のフィールドは返される新しいフィールドです。 ソースフィールドを含む括弧内では、テーブルのフィールドは主キーと同じでなければなりません。
生ログ
city:nanjing province:jiangsu
変換ルール
e_table_map( tab_parse_csv( "prov,city,pop,gdp\nshanghai,shanghai,2000,1000\njiangsu,nanjing,800,500", primary_keys=["prov", "city"], ), [("province", "prov"), "city"], [("pop", "population"), ("gdp", "GDP")], )
結果
GDP:500 city:nanjing population:800 province:jiangsu
tab_to_dict
The tab_to_dict function constructs a dictionary from a table.
構文
tab_to_dict(table, key_field, value_field, key_join=",", value_join=",")
パラメーター
項目
データ型
必須/任意
説明
table
table
〇
The data in the table.
key_field
String or string list
〇
ディクショナリでキーを作成するために使用される列。
key_join
で指定した文字で複数の列を接続します。value_field
String or string list
〇
ディクショナリで値を作成するために使用される列。
value_join
で指定した文字で複数の列を接続します。key_join
String
任意
複数の列を接続するために使用される文字列。 列は辞書のキーとして使用されます。 デフォルト値は、コンマ (,) です。
value_join
String
任意
The string that is used to connect multiple columns. The columns are used as values in the dictionary. デフォルト値は、コンマ (,) です。
レスポンス
The dictionary that you construct is returned.
例
例 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