关于spark中dataframe数据处理

在数据处理中遇到一个问题,当有一个数据集输入,需要将其中一个维度进行处理,该怎么操作,这里拿二值化操作举例,



from pyspark import SparkContext
from pyspark import SQLContext
from pyspark.ml.feature import Binarizer


sc=SparkContext()
sqlcontext=SQLContext(sc)
continuousDataFrame = sqlcontext.createDataFrame([
    (0, 0.1,8),
    (1, 0.8,9),
    (2, 0.2,10)
], ["label", "feature","get"])

上一句构建了一个dataframe,接下来我们要将中间的那一列进行二值化处理
binarizer = Binarizer(threshold=0.5, inputCol="feature", outputCol="binarized_feature")
binarizedDataFrame = binarizer.transform(continuousDataFrame)
上两句代码将feature进行了二值化处理

binarizedFeatures = binarizedDataFrame.select("binarized_feature","get")

这时的binarizedFeatures是一个dataframe,不需要再进行转化,可以直接使用。所以再有类似的数据处理操作,可以直接再操作后,使用select选择自己需要的维度,

就直接形成了一个dataframe,直接进行算法模型的培训。

binarizedFeatures.show(5,False)



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值