机器学习概念之特征选择(Feature selection)之VectorSlicer算法介绍
不多说,直接上干货!
VectorSlicer
算法介绍:
VectorSlicer是一个转换器,输入特征向量,输出原始特征向量子集。VectorSlicer接收带有特定索引的向量列,通过对这些索引的值进行筛选得到新的向量集。
可接受如下两种索引:
1、整数索引,setIndices()。
2、字符串索引代表向量中特征的名字,此类要求向量列有AttributeGroup,因为该工具根据Attribute来匹配名字字段。
指定整数或者字符串类型都是可以的。
另外,同时使用整数索引和字符串名字也是可以的。不允许使用重复的特征,所以所选的索引或者名字必须是没有独一的。
注意如果使用名字特征,当遇到空值的时候将会报错。
输出将会首先按照所选的数字索引排序(按输入顺序),其次按名字排序(按输入顺序)。
示例:
假设我们有一个DataFrame含有userFeatures列:
userFeatures
------------------
[0.0, 10.0, 0.5]
userFeatures是一个向量列包含3个用户特征。假设userFeatures的第一列全为0,我们希望删除它并且只选择后两项。我们可以通过索引setIndices(1,2)来选择后两项并产生一个新的features列:
userFeatures | features
------------------|-----------------------------
[0.0, 10.0, 0.5] | [10.0, 0.5]
假设我们还有如同["f1","f2", "f3"]的属性,那可以通过名字setNames("f2","f3")的形式来选择:
userFeatures | features
------------------|-----------------------------
[0.0, 10.0, 0.5] | [10.0, 0.5]
["f1", "f2","f3"] | ["f2", "f3"]
具体编程见
Spark MLlib编程API入门系列之特征选择之向量选择(VectorSlicer)
最新文章
- JavaEE连接数据库练习
- jdk(多版本)安装注意!
- 图文详解远程部署ASP.NET MVC 5项目
- struts调用的几种方法
- 最全面的 MySQL 索引详解
- ACM2035_(递归法求幂)
- .net程序开发人员必看的变量的命名规则
- Matlab画图常用的符号和颜色
- ThinkPHP配置项(六)
- Mac主机映射到域名
- 个人作业-2 英语学习APP分析
- 阿里云API网关(1)服务网关的产品概述
- React-使用styled-components
- VS2012 安装番茄插件
- P3159 [CQOI2012]交换棋子
- java基础语法学习DayOne
- 修复Windows10系统的注册表?
- PHP代码层防护与绕过
- 用HTML+CSS实现--折叠效果
- Nginx入门篇(七)之Nginx+keepalived高可用集群
热门文章
- HBase运维基础--元数据逆向修复原理
- JSON与localStorage的爱恨情仇
- hdu 4300 Clairewd’s message(kmp/扩展kmp)
- android.annotation.SuppressLint
- NSError分析
- 如何给lemon开无限栈
- Linux环境下在Tomcat上部署JavaWeb工程
- 重新安装VMware10提示";The Msi '' Failed";问题解决方案
- 各个版本Microsoft Visual C++运行库下载
- 洛谷 - P1225 - 黑白棋游戏 - bfs