У меня есть список ценностей. Я хотел бы использовать первое значение в одной части функции, а остальные значения - в отдельной части функции. Затем я хотел бы использовать второе значение из списка в одной части функции и использовать оставшиеся значения (включая первое значение) в другой части функции.
Следующий код не является настоящим кодом, поскольку я исключил некоторые входные данные функций, но он показывает, что я пытаюсь сделать:
group <- c(1, 3, 4, 5, 9) #the complete group
#It is important to note that these values are not continuous. They are distinct values.
#include 1st unit of the list group as treatment and then use
#the remaining values as controls
controls_not2 <- c(3, 4, 5, 9)
df1 <- dataprep(treatment = 1, controls = controls_not1)
gaps.plot(dataprep = df1)
#use the 2nd unit from the list as the treatment and use
#the remaining values as controls
controls_not2 <- c(1, 4, 5, 9)
df2 <- dataprep(treatment = 3, controls = controls_not3)
gaps.plot(dataprep = df3)
В полном списке у меня около 50 значений. Есть ли способ перебрать все эти значения так, как я показал выше?
Вот дополнительная информация.
Используемые пакеты:
library(tidyverse)
library(synth)
Вот пример того, как выглядит полный код для создания единого графика.
treatment.identifier эквивалентно тому, что у меня есть как лечение в простом примере выше. Control.identifier эквивалентен тому, что у меня в качестве элементов управления в приведенном выше примере.
dataprep.out1 <- dataprep(foo = as.data.frame(df),
predictors = predictors1,
predictors.op = "mean",
special.predictors = NULL,
dependent = "logfatalitiespercapita",
unit.variable = "state",
time.variable = "year",
treatment.identifier = "99",
controls.identifier = controlstates,
time.predictors.prior = c(1981:1985),
time.optimize.ssr = c(1981:1985), #check on these years
time.plot = 1981:2003,
unit.names.variable = "statenames")
#identifying weights that create the best possible synthetic control unit for the treated
synth.out1 <- synth(dataprep.out1)
#graph
spec1 <- gaps.plot(dataprep.res = dataprep.out1, synth.res = synth.out1, Xlab = c("Year"), Ylab = c("Gap"))