减少R中的步骤

时间:2018-06-07 23:15:42

标签: r loops

我有以下数据集

subject     stim          TRBV    
   <chr>    <chr>      <chr>   
 1 HAT-19   (2) 1100-2 TRBV20-1
 2 DL (HC2) (2) 1100-2 TRBV6-1 
 3 MB (HC1) (3) BSV18  TRBV20-1
 4 HAT-19   (2) 1100-2 TRBV7-6 
 5 HAT-001  (2) 1100-2 TRBV15  
 6 HAT-001  (3) BSV18  TRBV6-2 
 7 HAT-19   (2) 1100-2 TRBV6-4 
 8 HAT-001  (3) BSV18  TRBV20-1
 9 MB (HC1) (2) 1100-2 TRBV20-1
10 HAT-001  (2) 1100-2 TRBV6-4 

我想知道我为某些“主题”和“Stim”获得某个“TR​​BV”值的次数

例如,如果Subject =“HAT-19”且stim =“(2)1100-2”且TRBV =“TRBV20-1”,我执行了以下操作:

x <- my_data[which (my_data$subject == "HAT-19" & my_data$stim == "(2) 1100-2" & my_data$TRBV == "TRBV20-1"),]

y<-x$TRBV
z<-length(y)

这很有效。但是对所有主题做所有这些步骤变得非常单调。如何缩短步骤?

1 个答案:

答案 0 :(得分:0)

如果我理解正确,我认为您应该可以使用dplyr这样做:

count(my_data, subject, stim, TRBV)

有关详细信息,请参阅https://dplyr.tidyverse.org/reference/tally.html