сегодня я столкнулся с проблемой, которую не смог решить самостоятельно, несмотря на поиск решений - мне показалось, что либо мой подход неверен, либо никто не задал подобный вопрос.
Я играю с атрибуцией Маркова, поэтому у меня есть столбцы со строками, которые выглядят так:
A > B > B > C > B > A > C > B > A
и т.д.
... создается на основе функции postgresql 'string_agg'.
Я думаю, что для меня было бы важно назначить номер, за который каждая строка появляется во всей строке. Чтобы было ясно, в конце дня это будет выглядеть так:
A1 > B1 > B2 > C1 > B3 > A2 > C2 > B4 > A3
Есть три основных проблемы:
- есть около 100 различных типов элементов, которые могут быть подсчитаны, что может изменить его время, поэтому его трудно жестко кодировать,
- набор данных составляет около 200 тыс. Строк,
- строки могут быть длиной до нескольких сотен символов
Единственное, что мне пришло в голову, это написать какой-то цикл, но такое ощущение, что это займет много времени, пока не закончится.
Я также думал о том, чтобы решить эту проблему на уровне postgresql, но также не смог найти эффективное и простое решение.