fork download
  1. library(magrittr)
  2. tt <- outer(letters, letters, paste0) %>% as.vector
  3. input <- c(" aaba aa", " abbacazz ")
  4. print(input)
  5. # [1] " aaba aa" " abbacazz "
  6.  
  7. res <-
  8. matrix(NA_integer_, length(input), length(tt)) %>%
  9. set_colnames(tt) %>%
  10. set_rownames(input)
  11.  
  12. for (i in 1:length(tt)) {
  13. res[, i] <-
  14. gregexpr(tt[i], input) %>%
  15. sapply(., function(k) {
  16. if (k[1] == -1) {
  17. 0L
  18. } else {
  19. length(k)
  20. }
  21. })
  22. }
  23.  
  24. res[, 1:20]
  25. res[, c("ab", "ca", "az", "zz")]
  26.  
Success #stdin #stdout 0.32s 185920KB
stdin
Standard input is empty
stdout
[1] " aaba aa"   " abbacazz "
           aa ba ca da ea fa ga ha ia ja ka la ma na oa pa qa ra sa ta
 aaba aa    2  1  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0
 abbacazz   0  1  1  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0
           ab ca az zz
 aaba aa    1  0  0  0
 abbacazz   1  1  1  1