数据框的创建,mutate的使用
library(dplyr)
test <- iris[c(1:2,51:52,101:102),] #
class(test) #test为数据框
mutate()函数
mutate(test, new = Sepal.Length * Sepal.Width) #新增new的列,内容为Sepal.Length 的值和Sepal.Width的值
数据框的索引
1.按列的顺序筛选
select(test,1) #提取第一列
test[,1] #提取第一列
test$1
select(test,c(1,5)) #提取1,和5列
2.按列的名字筛选
select(test, Petal.Length, Petal.Width) #选择
vars <- c("Petal.Length", "Petal.Width") #将vars赋值
select(test, one_of(vars)) #提取vars包含向量的值
3.数据框的筛选(用于筛选logFC和p值的)
filter(test, Species == "setosa") #test数据框中 species列中等于"setosa"的行
filter(test, Species == "setosa"&Sepal.Length > 5 ) #筛选species列中等于"setosa"的值的行,且Sepal.Length > 5
filter(test, Species %in% c("setosa","versicolor")) #筛选species既有
setosa,versicolor的值
4.数据框的排序
arrange(test, Sepal.Length)
5.数据框的汇总处理
group_by(test, Species)#按照species进行分组
summarise(group_by(test, Species),mean(Sepal.Length), sd(Sepal.Length))
#按照分组来计算sepal.length 平均值speal.length的标准差
count(test,Species) #统计每个重复变量的个数
管道操作(类似ggplot中的叠加图层)
test %>%
group_by(Species) %>%
summarise(mean(Sepal.Length), sd(Sepal.Length))
6数据框的合并
bind_rows(test1, test2)(需要列数相同)
bind_cols(test1, test2) (需要行数相同)