import csv
with open("data-62741.csv", mode="r", encoding="utf-8") as f:
reader = csv.reader(f, delimiter=";")
header = next(reader) # Пропускаем 1-ю строку (английский заголовок)
sub_header = next(reader) # Пропускаем 2-ю строку (русский заголовок)
rows = list(reader) # Теперь тут только чистые данные
col_idx = header.index("NumberOfStations")
n = len(rows)
for i in range(n):
min_idx = i
for j in range(i + 1, n):
val_j_str = rows[j][col_idx].strip()
val_min_str = rows[min_idx][col_idx].strip()
val_j = int(val_j_str) if val_j_str else float("inf")
val_min = int(val_min_str) if val_min_str else float("inf")
if val_j < val_min:
min_idx = j
rows[i], rows[min_idx] = rows[min_idx], rows[i]
with open(
"data-62741_sorted.csv", mode="w", encoding="utf-8", newline=""
) as f:
writer = csv.writer(f, delimiter=";")
writer.writerow(header)
writer.writerow(sub_header)
writer.writerows(rows)