R 函数转换SWAVE文件的文本字符串

R 函数转换SWAVE文件的文本字符串,r,sweave,R,Sweave,我意识到在保存和格式化文本方面存在很多问题。我读了很多问题和答案,但我仍然不能解决我的问题 我想做的是用一些文本创建变量,然后使用函数转换文本(主要是转义下划线),并在\Sexpr{}环境中使用它 我创建了一个简短的测试脚本,但无法使其正常工作: sample_id <- 'CF_0123' sample_id2 <- 'CF\\_0123' sample_id4 <- 'CF\\\\_0123' sample_id2b <- gsub('_','\\_',sample_

我意识到在保存和格式化文本方面存在很多问题。我读了很多问题和答案,但我仍然不能解决我的问题

我想做的是用一些文本创建变量,然后使用函数转换文本(主要是转义下划线),并在\Sexpr{}环境中使用它

我创建了一个简短的测试脚本,但无法使其正常工作:

sample_id <- 'CF_0123'
sample_id2 <- 'CF\\_0123'
sample_id4 <- 'CF\\\\_0123'
sample_id2b <- gsub('_','\\_',sample_id)
sample_id4b <- gsub('_','\\\\_',sample_id)
sample_id6b <- gsub('_','\\\\\\_',sample_id)

addBackslash <- function(x) {
  return(gsub('_','\\\\_',x))
}

Sweave('SILAC.Rnw')
tools::texi2dvi('SILAC.tex', pdf = TRUE)

您可以在区块本身中包含文本和文本处理R代码,而无需使用
\Sexpr

注释和换行可以通过适当的
knitr
chunk选项
comment=NA
results=asis
eval=TRUE

require(knitr)
Rnw文件:
另存为(knitr_newline.Rnw)

输出:

knit2pdf('knitr_newline.Rnw')


这是您想要的输出吗,让我们知道…

我需要的是一些内联文本转换。像CF_0123应该在一些固定的文本中。。。这就是为什么我尝试使用Sexpr。如果我使用代码块,在我的文本周围总是有一些“块”\begin{Schunk}\begin{Soutput}CF_0123\end{Soutput}\end{Schunk}。。。
require(knitr)
\documentclass{article}


\begin{document}

test


test2

<<chunk1,message=FALSE,eval=TRUE,results='asis',echo=FALSE,comment=NA>>=

sample_id <- 'CF_0123'
sample_id2 <- 'CF\\_0123'
sample_id4 <- 'CF\\\\_0123'
sample_id2b <- gsub('_','\\_',sample_id)
sample_id4b <- gsub('_','\\\\_',sample_id)
sample_id6b <- gsub('_','\\\\\\_',sample_id)

addBackslash <- function(x) {
    return(gsub('_','\\\\_',x))
}

 cat(gsub('_','\\\\_',sample_id))
@
test3


\end{document}
knit2pdf('knitr_newline.Rnw')