我正在尝试使用此网站上提供的 Texas.dta 来实施合成控制和安慰剂测试:
https://www.scunning.com/mixtape.html
我下载了合成文件 texas13.dta 并使用该readstata13包来读取它。到目前为止,一切都很好。
我曾经dataprep创建运行所需的数据synth,以便之后可以使用该generate.placebos函数。后一个函数就是问题所在:
-我使用的包来自:
install_github('bcastanho/SCtools')
library(SCtools)
Run Code Online (Sandbox Code Playgroud)
这是创建随机推理安慰剂所必需的库。
当我尝试运行generate.placebos(基本上我相信这只是控件之间的排列)时,我收到一个错误:
Error in svd(c) : infinite or missing values in 'x'
Run Code Online (Sandbox Code Playgroud)
似乎只有在某些特定状态下才会出现这种情况,因为它会在经过多次排列后弹出。
我尝试更改我正在使用的状态(即排除其中一些状态)
我还手动一一尝试,而不是使用安慰剂功能,并且它在某些州(例如密歇根州)也会中断
dataprep.out = dataprep(
foo = texas,
predictors = c("income", "ur", "poverty"),
predictors.op = "mean",
time.predictors.prior = c(1985:1993),
special.predictors = list(
list("bmprison", c(1990,1992,1991,1988), "mean"),
list("alcohol", 1990, "mean"),
list("aidscapita", c(1990,1991), "mean"),
list("bmprison", c(1988,1990:1992), "mean"),
list("alcohol", 1990, "mean"),
list("aidscapita", 1990:1991, "mean"),
list("black", 1991:1992, "mean"),
list("perc1519", 1990, "mean")),
dependent = …Run Code Online (Sandbox Code Playgroud) r ×1