I have a data frame who looks like:-
+--------------------+-------------------+
| user_name | working_hour|
+--------------------+-------------------+
| ABC |2019-10-21 09:00:02|
| XYZ |2019-10-21 09:15:01|
| DEF |2019-10-21 08:55:00|
| ABC |2019-10-22 09:40:00|
| XYZ |2019-10-22 07:05:01|
| DEF |2019-10-22 08:45:00|
+--------------------+-------------------+
I want the average working hour for each user. I have working hours on different dates. I am trying with groupBy users. It's given like this.
df_avg = df_work_hours.groupBy('user_name').agg(sql_functions.avg('working_hour').alias('avg_hour'))
+--------------------+--------------------+
| user_name | avg_hour|
+--------------------+--------------------+
| ABC | 1.5717579755E9|
| XYZ |1.5717276003333333E9|
| DEF | 1.571658E9|
+--------------------+--------------------+
But I want to like this:-
+--------------------+------------------+
| user_name | avg(working_hour)|
+--------------------+------------------+
| ABC | 09:20:01|
| XYZ | 08:10:01|
| DEF | 08:50:00|
+--------------------+------------------+