逐行获取计数并将结果添加为新列

时间:2015-05-21 08:24:34

标签: r

我有这个R数据框:

v1 <- LETTERS[1:10]
v2 <- LETTERS[1:4]
v3 <- LETTERS[4:5]
dat <- data.frame(cbind(v1,v2,v3))

v1 v2 v3
A  A  D
B  B  E
C  C  D
D  D  E
E  A  D
F  B  E
G  C  D
H  D  E
I  A  D
J  B  E

我想得到每列的给定值(例如“A”)的出现次数, 并将其保存为我的数据框中的新列。 我的数据帧我想计算v1到v3列中出现的“A”,并创建一个新的列(CountA),计数为A.

我想要的输出是:

v1 v2 v3  CountA
A  A  D   2
B  B  E   0
C  C  D   0
D  D  E   0
E  A  D   1
F  B  E   0
G  C  D   0
H  D  E   0
I  A  D   1
J  B  E   0

1 个答案:

答案 0 :(得分:2)

试试这个:

dat$CountA <- rowSums(dat=="A")