`
bewithme
  • 浏览: 423301 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

DataVec/降维

    博客分类:
  • dl4j
阅读更多

可用的降维


GeographicMidpointReduction (地理中点降维)

[源码]

分割符是可配置的), 决定了地理位置的中点.  在: http://www.geomidpoint.com/methods.html 查看 “地理中点”实现算法, 查看: http://www.geomidpoint.com/calculation.html

 
转换
public Schema transform(Schema inputSchema) 
  • 参数delim是文本中坐标分割符. 例如, 如果格式是 “lat,long” 则使用 “,”

StringReducer

[源码]

 

StringReducer用来获取一组实例并减少它们。

思路:假设你有很大的列数,并且你想要通过合并和减少每个列的值。

 

StringReducer允许你为不同的列指定不同的降维方法:min,max,sum,mean等

 

用途有:(1)通过键来减少实例(2)在时间段内减少操作(窗口操作)

 

转换
public Schema transform(Schema schema) 

获取输出概要,得到输入概要。

 

输出列名称
public Builder outputColumnName(String outputColumnName) 

 

创建一个StringReducer构建器,并设置默认的列减少操作。

对于任意一个没有显式指定的列,它们将使用默认的列减少操作。

如果一个列有一个显式指定的列减少操作,那么它将覆盖默认指定的。

  • 参数 defaultOp 执行默认减少操作
追加列
public Builder appendColumns(String... columns) 

通过取最小值来减少指定的列

 

 

追加列
public Builder prependColumns(String... columns) 

通过取最大值来减少指定的列

 

合并列
public Builder mergeColumns(String... columns) 

 通过取列的和来减少指定的列

 

替换列
public Builder replaceColumn(String... columns) 

通过取列的平均值来减少指定的列

 

 定制的减列策略
public Builder customReduction(String column, ColumnReduction columnReduction) 

 

    通过使用定制的减列功能减少指定的列
  • 参数column要执行定制的减列功能的列 
  • 参数columnReduction 为要在column上执行的定制的减列功能
设置忽略无效
public Builder setIgnoreInvalid(String... columns) 

 

在减列的时候:设置指定的列来忽略任何无效的值。

 

无效:根据ColumnMetaData: {- link ColumnMetaData#isValid(Writable)}定义为无效的

 

对于数值列,这通常意味着无法解析Writable。

 例如Writable.toLong() 对于一个长整型的列是失败的。如果列有任何约束(min/max 值, 字符匹配 等)这些也算。

  •  参数 columns 为设为忽略无效的列 

有任何问题请联系微信 

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

   

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics