gpt4 book ai didi

python - 使用数值和分类变量在 PySpark 中创建 "features"列

转载 作者:太空宇宙 更新时间:2023-11-04 09:45:48 25 4
gpt4 key购买 nike

<分区>

我正在尝试使用 Python 在 Spark 中创建一个“功能”列,以便机器学习库使用。但是,我在生成“特征”列的 VectorAssembler 中遇到了包括数值变量和分类变量在内的问题。

cat_cols = ["cat_1", "cat_2", "cat_3"]
num_cols = ["num_1", "num_2", "num_3", "num_4"]

indexers = [StringIndexer(inputCol = c, outputCol="{0}_indexed".format(c)) for c in cat_cols]

encoders = [StringIndexer(inputCol = indexer.getOutputCol(), outputCol = "{0}_encoded".format(indexer.getOutputCol()))
for indexer in indexers]

assembler = VectorAssembler(inputCols = [encoder.getOutputCol() for encoder in encoders], outputCol = "features")

pipeline = Pipeline(stages = indexers + encoders + [assembler])
df = pipeline.fit(df).transform(df)

到目前为止构建的管道可以创建一个仅包含分类变量的“特征”列,但我不知道如何扩展它,使“特征”列同时包含分类变量和数值变量。

请注意,我使用的是 Spark 2.3 和 Python 3。

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com