我的问题涉及在数据框的多个列中汇总值,并使用创建与此求和相对应的新列dplyr.列中的数据条目是二进制(0,1).我正在考虑一个行summarise_each或类的mutate_each函数dplyr.以下是数据框的最小示例:
library(dplyr)
df=data.frame(
x1=c(1,0,0,NA,0,1,1,NA,0,1),
x2=c(1,1,NA,1,1,0,NA,NA,0,1),
x3=c(0,1,0,1,1,0,NA,NA,0,1),
x4=c(1,0,NA,1,0,0,NA,0,0,1),
x5=c(1,1,NA,1,1,1,NA,1,0,1))
> df
x1 x2 x3 x4 x5
1 1 1 0 1 1
2 0 1 1 0 1
3 0 NA 0 NA NA
4 NA 1 1 1 1
5 0 1 1 0 1
6 1 0 0 0 1
7 1 NA NA NA NA
8 NA NA NA 0 1
9 0 0 0 0 0
10 1 1 …Run Code Online (Sandbox Code Playgroud) 我的问题是如何创建一个新列,它是dplyr中某些特定列(由其名称选择)的总和.例如,使用iris数据集,我创建一个名为Petal的新列,它是Petal.Length和Petal.Width的总和.
iris %>% mutate(Petal = Petal.Length+Petal.Width)
Run Code Online (Sandbox Code Playgroud)
现在假设我有一个20列的数据集,其名称中包含'Petal'.我想创建一个"Petal"列,它总结了所有这些列.我绝对不想在我的代码中键入所有列名称.感觉在dplyr中应该有一行代码可以实现.感谢是否有人可以提供帮助.