# Import pandas and numpy
import pandas as pd
import numpy as np

# Import the classifiers we will be using
from sklearn.naive_bayes import GaussianNB
from sklearn.neighbors import KNeighborsClassifier
from sklearn.tree import DecisionTreeClassifier
from sklearn.ensemble import RandomForestClassifier

# Import train/test split function
from sklearn.model_selection import train_test_split

# Import cross validation scorer
from sklearn.model_selection import cross_val_score

# Import ROC AUC scoring function
from sklearn.metrics import roc_auc_score

"""
Explanation: Imports
End of explanation
"""


# Read in our dataset, using the parameter 'index_col' to select the index

# Let's see the header

# And the shape

# Assign the features and the target

"""
Explanation: Read the data
This a breast cancer diagnostic dataset: these features are computed from a digitized image of a fine needle aspirate (FNA) of a breast mass.
"diagnosis" is our target: 0 for benign, 1 for malignant.
End of explanation
"""


# Create the train/test split

"""
Explanation: Train/test split
End of explanation
"""


# Choose the Decision Tree model

# Fit the model

# Make the predictions

# Score the predictions

# Print the score

# Choose the K-Neareast Neighbors model

# Fit the model

# Make the predictions

# Score the predictions

# Print the score

# Choose the Naive Bayes model

# Fit the model

# Make the predictions

# Score the predictions

# Print the score

# Choose the Random Forest model

# Fit the model

# Make the predictions

# Score the predictions

# Print the score

"""
Explanation: Modelling with standard train/test split
End of explanation
"""


# Choose the Decision Tree model

# Fit, predict and score in one step, using cross_val_score()

# Print the scores

# Print the mean score

# Choose the K-Neareast Neighbors model

# Fit, predict and score in one step, using cross_val_score()

# Print the scores

# Print the mean score

# Choose the Naive Bayes model

# Fit, predict and score in one step, using cross_val_score()

# Print the scores

# Print the mean score

# Choose the Random Forest model

# Fit, predict and score in one step, using cross_val_score()

# Print the scores

# Print the mean score

"""
Explanation: Modelling with k-fold cross validation
End of explanation
"""


