pyspark:在RDD的每个字段上应用函数

时间:2016-06-24 04:59:46

标签: pyspark

我使用df1 = HiveContext(sc)创建了数据帧.sql("来自xxx.table1 select *")转换为RDD df1.rdd

我必须连续在字段级别应用转换。我该怎么做?

我尝试了以下代码:

df2 = rdd1.map(lambda row:
        Row(row.fld1,
            row.fld2.replace("'", "''").replace("\\","\\\\").strip(),
            row.fld3.toLowerCase
        )
)

我收到错误

  

AttributeError:' unicode' object没有属性toLowerCase / replace

你可以帮忙吗?

1 个答案:

答案 0 :(得分:0)

替换

row.fld3.toLowerCase

通过

row.fld3.lower()