So entfernen Sie die aktuellsten Informationen in einer Spalte, halten Sie einfach die Zeit
Ich bin mit pandas dataframe. es gibt eine bestimmte Spalte hat Zeit Informationen.
den raw-Daten mag das:
5:15am
5:28am
6:15am
so, ich brauche zum konvertieren der Rohdaten in ein datetime-format:
format = '%I:%M%p'
dataset['TimeStamp'] = pd.to_datetime(dataset['TimeStamp'],format)
Allerdings bekam ich:
2014-07-04 05:15:00
2014-07-04 05:28:00
2014-07-04 06:15:00
Ich möchte nicht, das Jahr und das Datum, Informationen, wollen einfach nur Zeit. Wie kann ich es entfernen. Danke.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Folgende konvertieren, was Sie haben, um datetime.time() Objekte:
Ausgabe
pd.DatetimeIndex(dateset['TimeStamp']).time
gleichen Ergebnisse, obwohlval.date()
die Antwort gab mir die inspiration 🙂Seit version
0.17.0
können Sie nurFür Versionen älter als
0.17.0
:Können Sie einfach anrufen
apply
und den Zugriff auf dietime
Funktion auf das datetime-Objekt erstellen, die der Spalte zunächst, wie dies ohne die Notwendigkeit für post-processing:Verwenden Sie einfach die
datetime.time()
FunktionDiese zurück
datetime.time
Objekt und Sie können den Zugriff auf die Daten mit dertime.hour
time.minute
undtime.second
Attribute.Gibt es einen einfacheren Weg, es zu tun mit pandas, obwohl die meisten, wenn nicht alle Lösungen sind richtig
your_date_df.dt.time
Lets sagen, dass Ihre Spalte mit dem Datum und der Zeit ist
df['arrived_date']
:Whith pandas, Sie müssen nur zu tun:
Die neue Spalte
df['arrived_time']
wird wie folgt Aussehen:Beobachten, dass die neue Spalte
df['arrived_time']
ist, ist nicht länger eindatetime64
Typ, der Typ der Spalte ist nur pandasobject
dataset['TimeStamp']=dataset['TimeStamp'].str.Scheibe(11,18)