Guest User

Untitled

a guest
Jul 20th, 2018
64
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.40 KB | None | 0 0
  1. l.df <- lapply(ls(), function(x) if (class(get(x)) == "data.frame") get(x))
  2.  
  3. library(dplyr);
  4. file_names <- dir() # Location of individual sales files
  5. agg_df <- do.call(rbind,lapply(file_names,read.csv))
  6.  
  7. # Median sale per Article ID
  8. agg_df = agg_df %>% group_by(ArticleID) %>%
  9. mutate(mSlByArtId = median(AmountSold));
  10.  
  11. # Median sale per Shop ID
  12. agg_df = agg_df %>% group_by(ShopID) %>%
  13. mutate(mSlByShpId = median(AmountSold));
  14.  
  15. dl <- list()
  16. dl[[1]] <- data.frame(
  17. shopId = rep(1:4, each = 2),
  18. ArticleId = c(1, 1, 3, 2, 3, 2, 1, 2),
  19. date = 1:8,
  20. AmountSoled = 5
  21. )
  22.  
  23. dl[[2]] <- data.frame(
  24. shopId = rep(1:4, each = 2),
  25. ArticleId = c(2, 1, 3, 2, 4, 4, 3, 1),
  26. date = 1:8,
  27. AmountSoled = 5
  28. )
  29.  
  30.  
  31. # dl
  32. # [[1]]
  33. # shopId ArticleId date AmountSoled
  34. # 1 1 1 1 5
  35. # 2 1 1 2 5
  36. # 3 2 3 3 5
  37. # 4 2 2 4 5
  38. # 5 3 3 5 5
  39. # 6 3 2 6 5
  40. # 7 4 1 7 5
  41. # 8 4 2 8 5
  42. #
  43. # [[2]]
  44. # shopId ArticleId date AmountSoled
  45. # 1 1 2 1 5
  46. # 2 1 1 2 5
  47. # 3 2 3 3 5
  48. # 4 2 2 4 5
  49. # 5 3 4 5 5
  50. # 6 3 4 6 5
  51. # 7 4 3 7 5
  52. # 8 4 1 8 5
  53.  
  54.  
  55. df <- do.call(rbind, dl)
  56. df
  57. # shopId ArticleId date AmountSoled
  58. # 1 1 1 1 5
  59. # 2 1 1 2 5
  60. # 3 2 3 3 5
  61. # 4 2 2 4 5
  62. # 5 3 3 5 5
  63. # 6 3 2 6 5
  64. # 7 4 1 7 5
  65. # 8 4 2 8 5
  66. # 9 1 2 1 5
  67. # 10 1 1 2 5
  68. # 11 2 3 3 5
  69. # 12 2 2 4 5
  70. # 13 3 4 5 5
  71. # 14 3 4 6 5
  72. # 15 4 3 7 5
  73. # 16 4 1 8 5
  74.  
  75. aggregate(df, by = list(df$shopId), mean)
  76. # Group.1 shopId ArticleId date AmountSoled
  77. # 1 1 1 1.25 1.5 5
  78. # 2 2 2 2.50 3.5 5
  79. # 3 3 3 3.25 5.5 5
  80. # 4 4 4 1.75 7.5 5
Add Comment
Please, Sign In to add comment