Advertisement
Guest User

Untitled

a guest
Feb 21st, 2019
87
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.42 KB | None | 0 0
  1. aggregate(data, list(data$colID), sum)
  2. Error in Summary.factor(c(1L, 1L), na.rm = FALSE) :
  3. sum not meaningful for factors
  4.  
  5. data$colID<-as.character(data$colID)
  6.  
  7. aggregate(data, list(data$colID), sum)
  8. Error in FUN(X[[1L]], ...) : invalid 'type' (character) of argument
  9.  
  10. ddply I get a similar error.
  11. Error in FUN(X[[1L]], ...) :
  12. only defined on a data frame with all numeric variables
  13.  
  14. dput(data)
  15. structure(list(colID = structure(c(1L, 1L, 1L, 2L, 2L), .Label = c("a",
  16. "b"), class = "factor"), col1 = c(1, 0, 0, 0, 2), col2 = c(0,
  17. 1, 0, 2, 0), col3 = c(0, 0, 1, 0, 0), col4 = c(5, 5, 5, 7, 7)), .Names = c("colID",
  18. "col1", "col2", "col3", "col4"), row.names = c(NA, -5L), class = "data.frame")
  19.  
  20. aggregate(x = DF[, -1], by = list(DF$colID), FUN = "sum")
  21.  
  22. ddply(DF, .(colID), numcolwise(sum))
  23.  
  24. colID col1 col2 col3 col4
  25. 1 a 1 1 1 15
  26. 2 b 2 2 0 14
  27.  
  28. acast( melt(DF), variable ~ colID, sum) # a matrix
  29. dcast( melt(DF), variable ~ colID, sum) # a data.frame
  30.  
  31. Using colID as id variables
  32. a b
  33. col1 1 2
  34. col2 1 2
  35. col3 1 0
  36. col4 15 14
  37.  
  38. Sums <- ddply(DF[, -5], .(colID), numcolwise(sum))
  39. Mean <- ddply(DF[, c(1,5)], .(colID), numcolwise(mean))[,-1]
  40. cbind(Sums, col4_mean=Mean)
  41. colID col1 col2 col3 col4_mean
  42. 1 a 1 1 1 5
  43. 2 b 2 2 0 7
  44.  
  45. library(reshape2)
  46. melted_data <- melt(df, id.vars = "colID")
  47. dcast(melted_data, colID ~ variable, sum)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement