tidyverse进阶(2)
Rmarkdown中输出中文pdf的格式设置
该模板在Rstudio中可以直接找到。
title: "tidyverse进阶(2)" author: - 逐禅 documentclass: ctexart keywords: - 中文 - R Markdown output: rticles::ctex: fig_caption: yes number_sections: yes toc: yes
根据名字特征选取变量的方式
library(tidyverse)
df <- tibble(
grp = rep(c("a", "b"), each = 5),
x = c(rnorm(5, -0.25, 1), rnorm(5, 0, 1.5)),
y = c(rnorm(5, 0.25, 1), rnorm(5, 0, 0.5))
)
df
df %>% select(starts_with("x"))
df %>% select(ends_with("x"))
df %>% select(contains("x"))
df %>% select(where(is.character))
df %>% select(where(is.numeric))
df %>% select(!where(is.character))
df %>% select(where(is.numeric)&starts_with("x"))
vars <- c("x","y","z")
dff <- tibble(
x=c("a","b","c"),
y=c("1,2,3")
)
#df %>% select(all_of(vars)) #all_of要满足df有vars中所有变量才能成功
dff %>% select(any_of(vars)) # any_of只需要df中存在一个vars中的变量就可以
重命名某列
df %>% rename(my=x) #直接对某列进行命名
df %>% rename_with(toupper) # 将所有列名转换为大写
df %>% rename_with(toupper,is.numeric) #将所有数值型变量转换为大写
df %>% rename_with(toupper,starts_with("x"))
调整列的位置
对于行变量的排序,可以使用'arrange()'函数
df %>% arrange(desc(abs(y))) #按x绝对值降序排序
如果想让group列放在x列的后面
df %>% select(x,grp,y) #直接把顺序写出来,但是对于变量比较多的时候比较麻烦
因此考虑使用'relocate()'函数,表示将选择的列(第一个参数)移动到某列之前或之后(.after或.before表示的变量)
df %>% relocate(grp,.after=y) # 将grp变量移动到变量y之后
df %>% relocate(x,.before=grp) # 将x变量移动到grp变量之前
df %>% relocate(grp,.after=last_col()) # 将grp变量移动到最后一列
后记
在Rmarkdown输出中文PDF的设置上,感觉还是不太懂,里面涉及了一些基础的LATEX语法,和设置,看来还是需要去熟悉一下LATEX基本的一些操作。这里附上我找到的一些LATEX资料
LATEX基础手册[1]
latex入门手册[2]
LATEX模板[3]
在线使用LATEX的网站[4]
在线使用LATEX的网站2[5]
超好用的LATEX在线平台[6]
国内的LATEX模板[7]
LATEX资源[8]
写的好的博客[9]
latex公式[10]
部分内容参考了知乎[11]
参考资料
[1]LATEX基础手册: https://albertyzp.github.io/2019/10/15/LaTex%E5%9F%BA%E7%A1%80%E6%89%8B%E5%86%8C/
[2]latex入门手册: https://ctan.math.utah.edu/ctan/tex-archive/info/lshort/chinese/lshort-zh-cn.pdf
[3]LATEX模板: https://cn.overleaf.com/latex/templates
[4]在线使用LATEX的网站Overleaf: https://www.overleaf.com/learn
[5]国内LATEX在线编辑: https://www.texpage.com/
[6]超好用的LATEX线上平台: https://www.slager.link/#/home
[7]国内的latex模板: https://www.latexstudio.net/category/5.html
[8]amsmath包手册翻译: [https://www.latexstudio.net/archives/51581.html
[9]LATEX博客: https://blog.csdn.net/u010440456/article/details/89787326
[10]LATEXg公式编辑: https://www.latexlive.com/
[11]知乎LATEX资源推荐: https://zhuanlan.zhihu.com/p/555868537