/
GraphTreeHeap
/
museumdb2_experiments
Обзор
Документация
Войти
/
GraphTreeHeap
/
museumdb2_experiments
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
scripts/nyc_buildings_parser.py
39 строк
988 B
FedMam
Add all scripts
25 май 2026, 19:18
25 май 2026, 19:18
a73447a
Код
Авторство
О чём код?
import sys import csv import math import numpy as np INF = 2 ** 65 WIDTH = 2 ** 64 - 1 entries = [] min_x, max_x, min_y, max_y = INF, -INF, INF, -INF with open('nyc-buildings/BK.csv', 'r', encoding='utf-8') as in_file: reader = csv.DictReader(in_file) for row in reader: try: x, y = float(row['XCoord']), float(row['YCoord']) except: continue entries.append((x, y)) entries = np.array(entries, dtype=np.float32) min_xy = np.quantile(entries, q=0.001, axis=0) max_xy = np.quantile(entries, q=0.999, axis=0) entries = (entries - min_xy) / (max_xy - min_xy) with open('nyc-buildings.csv', 'w', encoding='utf-8') as out_file: writer = csv.writer(out_file) writer.writerow(['X', 'Y']) for x, y in entries: if x < 0.0 or x > 1.0 or y < 0.0 or y > 1.0: continue writer.writerow([ min(WIDTH, max(0, round(x * WIDTH))), min(WIDTH, max(0, round(y * WIDTH))) ])