0
私はPySpark Dataframe
のPythonで2つの列を減算しようとしています。私はそれをやっている問題がたくさんあります。私はタイムスタンプとして列の型を持っていて、列はdate1 = 2011-01-03 13:25:59
で、コラムdate2 = 2011-01-03 13:27:00
はので、私はdate2 - date1
したいと私は PySpark Pythonで2つの日付列を引く
PySaprk
でこれを行うことができますどのようなtimeDiff = 00:01:01
として、これらの両方の列の違いを示して別々timediff列、それらのデータフレームの列からとなって、私は次のコードを試してみました:
#timeDiff = df.withColumn(('timeDiff', col(df['date2']) - col(df['date1'])))
このコードは、私はこの単純なことやってみました
動作しませんでした:これは、実際に働いていた
timeDiff = df['date2'] - df['date1']
を、が、その後私は、次の作品で私のデータフレームに、この別々の列を追加しようとしましたコード
df = df.withColumn("Duration", timeDiff)
ではfollwingエラーを有している:
Py4JJavaError: An error occurred while calling o107.withColumn.
: org.apache.spark.sql.AnalysisException: cannot resolve '(`date2` - `date1`)' due to data type mismatch: '(`date2` - `date1`)' requires (numeric or calendarinterval) type, not timestamp;;
いずれか他の方法で私を助けることができますか、このエラーを解決する方法はありますか?
そんなにこれが働いて、ありがとうございます。 – id101112
それは助けて嬉しい:) – Prem