Я хочу отсортировать таблицу PyTables. Сортировка по одному столбцу проста: я могу просто создать cs_index для столбца, который я хочу сортировать, а затем использовать Table.itersorted(), чтобы получить строки в отсортированном порядке, которые я вставляю в новую таблицу, по очереди).Сортировка таблицы PyTables по двум столбцам
Проблема в том, что я хочу сортировать таблицу на две колонки.
В таблице в следующем виде:
chr start end
------------------
chr1 1000 2000
chr1 1500 3000
chr2 1000 5000
chr2 1200 2000
В этом примере порядок является правильным, то есть сначала отсортирован на «CHR», а затем на «старт». Можно ли добиться этой двухколоночной сортировки элегантным способом?
P.S. Я знаю, что я могу сортировать, извлекая столбцы, а затем сортировать массивы numpy в памяти с помощью numpy.lexsort, но данные, которые я работаю, иногда могут быть слишком большими (возможно, миллиарды строк) ...