celestialgod

move to left version 2

Sep 12th, 2015
240
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
R 0.85 KB | None | 0 0
  1. library(data.table)
  2. library(plyr)
  3. library(dplyr)
  4. library(magrittr)
  5.  
  6. dt = fread('No, A, B, C, D, E, F, G
  7. 1, 1, 3, 0, 0, 4, 2, 1
  8. 2, 1, 0, 0, 0, 2, 0, 3
  9. 3, 0, 1, 0, 3, 0, 0, 0
  10. 4, 1, 3, 2, 1, 0, 0, 0
  11. 5, 0, 6, 0, 0, 0, 0, 0
  12. 6, 0, 0, 0, 0, 2, 2, 1
  13. ')
  14. old_names = names(dt)
  15. dt %<>% setnames(paste0("V", 1:ncol(dt)))
  16. txt = dt %>% mutate_(Vcobime = paste0("paste(", paste0("V", 1:ncol(dt),
  17.   collapse = ","), ", sep = \",\")")) %>% .$Vcobime %>% {gsub("0", "", .)}
  18. tmp = gsub(",$", "", gsub("([^,]+)(,+)", "\\1,", txt))
  19. maxNumComma = nchar(txt) - nchar(gsub(",", "", txt))
  20. numCommaEach = nchar(tmp) - nchar(gsub(",", "", tmp))
  21. txt = sapply(maxNumComma - numCommaEach, function(x){
  22.   if (x > 0)
  23.     return(paste0(rep(",", x), 0, collapse=""))
  24.   else
  25.     return("")
  26. }) %>% paste0(tmp, .)
  27. dt = fread(paste(txt, collapse = "\n")) %>% setnames(old_names)
Advertisement
Add Comment
Please, Sign In to add comment