警告:我无法在单独的R / RStudio会话中重现错误,因此我希望在解决当前.rmd
脚本时遇到问题。
问题
突然之间,观星者的称号似乎停止了工作。无论标题是什么或我在函数中放置参数的位置,它似乎都不起作用。
此外,也许相关,我开始收到此警告消息:
the condition has length > 1 and only the first element will be used
背景
在@ hpesoj626帮助我回答this question后,标题从我的表格中消失了。虽然未在该示例中明确设置,但仍会显示stargazer
的/ LaTeX
的默认标题。在该帖子中使用该解决方案后,标题消失了。
我想使用title = ""
参数为表添加自定义标题。这似乎没有帮助。
尝试
dep.var.labels = c()
,一切似乎都有效
细。stargazer
包。...
和title = ""
results='asis'
,echo=FALSE
等。)正如您将在下面的部分中看到的那样,我通过命名空间加载了其他包,因为我使用.rda
将load()
个对象加载到我的会话中。我正在将glm()
个对象和ggplot()
个对象加载到我的R / Rstudio会话中。即使在示例会话中执行此操作,我也无法重现错误。
链接的可重复示例与实际会话之间的差异
我可以在示例数据和实际数据之间看到的唯一区别是生成的实际数据的LaTeX代码缺少这个:
\begin{table}[!htbp] \centering
\caption{}
\label{}
我的实际数据包含:
the condition has length > 1 and only the first element will be used
我的实际sessionInfo()还有一些通过命名空间加载的包:
R version 3.4.4 (2018-03-15)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows >= 8 x64 (build 9200)
Matrix products: default
locale:
[1] LC_COLLATE=English_United States.1252 LC_CTYPE=English_United States.1252 LC_MONETARY=English_United States.1252 LC_NUMERIC=C
[5] LC_TIME=English_United States.1252
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] stargazer_5.2.1
loaded via a namespace (and not attached):
[1] Rcpp_0.12.16 digest_0.6.15 grid_3.4.4 plyr_1.8.4 gtable_0.2.0 scales_0.5.0.9000 ggplot2_2.2.1 pillar_1.2.1 rlang_0.2.0.9001
[10] lazyeval_0.2.1 labeling_0.3 tools_3.4.4 munsell_0.4.3 yaml_2.1.19 compiler_3.4.4 colorspace_1.3-2 knitr_1.20 tibble_1.4.2
通过命名空间加载的某些软件包是否与stargazer
,LaTeX
或其他软件包冲突?
感谢
我知道我无法提供最多的信息,因为我自己无法重现错误,但我非常感谢您在解决问题时遇到的任何疑问。如果您能够提供一些指导,谢谢。
答案 0 :(得分:0)
经过大量的反复试验,我找到了解决方案。
我没有意识到这一点,但在df <- data.frame(factor = rep("myFactor", 9),
filter = rep("Property Price", 9),
outcome = rep("Price", 9),
filter.value = c(rep("Country X", 3), rep("Country Y", 3), rep("Country Z", 3)),
FactorLevel = rep(c("Bungalow", "House", "Apartment"), 3),
Outcome_Variable = rep("Price",9),
mean = rep(20, 9),
min = rep(0, 9),
max = rep(100, 9),
sd = rep(5, 9),
n = rep(50, 9),
SE = rep(3, 9))
attach(df)
print.plot <- function (rows) {
ggplot(rows, aes(x = FactorLevel, y = mean, fill = filter.value)) +
geom_bar(stat = "identity", position = position_dodge()) +
geom_errorbar(aes(ymin = mean - SE, ymax = mean + SE), position = position_dodge(.8),
width = 0.25)+
geom_text(aes(label = n), vjust = 1.6, color = "black", position = position_dodge(.9), size = 3.5)
}
print.plot(df)
函数中包含float = FALSE
,删除了生成的LaTeX代码的这一部分:
stargazer()
标题的去向。但是如果不使用\begin{table}[!htbp] \centering
\caption{}
\label{}
,我将无法将我的桌子定位在我想要的位置。而float = FALSE
或这些字母的任意组合都没有正确定位表格,而table.placement = "htbp"
引发了错误。
感谢this post,我能够将以下代码放入我的YAML标头中并使用table.placement = "H"
并保持float = table.placement = "H"
:
TRUE
将我的桌子放在适当的位置并允许我在桌子上放置标题。