Ich habe versucht mit einem Python-Programm automatisch die Zeitstempel aus einer .tdms Datei (LabView-Datei) auszulesen, zu konvertieren & als eine .xlsx Datei (Excel-Datei) wieder abzuspeichern.
Allerdings ist die Uhrzeit im Zeitstempel der konvertierten Excel-Datei komischerweise immer genau 2 Stunden früher als in der tdms-Datei.
Hier ein Beispiel: Die Uhrzeit bzw. der Datums-Zeitstempel im tdms File beträgt: "19.06.2023 04:21:06,391 PM" im 12h Format.
Hier mein Code zur Konvertierung:
Code: Alles auswählen
# Daten in Excel-Datei schreiben.
with pd.ExcelWriter(xlsx_output_path) as writer:
for df_list, sheet_name in zip([sm_states_data_frames],
['SM States']):
for i, df in enumerate(df_list):
if 'Timestamp' in df.columns:
df['Timestamp'] = df['Timestamp'].apply(lambda x: x.strftime('%d.%m.%Y %I:%M:%S,%f %p'))
df.to_excel(writer, sheet_name=sheet_name, index=False)
Wenn ich nun mit den oben gezeigten Codezeilen im 12h Format versuche die "Timestamp" Daten in eine .xlsx Datei zu schrieben, kommt dabei das Problem mit den 2 Stunden Zeitversatz heraus:
Sprich der Datums-Zeitstempel der generierten Excel-Datei sieht so aus: "19.06.2023 02:21:06,390650 PM"
Man muss hier noch beachten, dass nach dem Komma 6 Stellen vorhanden sind, da hier Mikrosekunden angezeigt werden statt Millisekunden. Aber ich gehe mal nicht davon aus, dass das die Ursache meines 2 Stunden Versatz Problems ist
Das gleiche Problem habe ich übrigens auch wenn ich versuche den Zeitstempel in ein 24h Format umzuwandeln.
Ich habe das Ganze auch schon mit verschiedenen .tdms Files mit verschiedenen Uhrzeiten getestet. Immer wieder das gleiche Problem.
Hier noch das Format der "Timestamp"-Zellen der tdms Ursprungsdatei: TT.MM.JJJJ hh:mm:ss,000 AM/PM
Es handelt sich also um ein Benuterdefiniertes Format.
Ich wäre sehr dankbar, wenn mir hier jemand weiter helfen könnte!
Viele Grüße!
Jonas