# Sepal width and Petal width
  # for the Setos and Versicolor
  iris = sklearn.datasets.load_iris()
  
  # prepocessing data so be used with the PLA model    
  iris_data = pd.DataFrame(iris.data, columns=iris.feature_names)
  iris_data['Class'] = iris.target
  
  # I will be using the first 100 data points from iris_data
  iris_test = shuffle_data(iris_data, 100)
  # I will input iris_test (shuffled data) and columns 0,2,4,5
  x_train, y_train, x_test, y_test = train_test_data_split(iris_test, [0, 1, 3, 5])
 
  iris_model = Perceptron()
  w, sse = iris_model.train(x_train, y_train)
  y_pred = iris_model.test(x_test, y_test)
  print("The accuracy of the model is: ", accuracy_score(y_test, y_pred))
  print("The final weights are: ", w)
  print("SSE Cost")
  print(sse)
  
  # Simple scatter plot that shows the linearly seperable data.
  plt.scatter(x_train[:,1], x_train[:,2], c = y_train,alpha=0.8) 
  plt.title("Perceptron")
  
  
  plot_decision_regions(x_train[:, 1:], y_train.astype(np.integer), clf=iris_model)
  plt.title('Perceptron Model')
  plt.xlabel('Sepal Width [cm]')   
  plt.ylabel('Petal Width [cm]')
  plt.show()
from sklearn.feature_selection import chi2
from sklearn.linear_model import Perceptron






my_data=genfromtxt('table.csv',delimiter=',')
train_set=my_data[:,1:5];
test_set=my_data[:,6];
inter_test=np.ones(3473,1)
count=2000;
print inter_test.shape

clf=Perceptron();
clf.fit(train_set,inter_test);

clf.test(test_Set);

pk_normal =write(test_set)