2016-11-15 3 views
0

私は、utc(JavaScriptのタイムスタンプ、utcという名前)を格納する列を持つデータフレームを持っており、utcを読み込み可能な文字列として格納する列を追加しようとしています。Pysparkは、既存のJavaScriptのutc列を文字列に変換する列を追加します。

from datetime import datetime 
panel_json = panel_json.withColumn('timestamp', datetime.utcfromtimestamp(panel_json.utc/1000.0).strftime('%Y-%m-%dT%H:%M:%SZ')) 

しかし、私はすべての試みが、私はpanel_jsonなどの除去、panel_json.utc

datetime.utcfromtimestamp(float(panel_json.utc)/1000.0).strftime('%Y-%m-%dT%H:%M:%SZ')) 

そして、引用符で、他のいくつかの試みを中心にフロートを配置するだけでなくしようとした私に

TypeError: a float is required

を与えます..しかし、私はそれを動作させることができません。何か案が?

ありがとうございました

答えて

0

このようにPythonライブラリを使用することはできません。あなたはそのフォーマットのためのUDFを作成することができます - それははるかに高速です - pyspark date_format組み込みのudfが仕事をします。

+0

申し訳ありませんが、紛失しましたが、別の列の関数に基づいて列を追加することはできませんか? – mitomed

+0

可能です - Pythonでユーザー定義関数(UDF)を使用するか、sparkによって提供される関数(あなたの場合はdate_format) – Mariusz

関連する問題