将RDD列转换为浮动

我刚刚从http://files.grouplens.org/datasets/movielens/ml-latest-small.zip加载了ratings数据作为pySpark中的RDD。我想将等级列转换为float。我该怎么办?

我尝试在lambda内使用map函数,但是没有按预期工作。

下面是我尝试的代码。

path_data = "/ml-latest-small"
ratingsFile = sc.textFile(path_data + "/ratings.csv")

ratingsFile_2 = ratingsFile.map(lambda x: x.split(","))

header = ratingsFile_2.first()

ratingsFile_3 = ratingsFile_2.filter(lambda x: x != header)

ratingsFile_4 = ratingsFile_3.map(lambda x: float(x[2])

ratingsFile_4.take(6)

我要

[4.0,4.0,5.0,3.0]

代替

[['1','1','964982703'],['1','3','964981247'],'6','964982224'],'47','964983815'],'50','964982931'],'70',3.0,'964982400']]
xiangxiangdetang 回答:将RDD列转换为浮动

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/3141565.html

大家都在问