Ich benutze PySpark. Ich habe eine Spalte ('dt') in einem Datenrahmen ('canon_evt'), dass dies ein Zeitstempel ist. Ich versuche, Sekunden von einem DateTime-Wert zu entfernen. Es wird ursprünglich aus Parkett als String eingelesen. Ich versuche es dann überPySpark 1.5 So kürzen Timestamp auf die nächste Minute von Sekunden
canon_evt = canon_evt.withColumn('dt',to_date(canon_evt.dt))
canon_evt= canon_evt.withColumn('dt',canon_evt.dt.astype('Timestamp'))
zu zu konvertieren Dann würde Ich mag die Sekunden entfernen. Ich habe 'trunc', 'date_format' versucht oder versucht, Teile wie unten zusammen zu verketten. Ich denke, es erfordert eine Art Map- und Lambda-Kombination, aber ich bin mir nicht sicher, ob Timestamp ein geeignetes Format ist und ob es möglich ist, Sekunden loszuwerden.
canon_evt = canon_evt.withColumn('dyt',year('dt') + '-' + month('dt') +
'-' + dayofmonth('dt') + ' ' + hour('dt') + ':' + minute('dt'))
[Row(dt=datetime.datetime(2015, 9, 16, 0, 0),dyt=None)]
Könnten Sie posten, wie es aussieht, wenn Sie von Parkett lesen? – WoodChopper
[Zeile (dt = '2015-09-16 05:39:46']], Reihe (dt = '2015-09-16 05:40:46')] – PR102012
'zero323', danke für die super schnelle Hilfe! – PR102012