setwd("C:/Users/ProBook/OneDrive/Desktop/")
load("data_parcial_1_2021.RData")

#El dataframe ventas, contiene los datos de venta para una empresa de artículos de oficina, con operaciones en Estados Unidos, para los años de 2015-2018.

A partir de esos datos, resuelva lo siguiente:

Cree una función, que permita obtener las ventas anuales, trimestrales o mensuales, según se indique en el argumento, dichas ventas podrán ser totales, o por segmento de mercado.

Con la implementación de dicha función muestre:

Las ventas totales trimestrales, para todos los segmentos.

Las ventas totales anuales para el segmento corporativo.

Las ventas totales mensuales para el segmento consumidor.

library(dplyr)
## 
## Adjuntando el paquete: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
data_ventas <- function(periodo = "anual", segmento = NULL, anuales = NULL,  trimestreles = NULL, mensuales = NULL) {
  
  dataventas %>%
    filter(
      if (!is.null(segmento)) Segmento == segmento else TRUE,
      if (!is.null(anual)) anio == año else TRUE,
      if (!is.null(trimestal)) trimestreles == trimestre else TRUE,
      if (!is.null(mensual)) mes == mes else TRUE
    ) %>%
    group_by(across(case_when(
      anua == "anual" ~ "anio",
      trimest == "trimestral" ~ c("anio", "trimestre"),
      mes == "mensual" ~ c("anio", "mes"),
      TRUE ~ stop("Periodo no válido")
    ))) %>%
    summarise(ventas_Netas = sum(Sales)) %>%
    arrange(across(everything())) %>%
    as.data.frame()
}
library(dplyr)
ventas %>%
  print() 
## # A tibble: 9,800 × 9
##     anio   mes trimestre `Order ID`     `Customer ID` Segment   State dias.envio
##    <dbl> <dbl>     <dbl> <chr>          <chr>         <chr>     <chr>      <dbl>
##  1  2017    11         4 CA-2017-152156 CG-12520      Consumer  Kent…          3
##  2  2017    11         4 CA-2017-152156 CG-12520      Consumer  Kent…          3
##  3  2017     6         2 CA-2017-138688 DV-13045      Corporate Cali…          4
##  4  2016    10         4 US-2016-108966 SO-20335      Consumer  Flor…          7
##  5  2016    10         4 US-2016-108966 SO-20335      Consumer  Flor…          7
##  6  2015     6         2 CA-2015-115812 BH-11710      Consumer  Cali…          5
##  7  2015     6         2 CA-2015-115812 BH-11710      Consumer  Cali…          5
##  8  2015     6         2 CA-2015-115812 BH-11710      Consumer  Cali…          5
##  9  2015     6         2 CA-2015-115812 BH-11710      Consumer  Cali…          5
## 10  2015     6         2 CA-2015-115812 BH-11710      Consumer  Cali…          5
## # ℹ 9,790 more rows
## # ℹ 1 more variable: Sales <dbl>
library(dplyr)

ventas_anual <- ventas %>%
  group_by(anio) %>%
  summarise(ventas_anuales = sum(Sales)) %>%
  arrange(anio) %>%
  as.data.frame() %>%
  print() 
##   anio ventas_anuales
## 1 2015       479856.2
## 2 2016       459436.0
## 3 2017       600192.6
## 4 2018       722052.0
library(dplyr)

ventas_mensuales <- ventas %>%
  group_by(anio, mes) %>%
  summarise(ventas_mensuales = sum(Sales)) %>%
  arrange(anio, mes) %>%
  as.data.frame() %>%
  print() 
## `summarise()` has grouped output by 'anio'. You can override using the
## `.groups` argument.
##    anio mes ventas_mensuales
## 1  2015   1        14205.707
## 2  2015   2         4519.892
## 3  2015   3        55205.797
## 4  2015   4        27906.855
## 5  2015   5        23644.303
## 6  2015   6        34322.936
## 7  2015   7        33781.543
## 8  2015   8        27117.536
## 9  2015   9        81623.527
## 10 2015  10        31453.393
## 11 2015  11        77907.661
## 12 2015  12        68167.058
## 13 2016   1        18066.958
## 14 2016   2        11951.411
## 15 2016   3        32339.318
## 16 2016   4        34154.469
## 17 2016   5        29959.531
## 18 2016   6        23599.374
## 19 2016   7        28608.259
## 20 2016   8        36818.342
## 21 2016   9        63133.606
## 22 2016  10        31011.737
## 23 2016  11        75249.399
## 24 2016  12        74543.601
## 25 2017   1        18542.491
## 26 2017   2        22978.815
## 27 2017   3        51165.059
## 28 2017   4        38679.767
## 29 2017   5        56656.908
## 30 2017   6        39724.486
## 31 2017   7        38320.783
## 32 2017   8        30542.200
## 33 2017   9        69193.391
## 34 2017  10        59583.033
## 35 2017  11        79066.496
## 36 2017  12        95739.121
## 37 2018   1        43476.474
## 38 2018   2        19920.997
## 39 2018   3        58863.413
## 40 2018   4        35541.910
## 41 2018   5        43825.982
## 42 2018   6        48190.728
## 43 2018   7        44825.104
## 44 2018   8        62837.848
## 45 2018   9        86152.888
## 46 2018  10        77448.131
## 47 2018  11       117938.155
## 48 2018  12        83030.389