У меня есть таблица со столбцами ID
, DATES
, RATES
, один ID
(клиент) имеет несколько rates
, но можно иметь только один rate
на один конкретный date
.
ID DATES RATES
5 2014-07-01 0.02
5 2014-07-02 0.03
5 2014-07-03 0.04
Таким образом, один ID
может иметь только один путь изменения скорости во времени, потому что одному ID
был назначен только один rate
для конкретного date
.Но есть некоторые ID
, имеющие точно такой же путь изменения скорости во времени, потому что один и тот же rate
может быть назначен нескольким ID
с.например, ID
5 & 6 имеют один и тот же путь изменения скорости во времени.
ID DATES RATES
5 2014-07-01 0.02
5 2014-07-02 0.03
5 2014-07-03 0.04
6 2014-07-01 0.02
6 2014-07-02 0.03
6 2014-07-03 0.04
Моя цель состоит в том, чтобы найти клиентов с одинаковыми путями изменения тарифов во времени (идеальным результатом было бы, если путь тарифа 1 включает ID
5 & 6. Столбцы ID
включают ID
с тем же путем изменения скорости).
Rate Path ID
1 5,6
2 1,3
Я надеюсь использовать пакет R или sqldf в Rstudio для решения этой проблемы.Пример таблицы показан ниже.Есть один момент, на который нужно обратить внимание: идентификаторы 1 и 3 используют один и тот же шаблон, даже если идентификатор 3 появился на один день позже, чем идентификатор 1, но если вы составите линейный график с указанием их ставок, две линии будут полностью перекрываться.однако идентификаторы 1 и 2 не используют один и тот же шаблон, поскольку, хотя первые три дня они используют один и тот же шаблон, но в последний день их показатели различаются.Две линии не будут пересекаться.
ID DATES RATES
1 2014-07-01 0.02
1 2014-07-02 0.03
1 2014-07-03 0.04
1 2014-07-04 0.05
2 2014-07-01 0.02
2 2014-07-02 0.03
2 2014-07-03 0.04
2 2014-07-04 0.06
3 2014-07-02 0.03
3 2014-07-03 0.04
3 2014-07-04 0.05
В настоящее время я использую парную сумму абсолютной разницы для решения этой проблемы.Но большие данные требуют много вычислений впоследствии.Я думаю о каких-либо других лучших способах решения этой проблемы?