import numpy as np
import sys
sys.path.append('/home/camp/warnert/neurolytics')
import classifier as cl
import correlation_recording as cr
from sklearn.decomposition import PCA
from sklearn.preprocessing import StandardScaler
from sklearn.svm import LinearSVC
from sklearn.model_selection import train_test_split
import os
from tqdm import tqdm

out_dir = '/home/camp/warnert/working/Recordings/Correlation_project_2019/Correlation_PCA_outputs/Increasing_components'
trialbank_loc = '/home/camp/warnert/working/Recordings/trialbanks/190910SqPulseFreqCorrelationLongRandom.trialbank'
rec1 = cr.Correlation_Recording(
    "/home/camp/warnert/working/Recordings/Correlation_project_2019/190910/2019-09-10_12-42-15",
    32, trialbank_loc)
rec2 = cr.Correlation_Recording(
    '/home/camp/warnert/working/Recordings/Correlation_project_2019/190911/2019-09-11_15-27-40',
    32, trialbank_loc)
rec3 = cr.Correlation_Recording(
    '/home/camp/warnert/working/Recordings/Correlation_project_2019/190912/2019-09-12_14-55-50',
    32, trialbank_loc)
rec4 = cr.Correlation_Recording(
    '/home/camp/warnert/working/Recordings/Correlation_project_2019/191008/2019-10-08_13-56-53',
    32, trialbank_loc)
rec5 = cr.Correlation_Recording(
    '/home/camp/warnert/working/Recordings/Correlation_project_2019/191009/2019-10-09_14-48-27',
    32, trialbank_loc)
rec6 = cr.Correlation_Recording(
    "/home/camp/warnert/working/Recordings/Correlation_project_2019/191010/2019-10-10_16-00-06",
from sklearn.model_selection import train_test_split, StratifiedShuffleSplit
import sys
sys.path.append('/home/camp/warnert/neurolytics')
import classifier as cl
import correlation_recording as cr

out_dir = '/home/camp/warnert/working/Recordings/Correlation_project_2019/frequency/pca_outputs'
responses = ['A_unit_resp.npy', 'B_unit_resp.npy', 'C_unit_resp.npy', 'D_unit_resp.npy']
trial_names = ['2Hz', '5Hz', '10Hz', '15Hz', '20Hz']
odours = ['A', 'B', 'C', 'D']
y_var = np.load(os.path.join(out_dir, 'y_var.npy'))
all_scores = []
for i, j in zip(responses, odours):
    if not os.path.isfile(os.path.join(out_dir, i)):
        odour_trial_names = ['_'.join([k, j]) for k in trial_names]
        rec1 = cr.Correlation_Recording('/home/camp/warnert/working/Recordings/Correlation_project_2019/190910/2019-09-10_12-42-15', 32, '/home/camp/warnert/working/Recordings/Correlation_project_2019/190910/190910SqPulseFreqCorrelationLongRandom.trialbank')
        rec2 = cr.Correlation_Recording('/home/camp/warnert/working/Recordings/Correlation_project_2019/190911/2019-09-11_15-27-40/', 32, '/home/camp/warnert/working/Recordings/Correlation_project_2019/190911/190910SqPulseFreqCorrelationLongRandom.trialbank')
        rec3 = cr.Correlation_Recording('/home/camp/warnert/working/Recordings/Correlation_project_2019/190912/2019-09-12_14-55-50/', 32, '/home/camp/warnert/working/Recordings/Correlation_project_2019/190912/190910SqPulseFreqCorrelationLongRandom.trialbank')
        rec4 = cr.Correlation_Recording('/home/camp/warnert/working/Recordings/Correlation_project_2019/191008/2019-10-08_13-56-53', 32, '/home/camp/warnert/working/Recordings/Correlation_project_2019/190912/190910SqPulseFreqCorrelationLongRandom.trialbank')
        rec5 = cr.Correlation_Recording('/home/camp/warnert/working/Recordings/Correlation_project_2019/191009/2019-10-09_14-48-27', 32, '/home/camp/warnert/working/Recordings/Correlation_project_2019/190912/190910SqPulseFreqCorrelationLongRandom.trialbank')
        rec6 = cr.Correlation_Recording('/home/camp/warnert/working/Recordings/Correlation_project_2019/191010/2019-10-10_16-00-06', 32, '/home/camp/warnert/working/Recordings/Correlation_project_2019/190912/190910SqPulseFreqCorrelationLongRandom.trialbank')
        rec1.set()
        rec2.set()
        rec3.set()
        rec4.set()
        rec5.set()
        rec6.set()
        classifier = cl.Classifier()
        classifier.recordings = [rec1, rec2, rec3, rec4, rec5, rec6]
        classifier.pre_trial_window = 2
        classifier.post_trial_window = 2