学习小组Day6笔记--安之若素
2020-06-13 本文已影响0人
安之若素_9e53
R包与R的初步数据操作
- R包下载与加载
-
R包的获取
file.edit('~/.Rprofile') #生成R配置文件 options("repos" <- c(CRAN<-"https://mirrors.tuna.tsinghua.edu.cn/CRAN/")) # 配置CRAN镜像 options(BioC_mirror <- "https://mirrors.ustc.edu.cn/bioc/") # 配置BiocManager镜像
- 加载R包
library('package') #需要事先install R包 require('package') #不需要事先install R包
-
R包下载与加载
test <- iris[c(1:2,51:52,101:102),]
- mutate
mutate(.data <- test, new <- Sepal.Length * Sepal.Width) #生成新列new
- select
var <- c('Sepal.Length', 'Sepal.Width') select(.data <- test, one_of(var)) #筛选列
- filter
filter(test, Species %in% c("setosa","versicolor")) #筛选行
- arrange
arrange(test, Sepal.Length) #按指定列排序(默认升序) arrange(test, desc(Sepal.Length)) #降序排列
- group_by
group_by(.data <- test, Species) #将test按照Species进行分组
- summarise
summarise(group_by(.data <- test, Species), mean(Sepal.Length), sd(Sepal.Length)) #将test分组后计算均数和标准差
- %>%
test %>% group_by(Species) %>% summarise(mean(Sepal.Length), sd(Sepal.Length)) #管道传参,将结果传递给下一个函数作为第一个参数
- count
count(x <- test, Species) #计算非重复元素的个数
- join
inner_join(test1, test2, by = 'x') #按x列共有元素合并 left_join(test1, test2, by = 'x') #按左侧x列的元素合并 right_join(test1, test2, by = 'x') #按右侧x列的元素合并 full_join(test1, test2, by = 'x') #按x列所有元素合并 semi_join(test1, test2, by = 'x') #返回左侧x列在右侧具有的元素 anti_join(test1, test2, by = 'x') #返回左侧x列在右侧不具有的元素
- bind
bind_cols(test1, test3) #按列合并,需行数一致 bind_rows(test1, test2) #按行合并,需列数一致
-