Project 1
import pandas as pd
import numpy as np
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler
from sklearn.linear_model import LogisticRegression
from sklearn.metrics import accuracy_score,confusion_matrix
crash_data = pd.read_csv('heart.csv')
print(np.unique(crash_data['sex'],return_counts=True))
crash_data_columns_list = list(crash_data.columns)
print(crash_data_columns_list)
features = list(set(crash_data_columns_list)- set(['sex']))
print(features)
target = list(['sex'])
y= crash_data[target].values
y= crash_data['sex'].values
print(y)
x = crash_data[features].values
train_x, test_x, train_y, test_y = train_test_split(x, y, test_size=0.3,random_state=0)
scaler= StandardScaler()
scaler.fit(train_x)
train_x = scaler.transform(train_x)
test_x = scaler.transform(test_x)
logistic = LogisticRegression()
logistic.fit(train_x,train_y)
prediction= logistic.predict(test_x)
confusion_matrix = confusion_matrix(prediction,test_y)
print(confusion_matrix)
accuracy_score= accuracy_score(prediction,test_y)
print(accuracy_score)
print('Misclassified samples: %d' % (test_y != prediction).sum())
Output is
(array([0, 1], dtype=int64), array([ 96, 207], dtype=int64)) ['age', 'sex', 'cp', 'trtbps', 'chol', 'fbs', 'restecg', 'thalachh', 'exng', 'oldpeak', 'slp', 'caa', 'thall', 'output'] ['thalachh', 'exng', 'output', 'caa', 'cp', 'trtbps', 'chol', 'oldpeak', 'slp', 'age', 'fbs', 'restecg', 'thall'] [1 1 0 1 0 1 0 1 1 1 1 0 1 1 0 0 0 0 1 0 1 1 1 1 1 0 1 1 0 1 0 1 1 1 1 0 0 1 0 0 0 1 1 0 1 1 1 1 0 0 0 1 1 0 0 1 1 1 1 0 0 1 1 1 1 0 1 0 1 0 1 1 1 1 0 0 1 1 1 1 1 1 0 1 0 0 1 1 0 0 1 1 1 0 0 1 0 1 1 1 1 1 0 1 1 0 1 0 0 0 0 1 0 1 1 0 1 1 0 0 0 1 0 0 0 0 1 0 0 0 0 0 1 1 0 0 0 1 1 1 0 1 0 0 0 1 0 0 1 1 1 0 1 0 0 0 1 1 1 1 1 0 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 0 1 1 1 1 1 0 1 0 0 1 1 1 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 0 1 1 1 1 1 0 1 1 1 1 1 0 1 0 1 1 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 0 1 1 0 1 1 1 0 1 0 1 1 1 0] [[ 7 12] [14 58]] 0.7142857142857143 Misclassified samples: 26