Ich habe eine Datenbank mit einer Anzahl von Menschen, die mehrere Abonnements für einen Dienst auf einmal und Transaktionsdaten für jedes Ereignis während der Laufzeit des Abonnements haben können. Ich versuche, eine Variable zu erstellen, die die Anzahl der aktuellen aktiven Abonnements zählt, die der Benutzer zu einer bestimmten Transaktionszeit hat.Graf gleichzeitige Abonnements
ein Beispiel zu veranschaulichen, leben meine Daten in der Form:
person | subscription | obs_date | sub_start_date | sub_end_date | num_concurrent_subs
--------------------------------------------------------------------------------------
1 | 1 | 09/01/10 | 09/01/10 | 09/01/11 | 1
1 | 1 | 10/01/10 | 09/01/10 | 09/01/11 | 2
1 | 1 | 11/01/10 | 09/01/10 | 09/01/11 | 2
1 | 2 | 10/01/10 | 10/01/10 | 09/01/11 | 2
1 | 2 | 11/01/10 | 10/01/10 | 09/01/11 | 2
1 | 3 | 11/01/14 | 09/01/14 | . | 1
1 | 3 | 11/01/16 | 09/01/14 | . | 1
1 | 4 | 11/01/15 | 10/01/15 | 11/01/15 | 3
1 | 5 | 11/01/15 | 10/01/15 | 11/01/15 | 3
Und so weiter und für jede Person so weiter. Ich möchte die num_concurrent_subs
wie oben generieren.
Das heißt, für jede Person, betrachten Sie jede Beobachtung und finden Sie, wie viele Abonnements es in den Bereich sub_start_date
bis sub_end_date
fällt.
Ich habe ein wenig über Stata count
Funktion gelesen und glaube, ich bin in der Nähe einer Lösung, aber ich bin mir nicht sicher, wie man es über verschiedene Abonnements zu überprüfen.
Streng 'count' ist ein Befehl, keine Funktion. In Stata sind Befehle und Funktionen verschiedene Arten von Bestien. –