Verwenden des Google Causal Impact-Pakets zur Bewertung der Bedeutung einer geplanten Intervention


7

Ich verwende das Causal Impact-Paket in R, um auf den kausalen Effekt einer Intervention in einige Daten zu schließen, die stark korreliert und saisonal sind.

Insbesondere habe ich 17 Tage stündliche Daten erhalten, wobei die Intervention am Ende von Tag 13 erfolgt. Ich habe zwei Kontrolldatensätze, die von der Intervention überhaupt nicht betroffen sind (mit linearen Korrelationen von 0,708 und 0,701), und den Datensatz, der die Intervention enthält ( aka "behandelt")

Ein Teil der Daten finden Sie hier

Mein Code lautet wie folgt

days <- 4
daily.obser <- days*24
data.1 <- cbind(treated.signal.3n,the.control.3,the.control.2)
data.1 <- data.1[1:((length(bsl)+1)+daily.obser), ] #check the required amount of data only 

matplot(data.1, type = "l",col = c(2,4,9))
legend("bottomright", inset=.05, legend=c("Treated Zone", "Control Zone 1", "Control Zone 2"), pch=1, col=c(2,4,9), horiz=TRUE)

preperiod <- c(1,length(bsl))
postperiod <- c((length(bsl)+1),(length(bsl)+1+daily.obs))
prior.level.sd.level <- 0.01

imp.1 <- CausalImpact(data.1, pre.period = preperiod, post.period = postperiod, 
         model.args = list(niter = 2500,nseasons=17, season.duration = 24, 
         dynamic.regression = FALSE, prior.level.sd =prior.level.sd.level,standardize.data = TRUE))

summary(imp.1)
plot(imp.1,c("original","pointwise"))
summary(imp.1,"report")

Meine Fragen sind:

Ich habe das Papier gelesen und irgendwann geht es um die vorherige Verteilung der Varianz. Ich verstehe nicht, auf was ich meinen prior.level.sdParameter basierend auf meinen Daten einstellen soll .

Ein weiteres Problem sind die nseasons,season.durationArgumente. Wenn ich dies spezifiziere, bekomme ich in den Ergebnissen, dass die Intervention unbedeutend ist (und die CIs werden riesig), während die Intervention signifikant ist, wenn ich dies nicht tue. Soll nseasonsdie Anzahl der Tage für den gesamten Datensatz oder nur für den Zeitraum vor der Intervention (z. B. 17 oder 13) angegeben werden? Was bedeutet es wirklich, die Saisonalität anzugeben? Kann ich das anhand der Daten überspringen?

Ergebnisse mit Plots und Zahlen der Saisonalitätsspezifikation

Ergebnisse ohne Diagramme und Zahlen der Saisonalitätsspezifikation

(nicht kumulativ, da es in meinem Fall nicht nützlich ist)

(Sie werden feststellen, dass die Passform in der Zeit vor der Intervention nicht so gut ist. Kann ich das irgendwie beheben?)

Ich verstehe nicht, wie ich angeben soll, ob ich die Daten standardisieren möchte oder nicht.

Schließlich denke ich über statische oder dynamische Regression nach. Ich habe in der Zeitung gelesen, dass es ratsam ist, statisch zu verwenden, wenn die Beziehung zwischen Kontrolle und Behandlung stabil ist. Kann jemand erklären, was unter Stall zu verstehen ist?

Das Papier finden Sie hier

Antworten:


-1

Über Saisonalität. Aus der Referenz:

. Wenn die Daten beispielsweise tägliche Beobachtungen darstellen, verwenden Sie 7 für eine Wochentagskomponente. Diese Schnittstelle unterstützt derzeit nur bis zu einer saisonalen Komponente.

und

Verwenden Sie model.args = list (nseasons = 7, Season.duration = 24), um Daten mit stündlicher Granularität eine Wochentagskomponente hinzuzufügen

Ich gehe also davon aus, dass ich in Ihrem Fall auch nseasons = 13, saison.duration = 24 denke.


Was mit stabil gemeint ist: Ich verstehe, dass die Beziehung der Kovariaten zu der Serie, die Sie verfolgen, beibehalten worden wäre (ohne die Intervention). Wenn ich also eine Studie über eine Maßnahme zur Beeinflussung der Immobilienpreise (y) durchführe und als Kovariaten den Durchschnittslohn verwende, könnte sich das Verhältnis zwischen Immobilienpreisen und Löhnen ändern, wenn Großbritannien während des Interventionszeitraums die EU verlässt. Die Annahme, dass die Beziehung zwischen den Kovariaten und y stabil ist, würde also gebrochen.


Die prior.level.sd, glaube ich nicht, können Sie aus Ihren Daten ableiten. Es ist ein Parameter, der vom Algorithmus verwendet wird, nicht wahr?

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.