<jupyter_start><jupyter_text>**Enunciado:** Usando técnicas de Visualização de Dados, construa um gráfico a partir dos seguintes dados:<jupyter_code>import pandas as pd
import matplotlib.pyplot as plt
index = ['Recebidos', 'Processados']
colunas = ['Janeiro', 'Fevereiro', 'Março', 'Abril', 'Maio', 'Junho', 'Julho', 'Agosto', 'Setembro', 'Outubro', 'Novembro', 'Dezembro']
dados = [[160, 184, 241, 149, 180, 161, 132, 202, 160, 139, 149, 177], [160, 186, 237, 148, 181, 150, 123, 156, 126, 104, 124, 140]]
base = pd.DataFrame(data = dados, index = index, columns = colunas)
base
base.transpose().plot(kind = 'bar')
plt.show()<jupyter_output><empty_output><jupyter_text>**Enunciado:** Usando os dados temporais disponível no link a seguir sobre vendas de medicamentos na Austrália, que tipo de conclusões podemos obter?<jupyter_code>#!pip install pmdarima
from pmdarima.arima import auto_arima
from datetime import datetime
from statsmodels.tsa.seasonal import seasonal_decompose
from statsmodels.tsa.arima_model import ARIMA
from pandas.plotting import register_matplotlib_converters
register_matplotlib_converters()
base2 = pd.read_csv('https://raw.githubusercontent.com/bapimentel/Ciencia-de-Dados/master/Dados/Drugs.csv')
base2
base2.dtypes
#Conversão dos atributos em string para o formato de data: ANO-MÊS-DIA
dateparse = lambda dates: datetime.strptime(dates, '%Y-%m-%d')
base2 = pd.read_csv('https://raw.githubusercontent.com/bapimentel/Ciencia-de-Dados/master/Dados/Drugs.csv', parse_dates = ['date'], index_col = 'date', date_parser = dateparse)
base2
base2.index
serieTemporal = base2['value']
serieTemporal
#Valor máximo
serieTemporal.index.max()
#Valor mínimo
serieTemporal.index.min()
#Visualização da série temporal completa
plt.plot(serieTemporal)
plt.title('Série Temporal')
plt.show()
#Visualização por ano
serieT_ano = serieTemporal.resample('A').sum()
plt.plot(serieT_ano)
plt.title('Série Temporal por Ano')
plt.ylabel('Vendas')
plt.show()
serieT_ano
#Visualização por mês
serieT_mes = serieTemporal.groupby([lambda x: x.month]).sum()
plt.plot(serieT_mes)
plt.title('Série Temporal por Mês')
plt.ylabel('Vendas')
plt.show()
serieT_mes
#Visualização entre datas específicas
serieT_datas = serieTemporal['1991-01-01':'1998-05-20']
plt.plot(serieT_datas)
plt.show()
#Decomposição da série temporal, criando uma variável para cada formato
decomposicao = seasonal_decompose(serieTemporal)
#Tendência
tendencia = decomposicao.trend
tendencia
#Sazonalidade
sazonal = decomposicao.seasonal
sazonal
#Resíduos (dados que não fizeram parte da sazonalidade e nem da frequência, observações que não conseguem ser explicadas matematicamente)
residuos = decomposicao.resid
residuos
#Visualização de gráfico para cada formato da série temporal
plt.plot(sazonal)
plt.title('Sazonalidade')
plt.show()
plt.plot(tendencia)
plt.title('Tendência')
plt.show()
plt.plot(residuos)
plt.title('Resíduos')
plt.show()
plt.subplot(4, 1, 1)
plt.plot(serieTemporal, label = 'Original')
plt.legend(loc = 'best')

plt.subplot(4, 1, 2)
plt.plot(tendencia, label = 'Tendência')
plt.legend(loc = 'best')

plt.subplot(4, 1, 3)
plt.plot(sazonal, label = 'Sazonalidade')
plt.legend(loc = 'best')

plt.subplot(4, 1, 4)
plt.plot(residuos, label = 'Resíduos')
plt.legend(loc = 'best')
plt.plot()
plt.tight_layout()
#Implementação do autoarima para descoberta automática dos melhores parâmetros
modelo_auto = auto_arima(serieTemporal, m = 12, seasonal = True, trace = False)
modelo_auto.summary()
proximos_12 = modelo_auto.predict(n_periods = 12)
proximos_12<jupyter_output><empty_output>
{'fraction_non_alphanumeric': 0.1279102384291725, 'fraction_numerical': 0.03225806451612903, 'mean_word_length': 6.837362637362637, 'pattern_counts': {'":': 0, '<': 9, '<?xml version=': 0, '>': 9, 'https://': 2, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 2, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'chain_length': '2', 'dir': 'jupyter-structured-clean-dedup', 'id': '291269', 'license': 'MIT', 'n_tokens_mistral': 1502, 'n_tokens_neox': 1343, 'n_words': 318, 'path': 'lista2/respostas_lista2.ipynb', 'repo_name': 'audreyemmely/ciencia-de-dados', 'size': '3565'}