当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python pyspark MLUtils.loadLibSVMFile用法及代码示例


本文简要介绍 pyspark.mllib.util.MLUtils.loadLibSVMFile 的用法。

用法:

static loadLibSVMFile(sc, path, numFeatures=- 1, minPartitions=None)

将 LIBSVM 格式的标记数据加载到 LabeledPoint 的 RDD 中。 LIBSVM 格式是 LIBSVM 和 LIBLINEAR 使用的基于文本的格式。每条线表示使用以下格式的标记稀疏特征向量:

标签 index1:value1 index2:value2 …

其中索引是从一开始并按升序排列的。此方法将每一行解析为一个 LabeledPoint,其中特征索引转换为从零开始的。

1.0.0 版中的新函数。

参数

scSparkContext

Spark上下文

pathstr

任何 Hadoop-supported 文件系统 URI 中的文件或目录路径

numFeatures整数,可选

特征的数量,如果给出非正值,将从输入数据中确定。当数据集已经拆分为多个文件并且您想单独加载它们时,这很有用,因为某些文件中可能不存在某些特征,这会导致特征尺寸不一致。

minPartitions整数,可选

最小分区数

返回

pyspark.RDD

标记数据存储为 LabeledPoint 的 RDD

例子

>>> from tempfile import NamedTemporaryFile
>>> from pyspark.mllib.util import MLUtils
>>> from pyspark.mllib.regression import LabeledPoint
>>> tempFile = NamedTemporaryFile(delete=True)
>>> _ = tempFile.write(b"+1 1:1.0 3:2.0 5:3.0\n-1\n-1 2:4.0 4:5.0 6:6.0")
>>> tempFile.flush()
>>> examples = MLUtils.loadLibSVMFile(sc, tempFile.name).collect()
>>> tempFile.close()
>>> examples[0]
LabeledPoint(1.0, (6,[0,2,4],[1.0,2.0,3.0]))
>>> examples[1]
LabeledPoint(-1.0, (6,[],[]))
>>> examples[2]
LabeledPoint(-1.0, (6,[1,3,5],[4.0,5.0,6.0]))

相关用法


注:本文由纯净天空筛选整理自spark.apache.org大神的英文原创作品 pyspark.mllib.util.MLUtils.loadLibSVMFile。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。