2016-06-24 10 views
-1

のすべてのフィールドに関数を適用し、私はデータフレームを作成し使用してDF1 = HiveContext(SC).SQL( "xxx.table1選択*からは")私は変換を適用する必要がpyspark:RDDに変換RDD

をdf1.rddフィールドレベルで連続してどうすればいいのですか?

私は以下のコードを試みた:私は

AttributeError: 'unicode' object has no attribute toLowerCase/replace

エラーが出る

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

をあなたは助けてもらえますか? (文字列(行).lower: RDD2 = rdd1.map(ラムダ行:

+0

こんにちは、 によって置き換え\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ unicodeまたは\ (row.apnでないかrow.fips_codeでないかrow.dupl_apnでない)else行) それが他の人に役立つことを願っています。 – Aavik

答えて

0

私は以下のように自分のコードを変更することで、この作業を得た

row.fld3.toLowerCase 

row.fld3.lower() 
関連する問題