pyspark.sql.functions.concat
を使用して、関連する時間ビットを再度連結することができます。のは、最初のいくつかのテストデータを作成してみましょう:
df = sc.parallelize([('1/20/2016 3:20:30 PM',),
('1/20/2016 3:20:31 PM',),
('1/20/2016 3:20:32 PM',)]).toDF(['ServerTime'])
あなたがこれを行うことができます:df_time.show()
を実行した後
import pyspark.sql.functions as F
split_col = pyspark.sql.functions.split(df['ServerTime'], ' ')
df_date = df.withColumn('Date', split_col.getItem(0))
df_time = df.withColumn('Time', F.concat(split_col.getItem(1),F.lit(' '),split_col.getItem(2)))
を、次のような出力が返されます。
:
+--------------------+----------+
| ServerTime| Time|
+--------------------+----------+
|1/20/2016 3:20:30 PM|3:20:30 PM|
|1/20/2016 3:20:31 PM|3:20:31 PM|
|1/20/2016 3:20:32 PM|3:20:32 PM|
+--------------------+----------+
はdf_date.show()
リターンを実行します
+--------------------+---------+
| ServerTime| Date|
+--------------------+---------+
|1/20/2016 3:20:30 PM|1/20/2016|
|1/20/2016 3:20:31 PM|1/20/2016|
|1/20/2016 3:20:32 PM|1/20/2016|
+--------------------+---------+
どのようなエラーがありますか? –