功能介绍

RegexTokenizer支持对文本的切分和匹配操作。

参数说明

名称 中文名称 描述 类型 是否必须? 默认值
pattern 分隔符/正则匹配符 如果gaps为True,pattern用于切分文档;如果gaps为False,会提取出匹配pattern的词。 String “\s+”
gaps 切分/匹配 如果gaps为True,pattern用于切分文档;如果gaps为False,会提取出匹配pattern的词。 Boolean true
minTokenLength 词语最短长度 词语的最短长度,小于这个值的词语会被过滤掉 Integer 1
toLowerCase 是否转换为小写 转换为小写 Boolean true
selectedCol 选中的列名 计算列对应的列名 String
outputCol 输出结果列 输出结果列列名,可选,默认null String null
reservedCols 算法保留列名 算法保留列 String[] null

脚本示例

脚本代码

  1. import numpy as np
  2. import pandas as pd
  3. data = np.array([
  4. [0, 'That is an English Book!'],
  5. [1, 'Do you like math?'],
  6. [2, 'Have a good day!']
  7. ])
  8. df = pd.DataFrame({"id": data[:, 0], "text": data[:, 1]})
  9. inOp1 = dataframeToOperator(df, schemaStr='id long, text string', op_type='batch')
  10. op = RegexTokenizer().setSelectedCol("text").setGaps(False).setToLowerCase(True).setOutputCol("token").setPattern("\\w+")
  11. op.transform(inOp1).print()

脚本运行结果

  1. id text token
  2. 0 0 That is an English Book! that is an english book
  3. 1 2 Have a good day! have a good day
  4. 2 1 Do you like math? do you like math