1) Manipulação de Dados

Carregamento e Manipulação dos Dados

# Criando um conjunto de dados simples sobre vendas
set.seed(123)
vendas_data <- data.frame(
  ID = 1:50,
  Produto = sample(c("Notebook", "Smartphone", "Tablet", "Monitor", "Teclado"), 50, replace = TRUE),
  Categoria = sample(c("Eletrônicos", "Informática", "Acessórios"), 50, replace = TRUE),
  Vendedor = sample(c("Ana", "Carlos", "Maria", "João", "Paula"), 50, replace = TRUE),
  Quantidade = sample(1:20, 50, replace = TRUE),
  Preco_Unitario = round(runif(50, 100, 2000), 2),
  Mes = sample(1:12, 50, replace = TRUE)
)

# Calculando o valor total de cada venda
vendas_data$Valor_Total <- vendas_data$Quantidade * vendas_data$Preco_Unitario

# Ordenando os dados pelo valor total (decrescente)
vendas_ordenadas <- vendas_data %>% 
  arrange(desc(Valor_Total))

# Filtrando apenas vendas acima de R$ 5.000
vendas_alta <- vendas_data %>% 
  filter(Valor_Total > 5000)

# Criando uma nova variável: Classificação de Valor
vendas_data$Classificacao <- ifelse(vendas_data$Valor_Total > 10000, "Alto",
                                   ifelse(vendas_data$Valor_Total > 5000, "Médio", "Baixo"))

# Agrupando por categoria e calculando estatísticas
resumo_categoria <- vendas_data %>% 
  group_by(Categoria) %>% 
  summarise(
    Total_Vendas = n(),
    Media_Valor = mean(Valor_Total),
    Soma_Total = sum(Valor_Total),
    Maior_Venda = max(Valor_Total)
  ) %>% 
  arrange(desc(Soma_Total))

Explicação dos Resultados

1. Criação do Dataset: - Foram gerados 50 registros de vendas com informações sobre produtos, categorias, vendedores, quantidades e preços.

2. Nova Variável - Valor Total: - Criada calculando Quantidade × Preço_Unitário para cada venda.

3. Ordenação: - Os dados foram ordenados pelo valor total em ordem decrescente para identificar as vendas mais valiosas.

4. Filtragem: - Foram filtradas apenas as vendas com valor total superior a R$ 5.000.

5. Classificação de Valor: - Criada uma nova variável categórica que classifica as vendas em “Alto”, “Médio” e “Baixo”.

6. Agrupamento por Categoria: - Calculadas estatísticas sumarizadas por categoria.

head(vendas_data)
##   ID    Produto   Categoria Vendedor Quantidade Preco_Unitario Mes Valor_Total
## 1  1     Tablet  Acessórios   Carlos          8        1501.82  10    12014.56
## 2  2     Tablet Eletrônicos     João         12        1684.70  10    20216.40
## 3  3 Smartphone  Acessórios     João          4         697.11   6     2788.44
## 4  4 Smartphone Informática      Ana         13        1035.88  12    13466.44
## 5  5     Tablet  Acessórios    Maria         14        1425.01   3    19950.14
## 6  6    Teclado Informática    Maria         16        1318.78   4    21100.48
##   Classificacao
## 1          Alto
## 2          Alto
## 3         Baixo
## 4          Alto
## 5          Alto
## 6          Alto

2) Tabela Interativa com DT

# Criando tabela interativa com funcionalidades de ordenação, busca e paginação
datatable(
  vendas_data,
  options = list(
    pageLength = 10,
    lengthMenu = c(5, 10, 15, 20),
    searching = TRUE,
    ordering = TRUE,
    autoWidth = TRUE
  ),
  caption = "Tabela Interativa de Vendas",
  filter = 'top',
  class = 'display'
)

3) Equações Complexas em LaTeX

Equação 1: Teorema de Bayes

\[ P(A|B) = \frac{P(B|A) \cdot P(A)}{P(B)} \]

Significado: Esta equação fundamental da teoria das probabilidades descreve como atualizar a probabilidade de uma hipótese (A) dado uma nova evidência (B).

Equação 2: Regressão Linear Múltipla

\[ Y = \beta_0 + \beta_1X_1 + \beta_2X_2 + \cdots + \beta_pX_p + \epsilon \]

Significado: Modela a relação entre uma variável dependente Y e múltiplas variáveis independentes X.

Equação 3: Função de Perda de Entropia Cruzada

\[ L = -\frac{1}{N}\sum_{i=1}^{N}\sum_{j=1}^{C}y_{ij}\log(\hat{y}_{ij}) \]

Significado: Utilizada em problemas de classificação multiclasse, mede a dissimilaridade entre distribuições.

Equação 4: Decomposição em Valores Singulares (SVD)

\[ A = U\Sigma V^T \]

Significado: Fatora uma matriz qualquer A em três matrizes. Fundamental para PCA.

Equação 5: Gradiente Descendente

\[ \theta_{t+1} = \theta_t - \eta \cdot \nabla J(\theta_t) \]

Significado: Algoritmo de otimização iterativo para encontrar mínimos de funções.

4) Figuras de Ciência de Dados

# Figura 1: Distribuição de Vendas por Categoria
p1 <- ggplot(vendas_data, aes(x = Categoria, y = Valor_Total, fill = Categoria)) +
  geom_boxplot() +
  geom_jitter(alpha = 0.6, width = 0.2) +
  labs(title = "Distribuição do Valor Total de Vendas por Categoria",
       x = "Categoria",
       y = "Valor Total (R$)") +
  theme_minimal()

# Figura 2: Série Temporal de Vendas por Mês
vendas_mensais <- vendas_data %>% 
  group_by(Mes) %>% 
  summarise(Total_Vendas = sum(Valor_Total))

p2 <- ggplot(vendas_mensais, aes(x = Mes, y = Total_Vendas)) +
  geom_line(color = "steelblue", size = 1.5) +
  geom_point(color = "darkred", size = 3) +
  labs(title = "Evolução das Vendas ao Longo dos Meses",
       x = "Mês",
       y = "Total de Vendas (R$)") +
  theme_minimal() +
  scale_x_continuous(breaks = 1:12)

# Exibindo as figuras lado a lado
library(gridExtra)
grid.arrange(p1, p2, ncol = 2)

5) Referências Bibliográficas

  1. James, G., Witten, D., Hastie, T., & Tibshirani, R. (2021). An Introduction to Statistical Learning with Applications in R. Springer.

  2. Géron, A. (2022). Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow. O’Reilly Media.

  3. Wickham, H., & Grolemund, G. (2016). R for Data Science: Import, Tidy, Transform, Visualize, and Model Data. O’Reilly Media.

  4. Bishop, C. M. (2006). Pattern Recognition and Machine Learning. Springer.

  5. Shalev-Shwartz, S., & Ben-David, S. (2014). Understanding Machine Learning: From Theory to Algorithms. Cambridge University Press.