In [ ]:
import numpy as np
import matplotlib.pyplot as plt
In [ ]:
# O arquivo de dados é um txt no qual cada linha
# contém dois números, separados por vírgula.
# A primeira coluna representa x e a segunda coluna y
fname = 'data1.txt'
data = np.loadtxt(fname, delimiter = ',')
N = data.shape[0] # número de linhas; portanto número de exemplos
X = data[:, 0]
y = data[:, 1]
# Examinar um pouco a dimensão dos arrays
print 'Dimensão do array data:', data.shape
print 'Dimensão do array X:', X.shape
# plotar o dados
plt.plot(X, y, 'rx')
plt.xlim(-1, 10)
plt.ylim(-1, 6)
plt.title(fname)
plt.xlabel('x')
plt.ylabel('y')
plt.show()
In [ ]:
# chutar valores para o vetor de pesos
w = np.array((1,0.5))
# plotar os dados (X,y)
plt.plot(X, y, 'rx')
# plotar a reta
XX = np.vstack(zip(np.ones(N), X))
plt.plot(X, XX.dot(w), '-')
# Outras configs do plot
plt.xlim(-1, 10)
plt.ylim(-1, 6)
plt.title( fname + ' e a reta %.1f+%.1fx'%(w[0],w[1]) )
plt.xlabel('x')
plt.ylabel('y')
plt.show()