Кодирование логики c для определения кредитов, которые являются исключением из руководящих принципов - PullRequest
0 голосов
/ 10 февраля 2020

Бизнес-проблема: Если торговый представитель имеет непогашенную ссуду для учетной записи, он не должен выдавать больше ссуд на ту же учетную запись. В этом случае кредит будет помечен как исключение и потребует дополнительных согласований. Мы должны определить, является ли кредит исключением или нет.

Набор данных: Ниже приведен образец данных

+-----+---------+-------------+------------+-----------+--------+----------+-------------------+--------------+
| Rep | Account | Loan number | Loan Start | Loan End  | Status | Overdue? | Ideal Return Date | Is Exception |
+-----+---------+-------------+------------+-----------+--------+----------+-------------------+--------------+
| S1  | A1      | L1          | 18-Jan-17  |           | Open   | Yes      | 18-Jan-18         | N            |
| S2  | A2      | L2          | 24-May-18  | 6-Dec-18  | Close  | No       |                   | Y            |
| S3  | A3      | L3          | 20-Jul-18  | 14-Dec-18 | Close  | No       |                   | Y            |
| S2  | A2      | L4          | 22-Mar-18  | 10-Apr-18 | Close  | No       |                   | N            |
| S3  | A3      | L5          | 24-May-18  | 10-Jul-18 | Close  | No       |                   | N            |
| S4  | A4      | L6          | 28-May-18  | 29-Nov-19 | Close  | Yes      | 28-May-19         | N            |
| S5  | A5      | L7          | 17-May-19  | 8-Jul-19  | Close  | No       |                   | N            |
| S6  | A6      | L8          | 30-Jun-19  | 31-Dec-19 | Close  | No       |                   | Y            |
| S7  | A7      | L9          | 30-Nov-19  |           | Open   | No       |                   | N            |
+-----+---------+-------------+------------+-----------+--------+----------+-------------------+--------------+


Примечание: Is Exception - это столбец, который необходимо получить ._

Псевдокод: Теперь псевдо - код, который я придумал, выглядит следующим образом. Моя проблема в том, что я не могу понять шаг, отмеченный ниже. У меня есть python и SQL для моего использования, и в настоящее время я пытаюсь добиться этого с помощью python. Таким образом, приведенная выше таблица представляет собой фрейм данных.

for each Rep:
    for each Account:
         If count(loan numbers) > 1:
            for each Loan number:
                if overdue:
                     get "ideal return date" && "loan end date"
                     <check other loans for the rep and account, 
                      if the "Loan start" falls between the above range>-->This is issue
                              then Is Exception "Y"
                              else Is Exception "N"


Если кто-то может помочь мне разобраться в этом, это будет отличная помощь!

...