1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| df <- data.frame("C" = rep(c("C1"), 20),
"F" = c(rep(c("R"), 10), rep(c("C"), 10)),
"P" = c(rep(c("89"), 10), rep(c("110"), 10)),
"L" = c(rep(c("300"), 4), rep(c("30"), 6), rep(c("200"), 4), rep(c("20"), 6)),
"T" = c(rep(c(1, 2, 3, 4, 5, 6, 7, 8, 9, 10), 2)),
"Periode" = c(rep(c("2019-02-01"), 10), rep(c("2019-03-01"), 10)),
"M" = c(rep(c(1, 2, 3, 4, 5, 6, 7, 8, 9, 10), 2)), stringsAsFactors = FALSE)
df_T <- aggregate(T ~ Periode+F+P, df, FUN = sum)
df_L <- aggregate(L ~ Periode+F, df, FUN = min)
df_M <- aggregate(M ~ Periode+F, df, FUN = sum)
df_1 <- merge(df_T, df_L, by = c("Periode", "F"))
df_end <- merge(df_1, df_M, by = c("Periode", "F"))
df_end$Periode <- gsub(pattern = "-", replacement = "", x = str_extract(string = df_end$Periode, pattern = "-[0-9]+-"))
my_result <- reshape(data = df_end,
idvar = c("Periode"),
timevar = c("F"),
direction = "wide") |