Pastebin launched a little side project called VERYVIRAL.com, check it out ;-) Want more features on Pastebin? Sign Up, it's FREE!
Guest

Untitled

By: a guest on Mar 7th, 2012  |  syntax: None  |  size: 0.92 KB  |  views: 25  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. > data <- data.frame(ID = rep("K", 6), Type = c(rep("A", 3), rep("B", 3)),
  2. +              
  3. +               X = c(NA,NA,1,2,3,4), Y = 5:10, Z = c(NA,11,12,NA,14,NA))
  4. >
  5. > data
  6.   ID Type  X  Y  Z
  7. 1  K    A NA  5 NA
  8. 2  K    A NA  6 11
  9. 3  K    A  1  7 12
  10. 4  K    B  2  8 NA
  11. 5  K    B  3  9 14
  12. 6  K    B  4 10 NA
  13. >
  14. > data <- reshape_long(data, identifiers = c("ID", "Type"))
  15. >
  16. > data
  17.    ID Type name value
  18. 3   K    A    X     1
  19. 4   K    B    X     2
  20. 5   K    B    X     3
  21. 6   K    B    X     4
  22. 7   K    A    Y     5
  23. 8   K    A    Y     6
  24. 9   K    A    Y     7
  25. 10  K    B    Y     8
  26. 11  K    B    Y     9
  27. 12  K    B    Y    10
  28. 14  K    A    Z    11
  29. 15  K    A    Z    12
  30. 17  K    B    Z    14
  31. >
  32. > reshape_wide(data, identifiers = c("ID", "Type"), name="name")
  33.   ID Type  X  Y  Z
  34. 1  K    A  1  5 11
  35. 2  K    A NA  6 12
  36. 3  K    A NA  7 NA
  37. 4  K    B  2 NA NA
  38. 5  K    B  3 NA 14
  39. 6  K    B  4  8 NA
  40. 7  K    B NA  9 NA
  41. 8  K    B NA 10 NA