【发布时间】:2016-09-25 12:29:20
【问题描述】:
我在 R 中的数据集是这样的
Id Gender Age Participate Q1 Q10 Q2 Q3 Q4
* <int> <chr> <int> <int> <chr> <chr> <chr> <chr> <chr>
1 16 Male 20 1 0 1 0 1 1
2 17 Male 40 1 1 0 0 0 0
3 18 Male 33 1 1 0 0 0 0
4 19 Male 18 1 1 0 0 0 0
5 20 Male 24 1 0 0 1 0 0
6 21 Female 42 1 0 0 1 0 0
7 22 Female 19 1 1 0 0 1 1
8 28 Female 49 1 0 1 1 0 0
9 29 Female 17 1 1 0 1 0 0
10 31 Male 18 1 1 0 1 0 0
我想将 Q1 - Q10 中的数字相加来创建一个分数。我怎样才能做到这一点? 谢谢
【问题讨论】:
-
只需使用
df1$Total <- rowSums(df1[6:10])或dplyrdf1 %>% mutate(Total = rowSums(.[grep("^Q\\d+", names(.))]))根据列类型,您需要将character类转换为numeric和as.numeric
标签: r