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


Python pyspark PolynomialExpansion用法及代码示例


本文简要介绍 pyspark.ml.feature.PolynomialExpansion 的用法。

用法:

class pyspark.ml.feature.PolynomialExpansion(*, degree=2, inputCol=None, outputCol=None)

在多项式空间中执行特征扩展。正如wikipedia of Polynomial Expansion 中所说,“在数学中,和乘积的展开通过使用乘法分布在加法上的事实将其表示为乘积之和”。以一个 2 变量特征向量为例:(x, y),如果我们想将其扩展为 2,则得到 (x, x * x, y, x * y, y * y)

1.4.0 版中的新函数。

例子

>>> from pyspark.ml.linalg import Vectors
>>> df = spark.createDataFrame([(Vectors.dense([0.5, 2.0]),)], ["dense"])
>>> px = PolynomialExpansion(degree=2)
>>> px.setInputCol("dense")
PolynomialExpansion...
>>> px.setOutputCol("expanded")
PolynomialExpansion...
>>> px.transform(df).head().expanded
DenseVector([0.5, 0.25, 2.0, 1.0, 4.0])
>>> px.setParams(outputCol="test").transform(df).head().test
DenseVector([0.5, 0.25, 2.0, 1.0, 4.0])
>>> polyExpansionPath = temp_path + "/poly-expansion"
>>> px.save(polyExpansionPath)
>>> loadedPx = PolynomialExpansion.load(polyExpansionPath)
>>> loadedPx.getDegree() == px.getDegree()
True
>>> loadedPx.transform(df).take(1) == px.transform(df).take(1)
True

相关用法


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