我有以下问题,一旦将 Rstudio 中的 Rmarkdown 编织为 PDF,我的表格就不会出现在它们在 Rmarkdown 文件中的位置,而是出现在页面的顶部。我尝试添加:
header-includes:
- \usepackage{float}
Run Code Online (Sandbox Code Playgroud)
和
```{r setup, include=FALSE}
knitr::opts_chunk$set(... fig.pos = "H")
```
Run Code Online (Sandbox Code Playgroud)
但它没有用。R 和 Rstudio 在 Linux 上运行,LaTeX 引擎是“pdflatex”
完全可重现的示例:
---
title: "Untitled"
output: pdf_document
header-includes:
- \usepackage{float}
---
```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = FALSE, message=FALSE, warning = FALSE, fig.align = "center", dev = "cairo_pdf", fig.pos = "H")
```
```{r}
library(kableExtra)
library(tidyverse)
```
## R Markdown
This is an R Markdown document. Markdown is a simple formatting syntax for authoring HTML, PDF, …Run Code Online (Sandbox Code Playgroud) 我有以下数据框,我的目的是找到所有ID,具有不同的USAGE但相同的TYPE.
ID <- rep(1:4, each=3)
USAGE <- c("private","private","private","private",
"taxi","private","taxi","taxi","taxi","taxi","private","taxi")
TYPE <- c("VW","VW","VW","VW","MER","VW","VW","VW","VW","VW","VW","VW")
df <- data.frame(ID,USAGE,TYPE)
Run Code Online (Sandbox Code Playgroud)
如果我跑
df %>% group_by(ID, TYPE) %>% filter(n_distinct(USAGE)>1)
Run Code Online (Sandbox Code Playgroud)
我得到了预期的结果.但我的原始数据帧有> 2百万行.所以我想在运行此操作时使用所有内核.
我用multidplyr尝试了这段代码:
f1 <- partition(df, ID)
f2 <- f1 %>% group_by(ID, TYPE) %>% filter(n_distinct(USAGE)>1)
f3 <- collect(f2)
Run Code Online (Sandbox Code Playgroud)
但随后出现以下消息:
Warning message: group_indices_.grouped_df ignores extra arguments
Run Code Online (Sandbox Code Playgroud)
后
f1 <- partition(df, ID)
Run Code Online (Sandbox Code Playgroud)
和
Error in checkForRemoteErrors(lapply(cl, recvResult)) :
4 nodes produced errors; first error: Evaluation error: object 'f1' not found.
Run Code Online (Sandbox Code Playgroud)
后
f2 <- f1%>% group_by(ID, TYPE) %>% filter(f1, n_distinct(USAGE)>1)
Run Code Online (Sandbox Code Playgroud)
将整个操作实现到multidplyr的正确方法是什么?非常感谢.
我正在尝试将RStudio中的立陶宛语字符?????š?ž从.Rmd文件转换为pdf文件。编织成html可以正常工作并且ggplot标题具有立陶宛语字符时,编织成pdf时ggplot会创建警告并忽略这些字符。
可重现的示例:
---
title: "Untitled"
output:
pdf_document:
includes:
in_header: header_lt_text.txt
---
```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE)
library(ggplot2)
```
## Lithuanian char: ?????Š??ž?????š??ž
```{r}
ggplot(iris, aes(Sepal.Length, Sepal.Width))+
geom_point(aes(col=Species))+
labs(title="Lithuanian char: ?????Š??ž?????š??ž")
```
Run Code Online (Sandbox Code Playgroud)
我通过以下header_lt_text.txt参数传递:
\usepackage[utf8]{inputenc}
\usepackage[L7x]{fontenc}
\usepackage[lithuanian]{babel}
\usepackage{setspace}
\onehalfspacing
Run Code Online (Sandbox Code Playgroud)
关于如何ggplot创建正确标签的任何建议?
尽管以欧元和 PPS 为最低工资。该分组适用于以欧元为单位的值。一切正常,但我不明白如何在 x 轴上额外添加“组”。这是我的代码
library(eurostat)
library(tidyverse)
library(ggplot2)
dat_MW <- get_eurostat(id="earn_mw_cur", time_format="num")
dat_MW <- label_eurostat(dat_MW)
dat_MW_w <- dat_MW %>% filter(time==2017, currency %in% c("Euro","Purchasing Power Standard")) %>% arrange(currency, values)
dat_MW_w$geo[dat_MW_w$geo=="Germany (until 1990 former territory of the FRG)"] <- "Germany"
dat_MW_w$geo[dat_MW_w$geo=="Former Yugoslav Republic of Macedonia, the"] <- "Macedonia"
dat_MW_w$currency[dat_MW_w$currency=="Purchasing Power Standard"] <- "PPS"
dat_MW_w$currency[dat_MW_w$currency=="Euro"] <- "EUR"
dat_MW_w <- dat_MW_w %>%
mutate(group=ifelse(values<=500 & currency=="EUR","GROUP1",
ifelse(values<=1000 & currency=="EUR", "GROUP2",
ifelse(currency=="EUR","GROUP3", NA))))
figure1 <- ggplot(data=dat_MW_w, aes(x=reorder(geo, values), y=values, group=currency)) +
xlab("Countries") + ylab("EUR/PPS") + …Run Code Online (Sandbox Code Playgroud)