Exercício – Executar a regressão linear com o NumPy
Os gráficos de dispersão oferecem um meio útil para a visualização de dados, mas suponha que você queira sobrepor o gráfico de dispersão com uma linha de tendência que mostra a tendência dos dados ao longo do tempo. Uma maneira de calcular essas linhas de tendência é a regressão linear. Neste exercício, você usará o NumPy para executar uma regressão linear e o Matplotlib para desenhar uma linha de tendência dos dados.
Coloque o cursor na célula vazia na parte inferior do notebook. Altere o tipo de célula para Markdown e insira "Executar regressão linear" como o texto.
Adicione uma célula de Código e cole o código a seguir. Reserve alguns instantes para ler os comentários (as linhas que começam com o sinal #) para entender o que o código está fazendo.
# Creates a linear regression from the data points m,b = np.polyfit(yearsBase, meanBase, 1) # This is a simple y = mx + b line function def f(x): return m*x + b # This generates the same scatter plot as before, but adds a line plot using the function above plt.scatter(yearsBase, meanBase) plt.plot(yearsBase, f(yearsBase)) plt.title('scatter plot of mean temp difference vs year') plt.xlabel('years', fontsize=12) plt.ylabel('mean temp difference', fontsize=12) plt.show() # Prints text to the screen showing the computed values of m and b print(' y = {0} * x + {1}'.format(m, b)) plt.show()
Agora, execute a célula para exibir um gráfico de dispersão com uma linha de regressão.
Gráfico de dispersão com linha de regressão
Na linha de regressão, você pode ver que a diferença entre as temperaturas médias de 30 anos e as temperaturas médias de 5 anos está aumentando ao longo do tempo. A maior parte do trabalho computacional necessário para gerar a linha de regressão foi feita pela função polyfit
do NumPy, que calculou os valores m
e b
na equação y = mx + b.