#loops #date #stata
#циклы #Дата #stata
Вопрос:
У меня есть набор данных под названием «выставление счетов» и «платежи», которые я добавил вместе, затем отсортировал по идентификатору, чтобы можно было просматривать счета, выставленные каждому идентификатору, и платежи, произведенные по каждому идентификатору.
Вот его снимок: снимок набора данных
contractaccount printdate paymentdate billingperiod duedate payable payment
12345 01jan2015 201501 15jan2015 100
12345 13jan2015 50
12345 13jan2015 50
12345 29jan2015 201502 13feb2015 150
12345 03feb2015 150
12345 05mar2015 201503 20mar2015 100
12345 21mar2015 80
12345 22mar2015 20
23456 15jan2015 201501 31jan2015 200
23456 20jan2015 200
23456 12feb2015 201502 28feb2015 220
23456 13feb2015 100
23456 15feb2015 100
23456 20feb2015 20
23456 10mar2015 201503 20mar2015 200
23456 18mar2015 100
23456 20mar2015 100
Я намерен суммировать произведенные платежи, если платеж производится между датой печати и датой назначения, с дополнительным условием, чтобы период выставления счетов соответствовал дате печати, например, суммировать платежи, произведенные по идентификатору 12345, между 01 января 2015 и 15 января 2015, при условии, что период выставления счетов «201501» соответствует дате печати01 января 2015 года.
Я попробовал следующий код:
bysort contractaccount: gen paymentsum=sum(payment) if paymentdate<=duedate amp; paymentdate>=printdate
но я все еще не знаю, как добавить упомянутое выше дополнительное условие. Это также не дает мне того, что я хочу, поскольку код сгенерировал совокупную сумму платежей для каждого идентификатора. В идеале я хотел бы сгенерировать вывод, который показывал бы сумму платежей, произведенных для каждого идентификатора, с учетом всех вышеупомянутых условий даты (для каждого периода выставления счетов, какова сумма платежей, произведенных каждым идентификатором).
У меня есть подозрение, что мне нужно будет написать цикл для этого, что является еще одной проблемой, поскольку я все еще новый пользователь Stata.
Комментарии:
1. Пример данных, которые можно скопировать и вставить, поможет вашему делу. Большинство советов по statalist.org/forums/help применимо и здесь.
2. Привет, Ник, спасибо за совет! Я обновил свой запрос здесь