-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathmistralConversion.py
More file actions
38 lines (29 loc) · 1.07 KB
/
mistralConversion.py
File metadata and controls
38 lines (29 loc) · 1.07 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
import pandas as pd
import pyperclip
from io import StringIO
# Daten aus der Zwischenablage einlesen
clipboard_data = pyperclip.paste()
# Daten in einen DataFrame umwandeln (Tabulator-getrennt)
df = pd.read_csv(StringIO(clipboard_data), delimiter='\t')
# Hilfsspalte für die Nummerierung der Einträge pro Tag
df['Eintrag'] = df.groupby('Datum').cumcount() + 1
# Pivot für H/N, Uhrzeit und Scheitel
pivot_df = df.pivot_table(
index=['Datum', 'Wochentag'],
columns=['H/N', 'Eintrag'],
values=['Uhrzeit', 'Scheitel'],
aggfunc='first'
).reset_index()
# MultiIndex-Spalten auflösen
pivot_df.columns = [
'Datum', 'Wochentag',
'Uhrzeit_H_1', 'Uhrzeit_H_2', 'Uhrzeit_N_1', 'Uhrzeit_N_2',
'Scheitel_H_1', 'Scheitel_H_2', 'Scheitel_N_1', 'Scheitel_N_2'
]
# Leere Werte mit "–" füllen
pivot_df = pivot_df.fillna('–')
# Nach Datum sortieren
pivot_df = pivot_df.sort_values('Datum')
# Ergebnis in die Zwischenablage schreiben
pyperclip.copy(pivot_df.to_string(index=False))
print("Ergebnis wurde in die Zwischenablage kopiert. Füge es jetzt in Excel ein!")