循环遍历数据框并将列中的每个值添加到 PDF

循环遍历数据框并将列中的每个值添加到 PDF

请耐心等待,因为我是 R Studio 中创建 pdf 的新手。我的 R 代码从 ftp 站点抓取一堆文件,然后循环遍历每个文件并创建一个 pdf...这一切都很好。在这个 r 代码中,它创建了一个包含两列代码和 URL 的数据框。对于每个 pdf,我想获取每个 url 并将其包含在文本之间。每次运行 pdf 时,数据框中的行数可能不同。我没有找到任何有关 sweave 中 for 循环的信息。我不得不使用 sweave,因为 Markdown 在我公司的系统上不起作用(不要问!)。

这是我迄今为止的 rnw 文件。

\documentclass[11pt,a4paper, titlepage]{article}
\usepackage[margin=0.5in]{geometry}
\usepackage{tikz,hyperref,Sweave,fancyvrb}
\geometry{verbose,tmargin=1.5cm,bmargin=1.5cm,lmargin=1.5cm,rmargin=1.5cm}
\title{}
\date{}
\begin{document}
\SweaveOpts{concordance=TRUE}
\begin{center}
\includegraphics[width=1\textwidth]{/home/siobhan/CyberHealthCheck/header_cut.png}
\end{center}
<<echo=FALSE>>=
urls<-nrow(dfCodes)
@
\fbox {
    \parbox{\linewidth}{
    \large
    \textbf{About you}
    \\
    \small
    \Sexpr{company_name}
    \\
    \Sexpr{rank_text}
    }
}
\\
\\
\fbox {
    \parbox{\linewidth}{
    \small
    There were \Sexpr{urls} vunerabilities found. 
    \\
    \\
    \href{\Sexpr{dfCodes[1,2]}}{here} and
    \href{\Sexpr{dfCodes[2,2]}}{here} 
    }
}
\begin{center}
<<do-my-job, echo=FALSE>>=
options(width=60)
library(knitr)
knitr::kable(head(dfCodes))
@
\end{center}
\begin{center}
\includegraphics[width=0.8\textwidth]{/home/siobhan/CyberHealthCheck/footer_lg.png}
\end{center}
\end{document}

答案1

我已经解决了大部分问题,真的很容易。使用以下代码创建新块...现在只需弄清楚如何混合文本和块。

<<test, echo=FALSE>>=
for (i in 1:nrow(dfCodes)) 
{
cat(paste(dfCodes[i,2],"\n"))
}
@ 

相关内容