欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

DataVec/过滤器

程序员文章站 2022-03-01 19:49:57
...

使用过滤器

 

过滤器是转换的一部份并为你保留你数据集的一部份给定了一个领域特定语言。过滤器可以是单一条件的一个内衬,也可以包括复杂的布尔逻辑。

TransformProcess tp = new TransformProcess.Builder(inputDataSchema)
    .filter(new ConditionFilter(new CategoricalColumnCondition("MerchantCountryCode", ConditionOp.NotInSet, new HashSet<>(Arrays.asList("USA","CAN")))))
    .build();

 

你也可以通过实现接Filter口来写自己的过滤器,尽管在更多的时候你想要创建一个定制的条件来替代。

 

可用的过滤器


ConditionFilter  条件过滤器

[源码]

如果条件满足返回true:移除实例或序列
如果条件不满足返回false:保留实例或序列

 

removeExample
public boolean removeExample(Object writables) 
  • 参数writables是实例
  • 如果实例应该被移除返回true,保留则返回false。
removeSequence
public boolean removeSequence(Object sequence) 
  • 参数sequence是序列实例
  • 如果实例应该被移除返回true,保留则返回false。
transform
public Schema transform(Schema inputSchema) 

 

给定一个输入概要,得到此转换的输出概要

  • 参数 inputSchema 
outputColumnName
public String outputColumnName() 

运算应用后的输出列名

  • 返回输出列名
columnName
public String columnName() 

输出列名,这通常与输入列名一样。

  • 返回输出列名

Filter

[源码]

过滤器: 按一些条件移除实例(或序列)


FilterInvalidValues 过滤无效值

[源码]

 

一个过滤操作,如果在任何一个指定的列集合中实例/序列包括无效的值,操作会移除任意的实例(或序列)。无效的值由概要决定。

 

transform
public Schema transform(Schema inputSchema) 
  • 参数 columnsToFilterIfInvalid 用于检查无效值的列
removeExample
public boolean removeExample(Object writables) 
  • 参数writables 是实例
  • 如果实例应该被移除返回true,保留则返回false。
removeSequence
public boolean removeSequence(Object sequence) 
  • 参数sequence是序列实例
  • 如果实例应该被移除返回true,保留则返回false。
outputColumnName
public String outputColumnName() 

运算应用后的输出列名

  • 返回这个输出列名
columnName
public String columnName()  

 

输出列名,这通常与输入列名一样。

  • 返回输出列名

InvalidNumColumns

[源码]

 

移除一定数量的无效列

 

removeExample
public boolean removeExample(Object writables) 
  • 参数writables 是实例
  • 如果实例应该被移除返回true,保留则返回false。

 

removeSequence
public boolean removeSequence(Object sequence) 
  • 参数sequence是序列实例
  • 如果实例应该被移除返回true,保留则返回false。

 

removeExample
public boolean removeExample(List<Writable> writables) 
  • 参数writables 是实例
  • 如果实例应该被移除返回true,保留则返回false。

 

 

removeSequence
public boolean removeSequence(List<List<Writable>> sequence) 
  • 参数sequence是序列实例
  • 如果实例应该被移除返回true,保留则返回false。

 

transform
public Schema transform(Schema inputSchema) 

给定一个输入概要,得到此转换的输出概要

  • 参数 inputSchema 
outputColumnName
public String outputColumnName() 

运算应用后的输出列名

  • 返回这个输出列名
columnName
public String columnName() 

输出列名,这通常与输入列名一样。

  • 返回输出列名

 有任何问题请联系微信 

DataVec/过滤器
            
    
    博客分类: dl4j dl4jdeeplearning4jjava机器学习

如果您觉得我的文章给了您帮助,请为我买一杯饮料吧!以下是我的支付宝,意思一下我将非常感激!

DataVec/过滤器
            
    
    博客分类: dl4j dl4jdeeplearning4jjava机器学习