Code: Select all
{
10/16/2025 10:40 AM some_comment 23.806 10.5 ....(some more values here)
Xu 5.62 61.04 65.49
Xv 4.32 63.21 62.47
Xx 4.26 62.24 64.28
Xy 3.85 68.66 67.21
Xz 1.78 63.93 64.39
10/16/2025 10:41 AM some_comment 23.806 10.5 ....(some more values here)
Xu 4.62 51.04 15.49
Xv 3.32 93.54 62.33
Xx 6.26 32.55 34.49
Xy 2.85 68.67 57.56
Xz 9.78 33.04 94.73
...
}
< /code>
Ein Datenblock hat 6 eindeutige Spalten und sie wiederholen danach. Keiner von ihnen hat den richtigen Namen. [url=viewtopic.php?t=14917]Ich möchte[/url] ihnen basierend auf ihrer Position einen bestimmten Namen geben.Datetime, Xu, Xo, ...(these are the 2nd to 6th column),"comments", "Val_A", "Val_B","another_name",...
Ich habe es mit dem folgenden Code ausprobiert:
def parse_custom_txt(filepath):
data = []
with open(filepath, 'r') as file:
lines = [line.strip() for line in file if line.strip()]
i = 0
while i < len(lines):
if "/" in lines:
parts = lines.split('\t')
dt = f"{parts[0]} {parts[1]}"
comment = parts[2]
main_vals = [v for v in parts[3:] if v.strip()]
i += 1
sensors = {}
for _ in range(5):
sensor_line = lines.split('\t')
sensors[sensor_line[0].strip()] = [float(v) for v in sensor_line[1:] if v.strip()]
i += 1
row = [dt] + [sensors.get(k, []) for k in ['Xu', 'Xv', 'Xx', 'Xy', 'Xz']] + [comment] + main_vals
data.append(row)
else:
i += 1
return pd.DataFrame(data)
< /code>
Dies führt jedoch dazu, dass der Spaltenname stattdessen die Werte abgerufen. Wie repariere ich das?