我是Markdown的新手,我想为数据框中的每一行数据创建一个PDF报告,它有单独的段落(或者页面会更好)。有一个类似的帖子here,但我似乎无法复制答案。
以下是我的示例数据框:
df <- data.frame(
Company = c("Uber", "AT&T", "Ford"),
Stock.Ticker = c("UBER", "T", "F"),
Price = c(61, 26, 11),
Date = c("01/11/2021","01/13/2021","1/21/2021"),
Description = c("Uber Technologies, Inc. develops and operates proprietary technology applications.",
"AT&T Inc. provides telecommunication, media, and technology services worldwide.",
"Ford Motor Company designs, manufactures, markets, and services a range of Ford trucks, cars, sport utility vehicles.")
)我正在寻找的输出是:
[Uber Technologies, Inc. develops and operates proprietary technology applications.] [Uber]'s stock ticker is [UBER]. As of [01/11/2021], the stock price is $[61].
[AT&T Inc. provides telecommunication, media, and technology services worldwide.] [AT&T]'s stock ticker is [T]. As of [01/13/2021], the stock price is $[26].
[Ford Motor Company designs, manufactures, markets, and services a range of Ford trucks, cars, sport utility vehicles.] [fORD]'s stock ticker is [f]. As of [01/21/2021], the stock price is $[11].发布于 2021-02-12 05:27:35
您将希望使用chunk选项results='asis'输出代码块的结果,并对输出执行cat()操作,以便能够直接编写必要的LaTeX。
注意,我必须使用\\转义两个AT&T中的与号,因为&号在LaTeX中是一个特殊字符,需要用\进行转义,我们需要用另一个反斜线转义该反斜线,以表示R字符中的单个反斜线。在最终的LaTeX中插入两个\newline存在相同的问题。
---
output: pdf_document
---
```{r setup, include=FALSE}knitr::opts_chunk$set(echo = FALSE)
```{r, results='asis'}df <- data.frame(
Company = c("Uber","AT\&T","Ford"),
Stock.Ticker =c(“优步”,"T","F"),
价格= c(61,26,11),
Date = c("01/11/2021","01/13/2021","1/21/2021"),
Description = c("Uber Technologies,Inc.开发和运营专有技术应用程序。“,
"AT\\&T Inc. provides telecommunication, media, and technology services worldwide.", "Ford Motor Company designs, manufactures, markets, and services a range of Ford trucks, cars, sport utility vehicles."))
使用(df,cat(sprintf(
"%s %s的股票代码为%s。截至%s,存储价格为$%s.\newline\newline",
描述、公司、Stock.Ticker、日期、价格
))
发布于 2021-02-12 05:18:06
我会使用循环。
for (company in df$company) {
cat ( paste(
df$description[df$company == company],
company,
df$Stock.Ticker))
cat ("\n\\newpage")
}https://stackoverflow.com/questions/66162788
复制相似问题