Advertisement
Guest User

Untitled

a guest
Mar 30th, 2015
189
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.91 KB | None | 0 0
  1. df2 <- df1[Reduce(`&`,lapply(df1[paste0('year',1:4)],
  2. function(x) !x %in% c('B', 'C', 'D', 'U'))),]
  3. df2
  4. # year1 year2 year3 year4 signup_date
  5. #5 8/3/08
  6. #6 A 4/6/07
  7.  
  8. df1 <- structure(list(year1 = c("B", "C", "U", "B", "", "A"),
  9. year2 = c("U",
  10. "D", "C", "", "", ""), year3 = c("C", "B", "D", "", "", ""),
  11. year4 = c("D", "U", "U", "", "", ""), signup_date = c("4/10/12",
  12. "2/12/12", "3/14/05", "3/7/05", "8/3/08", "4/6/07")),
  13. .Names = c("year1",
  14. "year2", "year3", "year4", "signup_date"), class = "data.frame",
  15. row.names = c(NA, -6L))
  16.  
  17. library(dplyr)
  18. filterVars <- c("B","C","D","U")
  19. df %>%
  20. filter(!year1 %in% filterVars, !year2 %in% filterVars, !year3 %in% filterVars, !year4 %in% filterVars) %>%
  21. arrange(desc(signup_date))
  22.  
  23. year1 year2 year3 year4 signup_date
  24. 1 <NA> <NA> <NA> <NA> 8/3/08
  25. 2 A <NA> <NA> <NA> 4/6/07
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement