本文介紹表格函數的語法規則,包括參數解釋、函數示例等。
函數列表
類型 | 函數 | 說明 |
文本到表格 | 從CSV格式的文本中構建表格。 | |
表格到字典 | 從表格中構建字典。 |
tab_parse_csv
從CSV格式的文本中構建表格。
函數格式
tab_parse_csv( data, sep=',', quote='"', lstrip=True, headers=None, case_insensitive=True, primary_keys=None, )
參數說明
參數名稱
數據類型
是否必填
說明
data
String
是
文本格式,一般是CSV格式。
sep
String
否
CSV格式的分隔符,默認為半角逗號(,)。
quote
String
否
引用符,值中有分隔符時需使用引用符對值進行包裹。默認為半角雙引號(")。
lstrip
Boolean
否
是否刪除每個關鍵字開頭的空格,默認為True。
headers
String、String List
否
解析的每個域信息,默認從第一行提取。當第一行是數據時,需要通過這個參數傳入。
case_insensitive
Boolean
否
匹配時是否大小寫不敏感,默認True。
primary_keys
String、String List
否
data數據中的主鍵。
設置該參數后,再使用映射富化函數時,映射富化函數的field參數中的字段應與此處保持一致。關于映射富化函數的更多信息,請參見映射富化函數。
返回結果
返回映射后的表格數據。
函數示例
示例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
示例3:多個字段映射與表格列名不一樣。源字段括號內第一個是源字段,第二個是表格字段;目標字段括號內第一個是表格字段,第二個是新字段。
原始日志
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:多個字段映射與表格列名不一樣。源字段括號內第一個是源字段,第二個是表格字段;目標字段括號內第一個是表格字段,第二個是新字段。源字段括號內的表格字段與主鍵保持一致。
原始日志
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
從表格中構建字典。
函數格式
tab_to_dict(table, key_field, value_field, key_join=",", value_join=",")
參數說明
參數名稱
數據類型
是否必填
說明
table
table
是
表格數據信息。
key_field
String、String List
是
用來構建字典關鍵字的表格列,多個時使用
key_join
拼接。value_field
String、String List
是
用來構建字典值的表格列,多個時使用
value_join
拼接。key_join
String
否
拼接多個列為Key的連接字符串,默認為半角逗號(,)。
value_join
String
否
拼接多個列為Value的連接字符串,默認為半角逗號(,)。
返回結果
返回映射后的字典數據
函數示例
示例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