6

我正在使用 pyspark 2.0 通过读取 csv 来创建 DataFrame 对象:

data = spark.read.csv('data.csv', header=True)

我找到使用的数据类型

type(data)

结果是

pyspark.sql.dataframe.DataFrame

我正在尝试将数据中的某些列转换为 LabeledPoint 以应用分类。

from pyspark.sql.types import *    
from pyspark.sql.functions import loc
from pyspark.mllib.regression import LabeledPoint

data.select(['label','features']).
              map(lambda row:LabeledPoint(row.label, row.features))

我遇到了这个问题:

AttributeError: 'DataFrame' object has no attribute 'map'

对错误有任何想法吗?有没有办法从 DataFrame 生成 LabelPoint 以执行分类?

4

1 回答 1

20

使用.rdd.map

>>> data.select(...).rdd.map(...)

DataFrame.map已在 Spark 2 中删除。

于 2016-09-08T01:29:04.213 回答