knitr:less/greater 比符号显示为 (¡) 和 (¿)
knitr: less/greater than sign displayed as (¡) and (¿)
我是使用 knitr 生成报告的初学者。
我有一个 R 脚本(参见下面的示例;顺便说一句,我正在使用 RStudio 来处理所有这些)运行s 没有错误并且输出是一个数据框。我的 rnw.file 看起来像这样:
% !Rnw weave = knitr
\documentclass[a4paper]{article}
\begin{document}
<<echo=FALSE,message=FALSE>>=
source("test.R")
kable(test.mat)
@
\end{document}
很好地显示了 table。我遇到的唯一问题是最后一列中显示为“¿”的“>”(大于)符号。
找到了一些关于使用
的信息
\usepackage[T1]{fontenc}
但这似乎并不能解决问题。包含这个之后,我可以开始编译脚本了,但是在 10 分钟左右之后(之前只花了我几秒钟的时间来编译)我 运行 出现错误(退出代码:1)。
提前致谢!
R.script(另存为"test.R"):
temp <- 12
test.mat <- as.data.frame(matrix(NA,ncol=2,nrow=1))
test.mat$V1 <- 2
test.mat$V2 <- paste(temp,"subjects > 28 days",sep=" ")
>
是一个数学符号,因此它不会被识别,除非它没有嵌入数学环境(内联或作为一个集团)。
试试这个代码。
$>$
一个(不太优雅)的解决方案
kable
的行为仍然很奇怪。在我分析了它生成的乳胶代码后,我尝试了这个解决方案,它不是那么优雅,但它有效。希望其他一些用户提供更有效的解决方案。这是我的代码。
% !Rnw weave = knitr
\documentclass[a4paper]{article}
\begin{document}
<<echo = F, message = FALSE>>=
source("test.R")
aa1
@
\end{document}
其中 test.R
是:
temp <- 12
test.mat <- as.data.frame(matrix(NA,ncol=2,nrow=1))
test.mat$V1 <- 2
test.mat$V2 <- paste(temp,"subjects > 28 days",sep=" ")
aa <- kable(test.mat, format = "latex")
aa1 <- gsub(">", "$>$", aa)
结果如下:
我无法解释为什么它现在可以工作,但这是我发现我应该在序言中使用的内容:
\usepackage{lmodern}
\usepackage[T1]{fontenc}
在另一个 thread 中找到这个(与我的问题没有真正相关),但现在我在 R 输出中得到了我想要的(R.script 中不需要更改)以及pdf.
我是使用 knitr 生成报告的初学者。 我有一个 R 脚本(参见下面的示例;顺便说一句,我正在使用 RStudio 来处理所有这些)运行s 没有错误并且输出是一个数据框。我的 rnw.file 看起来像这样:
% !Rnw weave = knitr
\documentclass[a4paper]{article}
\begin{document}
<<echo=FALSE,message=FALSE>>=
source("test.R")
kable(test.mat)
@
\end{document}
很好地显示了 table。我遇到的唯一问题是最后一列中显示为“¿”的“>”(大于)符号。
找到了一些关于使用
的信息\usepackage[T1]{fontenc}
但这似乎并不能解决问题。包含这个之后,我可以开始编译脚本了,但是在 10 分钟左右之后(之前只花了我几秒钟的时间来编译)我 运行 出现错误(退出代码:1)。
提前致谢!
R.script(另存为"test.R"):
temp <- 12
test.mat <- as.data.frame(matrix(NA,ncol=2,nrow=1))
test.mat$V1 <- 2
test.mat$V2 <- paste(temp,"subjects > 28 days",sep=" ")
>
是一个数学符号,因此它不会被识别,除非它没有嵌入数学环境(内联或作为一个集团)。
试试这个代码。
$>$
一个(不太优雅)的解决方案
kable
的行为仍然很奇怪。在我分析了它生成的乳胶代码后,我尝试了这个解决方案,它不是那么优雅,但它有效。希望其他一些用户提供更有效的解决方案。这是我的代码。
% !Rnw weave = knitr
\documentclass[a4paper]{article}
\begin{document}
<<echo = F, message = FALSE>>=
source("test.R")
aa1
@
\end{document}
其中 test.R
是:
temp <- 12
test.mat <- as.data.frame(matrix(NA,ncol=2,nrow=1))
test.mat$V1 <- 2
test.mat$V2 <- paste(temp,"subjects > 28 days",sep=" ")
aa <- kable(test.mat, format = "latex")
aa1 <- gsub(">", "$>$", aa)
结果如下:
我无法解释为什么它现在可以工作,但这是我发现我应该在序言中使用的内容:
\usepackage{lmodern}
\usepackage[T1]{fontenc}
在另一个 thread 中找到这个(与我的问题没有真正相关),但现在我在 R 输出中得到了我想要的(R.script 中不需要更改)以及pdf.