Возвращаясь за советом. Я написал perl-скрипт, который подсчитывает количество обращений определенных чисел в определенные пользователем ячейки. Например, это мой файл данных:Perl hit counter для нескольких диапазонов, варианты на других языках?
12
14
15
20
21
И я хочу знать, сколько хитов у меня есть в следующих диапазонах:
1-19
20-29
30-39
Так результаты будут как
1-19 3
20-29 2
30-39 0
Я сделал такую вещь, кустик, сохраняя мои данные в хэш (datahash), затем сохраняя мои диапазоны в другой хеш (rangehash), а затем в основном просматривая все точки данных в datahash и проверяя, что значение попадает в диапазон s диапазона.
Проблема в том, что для каждого datapoint в datahash я просматриваю все значения диапазона и выхожу, как только я нахожу диапазон, в который падает датапоток. Это полезно для нескольких точек данных, но теперь у меня есть файлы с не менее чем 2 миллионами данных и 50 000 диапазонов, поэтому перебирать все это просто нужно навсегда.
Мне было интересно, если бы у кого-то было бы лучшее решение, а не просто зацикливание всего этого. Предложения для других языков хорошо приняты !!!
Беста,
Шакть
Crossposted at http: // www.perlmonks.org/?node_id=1048441. – choroba