├── src └── main │ ├── definition.py │ ├── resources │ ├── generalized_global_classifier.yml │ ├── generalized_global_regressor.yml │ ├── generalized_gloabal_feature_selection.yml │ ├── confidence_interval_loso_kfold.yml │ └── model_configs.yml │ ├── run_regressor.py │ ├── run_classifier.py │ ├── run_confidence_intervals.py │ ├── run_feature_selection.py │ ├── feature_processing │ ├── transformer.py │ ├── data_loader_base.py │ ├── feature_selection.py │ └── generalized_global_data_loader.py │ ├── data_processor │ ├── feature_details.yml │ ├── agrregation_functions.py │ └── one_day_aggregates.py │ ├── experiments │ ├── experiment_base.py │ ├── generalized_global_regressor.py │ ├── generalized_global_classifier.py │ ├── confidence_interval_loso_kfold.py │ └── classification_feature_selection.py │ └── data │ └── aggregated_data │ ├── student 20 │ └── one_day_aggregate.csv │ ├── student 15 │ └── one_day_aggregate.csv │ ├── student 39 │ └── one_day_aggregate.csv │ └── student 31 │ └── one_day_aggregate.csv ├── .gitignore ├── README.md └── slurm ├── RunFeatureSelection.sh ├── RunConfidenceInterval.sh ├── RunRegressor.sh ├── RunClassifier.sh └── important_outputs ├── Regress_loso_without_prev_stress.out ├── Regress_loso_prev_stress.out ├── Classif_loso_without_prev_stress.out ├── Classif_loso_previous_stress_feature_selection.out ├── Regress_kfold_predefined_prev_stress_feature_eng.out ├── Classif_kfold_predefined_prev_stress_feature_eng.out └── Classif_kfold_predefined_without_prev_stress.out /src/main/definition.py: -------------------------------------------------------------------------------- 1 | import os 2 | 3 | ROOT_DIR = os.path.dirname(os.path.abspath(__file__)) -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Folders 2 | \.idea/ 3 | 4 | 5 | # Binary and Cache files. 6 | __pycache__/ 7 | *.py[cod] 8 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # StudentLife-StressDetection-ML-Framework 2 | Framework for stress detection from StudentLife DataSet 3 | -------------------------------------------------------------------------------- /src/main/resources/generalized_global_classifier.yml: -------------------------------------------------------------------------------- 1 | agg_window: 'd' 2 | loss: [] 3 | splitter: ["predefined", "kfold"] 4 | transformer_type: 'normalizer' 5 | stress_agg: 'min' 6 | previous_stress: False 7 | feature_selection: True 8 | ml_models: ['LogisticRegression', 'RandomForestClassifier', 'SVM'] -------------------------------------------------------------------------------- /src/main/resources/generalized_global_regressor.yml: -------------------------------------------------------------------------------- 1 | agg_window: 'd' 2 | loss: ["neg_mean_absolute_error" , "neg_mean_squared_error"] 3 | splitter: ["predefined", "kfold"] 4 | transformer_type: 'normalizer' 5 | stress_agg: 'min' 6 | previous_stress: False 7 | feature_selection: True 8 | ml_models: ['LinearRegression', 'RandomForestRegressor', 'SVR'] -------------------------------------------------------------------------------- /src/main/run_regressor.py: -------------------------------------------------------------------------------- 1 | from main.experiments.generalized_global_regressor import GeneralizedGlobalRegressor 2 | 3 | if __name__ == "__main__": 4 | 5 | # Regressor 6 | gen_regress_exp = GeneralizedGlobalRegressor(config_file="generalized_global_regressor.yml") 7 | gen_regress_exp.run_experiment(train=True, write=True, verbose=False) 8 | 9 | 10 | -------------------------------------------------------------------------------- /src/main/run_classifier.py: -------------------------------------------------------------------------------- 1 | from main.experiments.generalized_global_classifier import GeneralizedGlobalClassifier 2 | 3 | if __name__ == "__main__": 4 | 5 | # Classifier 6 | gen_classif_exp = GeneralizedGlobalClassifier(config_file="generalized_global_classifier.yml") 7 | gen_classif_exp.run_experiment(train=True, write=True, verbose=False) 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /src/main/run_confidence_intervals.py: -------------------------------------------------------------------------------- 1 | from main.experiments.confidence_interval_loso_kfold import ConfidenceIntervalsResult 2 | 3 | if __name__ == "__main__": 4 | 5 | # Classifier 6 | confidence_interval_exp = ConfidenceIntervalsResult(config_file="confidence_interval_loso_kfold.yml") 7 | confidence_interval_exp.run_experiment(train=True, write=True, verbose=False) 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /src/main/run_feature_selection.py: -------------------------------------------------------------------------------- 1 | from main.experiments.classification_feature_selection import GeneralizedFeatureSelection 2 | 3 | if __name__ == "__main__": 4 | 5 | # Classifier 6 | feature_selection_exp = GeneralizedFeatureSelection(config_file="generalized_gloabal_feature_selection.yml") 7 | feature_selection_exp.run_experiment(train=True, write=True, verbose=False) 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /src/main/resources/generalized_gloabal_feature_selection.yml: -------------------------------------------------------------------------------- 1 | agg_window: 'd' 2 | loss: [] 3 | splitter: ["loso"] 4 | transformer_type: 'normalizer' 5 | stress_agg: 'min' 6 | previous_stress: True 7 | feature_selection: False 8 | ml_models: ['RandomForestClassifier'] 9 | 10 | ##RandomForest configs. 11 | 12 | RandomForestClassifier: 13 | n_estimators: 200 14 | max_features: 15 15 | criterion : 'entropy' 16 | max_depth: 20 17 | random_state: 500 18 | min_samples_split: 3 19 | class_weight: 'balanced_subsample' 20 | n_jobs: -1 -------------------------------------------------------------------------------- /src/main/feature_processing/transformer.py: -------------------------------------------------------------------------------- 1 | 2 | from sklearn.preprocessing import StandardScaler 3 | from sklearn.preprocessing import Normalizer 4 | from sklearn.preprocessing import MinMaxScaler 5 | 6 | 7 | def get_transformer(scaler_type=None): 8 | # Return Respective transformer to 9 | 10 | if scaler_type == "minmax": 11 | return MinMaxScaler() 12 | elif scaler_type == 'normalizer': 13 | return Normalizer() 14 | 15 | #Standard Scaler returned by default. 16 | return StandardScaler() 17 | -------------------------------------------------------------------------------- /slurm/RunFeatureSelection.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # 3 | #SBATCH --mem=3000 4 | #SBATCH --job-name=Grid-Classif 5 | #SBATCH --partition=defq 6 | #SBATCH --output=feature_selection-%A.out 7 | #SBATCH --error=feature_selection-%A.err 8 | #SBATCH --mail-type=ALL 9 | #SBATCH --nodes=10 10 | #SBATCH --ntasks-per-node=30 11 | #SBATCH --mail-user=abhinavshaw@umass.edu 12 | 13 | # Thread Limiting 14 | export MKL_NUM_THREADS=30 15 | export OPENBLAS_NUM_THREADS=30 16 | export OMP_NUM_THREADS=30 17 | 18 | # Log the jobid. 19 | echo $SLURM_JOBID - `hostname` >> ~/slurm-jobs.txt 20 | 21 | # Chage Dir to SRC. 22 | cd ~/Projects/StudentLife-StressDetection-ML-Framework/src/main 23 | PYTHONPATH=../ python run_feature_selection.py -------------------------------------------------------------------------------- /slurm/RunConfidenceInterval.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # 3 | #SBATCH --mem=3000 4 | #SBATCH --job-name=Grid-Classif 5 | #SBATCH --partition=defq 6 | #SBATCH --output=confidence_interval-%A.out 7 | #SBATCH --error=confidence_interval-%A.err 8 | #SBATCH --mail-type=ALL 9 | #SBATCH --nodes=1 10 | #SBATCH --ntasks-per-node=4 11 | #SBATCH --mail-user=abhinavshaw@umass.edu 12 | 13 | # Thread Limiting 14 | export MKL_NUM_THREADS=5 15 | export OPENBLAS_NUM_THREADS=5 16 | export OMP_NUM_THREADS=5 17 | 18 | # Log the jobid. 19 | echo $SLURM_JOBID - `hostname` >> ~/slurm-jobs.txt 20 | 21 | # Chage Dir to SRC. 22 | cd ~/Projects/StudentLife-StressDetection-ML-Framework/src/main 23 | PYTHONPATH=../ python run_confidence_intervals.py -------------------------------------------------------------------------------- /slurm/RunRegressor.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # 3 | #SBATCH --mem=30000 4 | #SBATCH --job-name=Grid-Regress 5 | #SBATCH --partition=longq 6 | #SBATCH --output=RegressionExp-%A.out 7 | #SBATCH --error=RegressionExp-%A.err 8 | #SBATCH --mail-type=ALL 9 | #SBATCH --nodes=10 10 | #SBATCH --ntasks-per-node=30 11 | #SBATCH --time=10-00:00 12 | #SBATCH --mail-user=abhinavshaw@umass.edu 13 | 14 | # Thread Limiting 15 | export MKL_NUM_THREADS=30 16 | export OPENBLAS_NUM_THREADS=30 17 | export OMP_NUM_THREADS=30 18 | 19 | # Log the jobid. 20 | echo $SLURM_JOBID - `hostname` >> ~/slurm-jobs.txt 21 | 22 | # Chage Dir to SRC. 23 | cd ~/Projects/StudentLife-StressDetection-ML-Framework/src/main 24 | PYTHONPATH=../ python run_regressor.py -------------------------------------------------------------------------------- /slurm/RunClassifier.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # 3 | #SBATCH --mem=30000 4 | #SBATCH --job-name=Grid-Classif 5 | #SBATCH --partition=longq 6 | #SBATCH --output=ClassificationExp-%A.out 7 | #SBATCH --error=ClassificationExp-%A.err 8 | #SBATCH --mail-type=ALL 9 | #SBATCH --nodes=10 10 | #SBATCH --ntasks-per-node=30 11 | #SBATCH --time=10-00:00 12 | #SBATCH --mail-user=abhinavshaw@umass.edu 13 | 14 | # Thread Limiting 15 | export MKL_NUM_THREADS=30 16 | export OPENBLAS_NUM_THREADS=30 17 | export OMP_NUM_THREADS=30 18 | 19 | # Log the jobid. 20 | echo $SLURM_JOBID - `hostname` >> ~/slurm-jobs.txt 21 | 22 | # Chage Dir to SRC. 23 | cd ~/Projects/StudentLife-StressDetection-ML-Framework/src/main 24 | PYTHONPATH=../ python run_classifier.py -------------------------------------------------------------------------------- /src/main/resources/confidence_interval_loso_kfold.yml: -------------------------------------------------------------------------------- 1 | agg_window: 'd' 2 | loss: [] 3 | splitter: ["kfold", "loso"] 4 | transformer_type: 'normalizer' 5 | stress_agg: 'min' 6 | previous_stress: True 7 | feature_selection: False 8 | ml_models: ['RandomForestClassifier', 'LogisticRegression'] 9 | truncate_sq: False 10 | 11 | ## Model Configs for confidence interval. 12 | RandomForestClassifier: 13 | n_estimators: 150 14 | max_features: 15 15 | criterion : 'gini' 16 | max_depth: 20 17 | random_state: 500 18 | min_samples_split: 5 19 | class_weight: 'balanced_subsample' 20 | n_jobs: -1 21 | LogisticRegression: 22 | penalty: 'l1' 23 | C: 0.1 24 | class_weight: 'balanced' 25 | random_state: 400 26 | max_iter: 5 27 | fit_intercept: True 28 | intercept_scaling: True 29 | tol: 0.1 30 | n_jobs: -1 31 | SVC: 32 | C: 5 33 | kernel: 'rbf' 34 | gamma: 0.001 35 | probability: True 36 | tol: 0.1 37 | class_weight: 'balanced' 38 | max_iter: 150 39 | random_state: 100 40 | decision_function_shape : 'ovr' 41 | 42 | -------------------------------------------------------------------------------- /src/main/data_processor/feature_details.yml: -------------------------------------------------------------------------------- 1 | feats_to_use_from_file: ['activity_details', 'audio_details', 'call_log_details', 'conversation_details', 'dark_details','gps_details', 'phonecharge_details', 'phonelock_details', 'sleep_details', 'sms_details'] 2 | activity_details: 3 | simple: ['sum', 'mean', 'std', 'median', 'var', 'skew'] 4 | linear: True 5 | kurtosis: True 6 | poly: True 7 | iqr: True 8 | mcr: True 9 | fft: True 10 | audio_details: 11 | simple: ['sum', 'mean', 'std', 'median', 'var', 'skew'] 12 | linear: True 13 | kurtosis: True 14 | poly: True 15 | iqr: True 16 | mcr: True 17 | fft: True 18 | call_log_details: 19 | simple: ['sum'] 20 | conversation_details: 21 | simple: ['sum', 'mean', 'std', 'median', 'var', 'skew'] 22 | linear: True 23 | kurtosis: True 24 | poly: True 25 | iqr: True 26 | mcr: True 27 | fft: True 28 | dark_details: 29 | simple: ['sum', 'mean', 'std', 'median', 'var', 'skew'] 30 | linear: True 31 | kurtosis: True 32 | poly: True 33 | iqr: True 34 | mcr: True 35 | fft: True 36 | dow: True 37 | gps_details: 38 | simple: ['mean', 'min', 'max'] 39 | phonecharge_details: 40 | simple: ['sum', 'mean', 'std', 'median', 'var', 'skew'] 41 | linear: True 42 | kurtosis: True 43 | poly: True 44 | iqr: True 45 | mcr: True 46 | fft: True 47 | phonelock_details: 48 | simple: ['sum', 'mean', 'std', 'median', 'var', 'skew'] 49 | linear: True 50 | kurtosis: True 51 | poly: True 52 | iqr: True 53 | mcr: True 54 | fft: True 55 | sleep_details: 56 | simple: ['sum', 'mean', 'min', 'max'] 57 | sms_details: 58 | simple: ['sum'] -------------------------------------------------------------------------------- /src/main/resources/model_configs.yml: -------------------------------------------------------------------------------- 1 | LogisticRegression: 2 | penalty: ['l1', 'l2'] 3 | C: [5, 2, 1, 0.1, 0.05, 0.03, 0.0275,0.025, 0.02 , 0.01, 0.009, 0.0075, 0.005, 0.001] 4 | class_weight: ['balanced',] 5 | random_state: [100,200, 300, 400, 500] 6 | max_iter: [1, 2, 3, 4, 5, 10, 15, 20, 30, 50, 80, 100] 7 | fit_intercept: [True, True] 8 | intercept_scaling: [True] 9 | tol: [0.1, 0.075, 0.05 ,0.01, 0.001, 0.0002, 0.0001, 0.00005, 0.00001] 10 | n_jobs: [-1] 11 | RandomForestClassifier: 12 | n_estimators: [ 100, 200] 13 | max_features: [10, 15, 20] 14 | criterion : ['gini', 'entropy'] 15 | max_depth: [20, 50] 16 | random_state: [400, 500] 17 | min_samples_split: [2, 3, 5, 7] 18 | class_weight: ['balanced', 'balanced_subsample',] 19 | n_jobs: [-1] 20 | SVM: 21 | C: [5, 1, 0.1, 0.01, 0.001] 22 | kernel: ['rbf', 'linear'] 23 | degree: [2, 3] 24 | gamma: [1, 0.1] 25 | probability: [True, False] 26 | tol: [0.1, 0.05 ,0.01] 27 | class_weight: ['balanced', ] 28 | max_iter: [150, 200] 29 | random_state: [400, 500] 30 | decision_function_shape : ['ovr', 'ovo'] 31 | LinearRegression: 32 | fit_intercept: [True] 33 | n_jobs: [-1] 34 | RandomForestRegressor: 35 | n_estimators: [20, 50, 100, 200] 36 | criterion: ['mse', 'mae'] 37 | max_features: [5, 10, 15, 20] 38 | max_depth: [20, 50, 80, 100] 39 | random_state: [100,200, 300, 400, 500] 40 | min_samples_split: [2, 3, 5, 7] 41 | n_jobs: [-1] 42 | SVR: 43 | C: [5, 2, 1, 0.1, 0.01, 0.001, 0.0005, 0.0001] 44 | epsilon: [0.1, 0.5, 1] 45 | kernel: ['rbf', 'poly'] 46 | degree: [2] 47 | gamma: [1, 0.1, 0.01, 0.001] 48 | tol: [0.1, 0.075, 0.05 ,0.01, 0.001, 0.0002, 0.0001, 0.00005, 0.00001] 49 | max_iter: [20, 50, 100, 150, 200] 50 | 51 | -------------------------------------------------------------------------------- /slurm/important_outputs/Regress_loso_without_prev_stress.out: -------------------------------------------------------------------------------- 1 | ########## loso split running ######### 2 | ######## Regressor LinearRegression running ####### 3 | ######## Loss neg_mean_absolute_error running ####### 4 | Best Params: {'fit_intercept': True, 'n_jobs': -1} 5 | 6 | best score -0.7996477879056012 7 | mse: 0.7298792332401641 8 | mae: 0.6350899789633366 9 | ######## Loss neg_mean_squared_error running ####### 10 | Best Params: {'fit_intercept': True, 'n_jobs': -1} 11 | 12 | best score -1.0954958055531665 13 | mse: 0.7298792332401641 14 | mae: 0.6350899789633366 15 | ######################################################################### 16 | ######## Regressor RandomForestRegressor running ####### 17 | ######## Loss neg_mean_absolute_error running ####### 18 | Best Params: {'criterion': 'mae', 'max_depth': 20, 'max_features': 5, 'min_samples_split': 5, 'n_estimators': 50, 'n_jobs': -1, 'random_state': 400} 19 | 20 | best score -0.7264869151467089 21 | mse: 0.9186924731182796 22 | mae: 0.6240860215053764 23 | ######## Loss neg_mean_squared_error running ####### 24 | Best Params: {'criterion': 'mae', 'max_depth': 20, 'max_features': 5, 'min_samples_split': 5, 'n_estimators': 20, 'n_jobs': -1, 'random_state': 400} 25 | 26 | best score -1.0465513481363997 27 | mse: 0.9152116935483872 28 | mae: 0.6280913978494623 29 | ######################################################################### 30 | ######## Regressor SVR running ####### 31 | ######## Loss neg_mean_absolute_error running ####### 32 | Best Params: {'C': 0.0001, 'degree': 2, 'epsilon': 1, 'gamma': 0.01, 'kernel': 'rbf', 'max_iter': 150, 'tol': 0.1} 33 | 34 | best score -0.673275865228157 35 | mse: 0.9032258750987792 36 | mae: 0.5698926953634528 37 | ######## Loss neg_mean_squared_error running ####### 38 | Best Params: {'C': 0.0001, 'degree': 2, 'epsilon': 1, 'gamma': 1, 'kernel': 'rbf', 'max_iter': 150, 'tol': 0.1} 39 | 40 | best score -1.0074118585644103 41 | mse: 0.8521223479762138 42 | mae: 0.7688003885087238 43 | ######################################################################### 44 | -------------------------------------------------------------------------------- /src/main/feature_processing/data_loader_base.py: -------------------------------------------------------------------------------- 1 | from abc import ABCMeta, abstractmethod 2 | from definition import ROOT_DIR 3 | import os 4 | import sys 5 | 6 | 7 | class DataLoaderBase: 8 | __metaclass__ = ABCMeta 9 | 10 | def __init__(self, agg_window='d', splitter='predefined', transformer_type='minmax'): 11 | """ 12 | Initialize the different properties for the data loader. 13 | :parameter ml_models: a dictionary of different models to be tried out for the pipeline. 14 | :parameter transformer: string, for which transformer to be used eg: minmax, normalizer etc. Default - standard. 15 | :parameter train_test_split: Splitting technique, leave k, standart train test split our etc. 16 | """ 17 | self.aggregation_window = agg_window 18 | self.splitter = splitter 19 | self.transformer_type = transformer_type 20 | 21 | @staticmethod 22 | def get_file_list(agg_window): 23 | cwd = ROOT_DIR + "/data/aggregated_data" 24 | student_list = os.listdir(cwd) 25 | file_list = [] 26 | 27 | if agg_window == 'd': 28 | file_list = [cwd + '/' + student + '/one_day_aggregate.csv' for student in student_list] 29 | 30 | return file_list 31 | 32 | @abstractmethod 33 | def get_data(self): 34 | """ 35 | To run te experiments. 36 | """ 37 | pass 38 | 39 | @abstractmethod 40 | def get_val_splitter(self): 41 | """ 42 | TO get an iterable for splits of the data. 43 | """ 44 | pass 45 | 46 | @staticmethod 47 | def adjust_stress_values(stress_level): 48 | mapping = { 49 | 1: 2, 50 | 2: 3, 51 | 3: 4, 52 | 4: 1, 53 | 5: 0 54 | } 55 | return mapping[stress_level] 56 | 57 | @staticmethod 58 | def segregate_y_labels_as_median(stress_level): 59 | mapping = { 60 | 0: 0, 61 | 1: 0, 62 | 2: 1, 63 | 3: 2, 64 | 4: 2 65 | } 66 | 67 | return mapping[stress_level] 68 | -------------------------------------------------------------------------------- /slurm/important_outputs/Regress_loso_prev_stress.out: -------------------------------------------------------------------------------- 1 | ######################################################################################### 2 | Previous Stress Levels:True Feature Selection:True Transformer:normalizer Splitter(s):['loso'] 3 | ######################################################################################## 4 | ########## loso split running ######### 5 | ######## Regressor LinearRegression running ####### 6 | ######## Loss neg_mean_absolute_error running ####### 7 | Best Params: {'fit_intercept': True, 'n_jobs': -1} 8 | 9 | best score -0.8082515582942954 10 | mse: 0.7615456642727885 11 | mae: 0.6509426023292886 12 | ######## Loss neg_mean_squared_error running ####### 13 | Best Params: {'fit_intercept': True, 'n_jobs': -1} 14 | 15 | best score -1.152320565999759 16 | mse: 0.7615456642727885 17 | mae: 0.6509426023292886 18 | ######################################################################### 19 | ######## Regressor RandomForestRegressor running ####### 20 | ######## Loss neg_mean_absolute_error running ####### 21 | Best Params: {'criterion': 'mse', 'max_depth': 20, 'max_features': 20, 'min_samples_split': 7, 'n_estimators': 200, 'n_jobs': -1, 'random_state': 200} 22 | 23 | best score -0.483886707713972 24 | mse: 0.46316914939209924 25 | mae: 0.43619869170722886 26 | ######## Loss neg_mean_squared_error running ####### 27 | Best Params: {'criterion': 'mse', 'max_depth': 50, 'max_features': 10, 'min_samples_split': 7, 'n_estimators': 200, 'n_jobs': -1, 'random_state': 200} 28 | 29 | best score -0.5511474454918789 30 | mse: 0.4354593260865589 31 | mae: 0.43257556191628527 32 | ######################################################################### 33 | ######## Regressor SVR running ####### 34 | ######## Loss neg_mean_absolute_error running ####### 35 | Best Params: {'C': 0.0001, 'degree': 2, 'epsilon': 1, 'gamma': 0.1, 'kernel': 'rbf', 'max_iter': 150, 'tol': 0.1} 36 | 37 | best score -0.6843851749988844 38 | mse: 0.9032245093548003 39 | mae: 0.5698928369169056 40 | ######## Loss neg_mean_squared_error running ####### 41 | Best Params: {'C': 2, 'degree': 2, 'epsilon': 1, 'gamma': 1, 'kernel': 'rbf', 'max_iter': 100, 'tol': 0.1} 42 | 43 | best score -0.9768614477155585 44 | mse: 0.7670638520835598 45 | mae: 0.6292081317237603 46 | ######################################################################### 47 | -------------------------------------------------------------------------------- /src/main/data_processor/agrregation_functions.py: -------------------------------------------------------------------------------- 1 | # imports for aggregations functions 2 | from scipy.stats import iqr as quartile_range 3 | from scipy.stats import kurtosis 4 | from scipy.fftpack import fft 5 | import math 6 | import pandas as pd 7 | import numpy as np 8 | 9 | 10 | def linear_fit(array_like): 11 | # Linear features 12 | if (len(array_like) == 0): 13 | return [0, 0] 14 | p = np.polyfit(np.arange(len(array_like)), array_like, 1) 15 | return [p[0], p[1]] 16 | 17 | 18 | def poly_fit(array_like): 19 | # Poly features 20 | if (len(array_like) == 0): 21 | return [0, 0, 0] 22 | p = np.polyfit(np.arange(len(array_like)), array_like, 2) 23 | return [p[0], p[1], p[2]] 24 | 25 | 26 | def iqr(array_like): 27 | # inter quartile range. 28 | result = quartile_range(array_like) 29 | return result if not math.isnan(result) else 0 30 | 31 | 32 | def kurt(array_like): 33 | result = kurtosis(array_like) 34 | return result if not math.isnan(result) else 0 35 | 36 | 37 | def mcr(array_like): 38 | # returns how many times the mean has been crossed. 39 | mean = np.mean(array_like) 40 | array_like = array_like - mean 41 | return np.sum(np.diff(np.sign(array_like)).astype(bool)) 42 | 43 | 44 | def fourier_transform(array_like): 45 | # Return Fast Fourier transfor of array. 46 | result = fft(array_like) 47 | return 0 48 | 49 | 50 | def extend_complex_features(feature_name, resampled_df, columns=None): 51 | # This function adds liear features such as slope and intercept to the dataset. 52 | # If columns is None then apply features to all columns. 53 | function_mapper = { 54 | 55 | 'linear': (linear_fit, ['linear_m', 'linear_c']), 56 | 'poly': (poly_fit, ['poly_a', 'poly_b', 'poly_c']), 57 | 'iqr': (iqr, []), 58 | 'kurtosis': (kurt, []), 59 | 'mcr': (mcr, []), 60 | 'fft': (fourier_transform, []) 61 | 62 | } 63 | # please give empty list if no columns name required. 64 | 65 | if columns: 66 | complex_cols = [(feature_name, f) for f in columns] 67 | else: 68 | complex_cols = [(feature_name, f) for f in resampled_df.columns.values] 69 | 70 | complex_feature = resampled_df.agg({feature_name: function_mapper[feature_name][0]}) 71 | 72 | if len(function_mapper[feature_name][1]) > 0: 73 | complex_feature = pd.concat( 74 | [pd.DataFrame( 75 | complex_feature[f].values.tolist(), 76 | columns=[(col, f[1]) for col in function_mapper[feature_name][1]], 77 | index=complex_feature.index) for f in complex_cols], 78 | axis=1 79 | ) 80 | 81 | return complex_feature 82 | -------------------------------------------------------------------------------- /slurm/important_outputs/Classif_loso_without_prev_stress.out: -------------------------------------------------------------------------------- 1 | ############################## loso split running ############################# 2 | ######################### Classifier LogisticRegression running ####################### 3 | Best Params: {'C': 0.05, 'class_weight': 'balanced', 'fit_intercept': True, 'intercept_scaling': True, 'max_iter': 5, 'n_jobs': -1, 'penalty': 'l1', 'random_state': 300, 'tol': 0.0002} 4 | 5 | best score 0.49960348929421095 6 | accuracy: 0.5967741935483871 7 | 8 | micro_f1: 0.5967741935483871 macro_f1: 0.14949494949494951 weigthed_f1: 0.44607363962202673 9 | 10 | micro_recall: 0.5967741935483871 macro_recall: 0.2 weigthed_recall: 0.5967741935483871 11 | 12 | micro_precision: 0.5967741935483871 macro_precision: 0.11935483870967742 weigthed_precision: 0.35613943808532783 13 | 14 | ############################### Confusion Matrix ############################ 15 | [[ 0 0 6 0 0] 16 | [ 0 0 13 0 0] 17 | [ 0 0 111 0 0] 18 | [ 0 0 31 0 0] 19 | [ 0 0 25 0 0]] 20 | 21 | ################################################################################# 22 | ######################### Classifier RandomForestClassifier running ####################### 23 | Best Params: {'class_weight': 'balanced', 'criterion': 'entropy', 'max_depth': 20, 'max_features': 5, 'min_samples_split': 2, 'n_estimators': 100, 'n_jobs': -1, 'random_state': 100} 24 | 25 | best score 0.45519429024583663 26 | accuracy: 0.510752688172043 27 | 28 | micro_f1: 0.510752688172043 macro_f1: 0.20335858585858588 weigthed_f1: 0.454411724774628 29 | 30 | micro_recall: 0.510752688172043 macro_recall: 0.21265285136252882 weigthed_recall: 0.510752688172043 31 | 32 | micro_precision: 0.510752688172043 macro_precision: 0.2113793103448276 weigthed_precision: 0.4178253615127919 33 | 34 | ############################### Confusion Matrix ############################ 35 | [[ 0 0 6 0 0] 36 | [ 1 1 10 0 1] 37 | [ 0 2 88 12 9] 38 | [ 0 1 23 6 1] 39 | [ 0 1 18 6 0]] 40 | 41 | ################################################################################# 42 | ######################### Classifier SVM running ####################### 43 | Best Params: {'C': 1, 'class_weight': 'balanced', 'decision_function_shape': 'ovr', 'degree': 2, 'gamma': 0.01, 'kernel': 'rbf', 'max_iter': 150, 'probability': True, 'random_state': 100, 'tol': 0.1} 44 | 45 | best score 0.1625693893735131 46 | accuracy: 0.13440860215053763 47 | 48 | micro_f1: 0.13440860215053763 macro_f1: 0.047393364928909956 weigthed_f1: 0.031850379656525506 49 | 50 | micro_recall: 0.13440860215053763 macro_recall: 0.2 weigthed_recall: 0.13440860215053763 51 | 52 | micro_precision: 0.13440860215053763 macro_precision: 0.026881720430107524 weigthed_precision: 0.018065672332061508 53 | 54 | ############################### Confusion Matrix ############################ 55 | [[ 0 0 0 0 6] 56 | [ 0 0 0 0 13] 57 | [ 0 0 0 0 111] 58 | [ 0 0 0 0 31] 59 | [ 0 0 0 0 25]] 60 | 61 | ################################################################################# 62 | -------------------------------------------------------------------------------- /slurm/important_outputs/Classif_loso_previous_stress_feature_selection.out: -------------------------------------------------------------------------------- 1 | ############################## loso split running ############################# 2 | ######################### Classifier LogisticRegression running ####################### 3 | Best Params: {'C': 0.05, 'class_weight': 'balanced', 'fit_intercept': True, 'intercept_scaling': True, 'max_iter': 4, 'n_jobs': -1, 'penalty': 'l1', 'random_state': 300, 'tol': 0.001} 4 | 5 | best score 0.5051546391752577 6 | accuracy: 0.5967741935483871 7 | 8 | micro_f1: 0.5967741935483871 macro_f1: 0.14949494949494951 weigthed_f1: 0.44607363962202673 9 | 10 | micro_recall: 0.5967741935483871 macro_recall: 0.2 weigthed_recall: 0.5967741935483871 11 | 12 | micro_precision: 0.5967741935483871 macro_precision: 0.11935483870967742 weigthed_precision: 0.35613943808532783 13 | 14 | ############################### Confusion Matrix ############################ 15 | [[ 0 0 6 0 0] 16 | [ 0 0 13 0 0] 17 | [ 0 0 111 0 0] 18 | [ 0 0 31 0 0] 19 | [ 0 0 25 0 0]] 20 | 21 | ################################################################################# 22 | ######################### Classifier RandomForestClassifier running ####################### 23 | Best Params: {'class_weight': 'balanced_subsample', 'criterion': 'entropy', 'max_depth': 20, 'max_features': 15, 'min_samples_split': 3, 'n_estimators': 200, 'n_jobs': -1, 'random_state': 500} 24 | 25 | best score 0.725614591593973 26 | accuracy: 0.7204301075268817 27 | 28 | micro_f1: 0.7204301075268817 macro_f1: 0.5168830537051881 weigthed_f1: 0.7074819973685205 29 | 30 | micro_recall: 0.7204301075268817 macro_recall: 0.49284188406769047 weigthed_recall: 0.7204301075268817 31 | 32 | micro_precision: 0.7204301075268817 macro_precision: 0.5656040865522585 weigthed_precision: 0.7181366985550555 33 | 34 | ############################### Confusion Matrix ############################ 35 | [[ 2 0 4 0 0] 36 | [ 3 2 7 1 0] 37 | [ 2 5 100 1 3] 38 | [ 0 2 11 16 2] 39 | [ 0 1 9 1 14]] 40 | 41 | ################################################################################# 42 | ######################### Classifier SVM running ####################### 43 | Best Params: {'C': 5, 'class_weight': 'balanced', 'decision_function_shape': 'ovr', 'degree': 2, 'gamma': 1, 'kernel': 'rbf', 'max_iter': 200, 'probability': True, 'random_state': 100, 'tol': 0.1} 44 | 45 | best score 0.18080888183980967 46 | accuracy: 0.12365591397849462 47 | 48 | micro_f1: 0.12365591397849462 macro_f1: 0.1280295566502463 weigthed_f1: 0.06087495806628175 49 | 50 | micro_recall: 0.12365591397849462 macro_recall: 0.2742464846980976 weigthed_recall: 0.12365591397849462 51 | 52 | micro_precision: 0.12365591397849462 macro_precision: 0.1070472588410484 weigthed_precision: 0.05242123354584089 53 | 54 | ############################### Confusion Matrix ############################ 55 | [[ 1 5 0 0 0] 56 | [ 1 9 0 0 3] 57 | [ 2 58 0 10 41] 58 | [ 2 22 0 1 6] 59 | [ 0 13 0 0 12]] 60 | 61 | ################################################################################# 62 | -------------------------------------------------------------------------------- /src/main/feature_processing/feature_selection.py: -------------------------------------------------------------------------------- 1 | import pandas as pd 2 | from sklearn.feature_selection import mutual_info_regression 3 | from sklearn.feature_selection import mutual_info_classif 4 | from sklearn.linear_model import LogisticRegression 5 | from sklearn.linear_model import LinearRegression 6 | from sklearn.feature_selection import RFE 7 | 8 | 9 | def feature_selection_mutualinfo_regress(train_x, train_y, verbose=False): 10 | mi = pd.DataFrame(mutual_info_regression(train_x, train_y, random_state=100), index=train_x.columns) 11 | 12 | if verbose: 13 | print("Mutual Information in regress:") 14 | print(mi) 15 | 16 | return mi 17 | 18 | 19 | def feature_selection_mutualinfo_classif(train_x, train_y, verbose=False): 20 | mi = pd.DataFrame(mutual_info_classif(train_x, train_y, random_state=100), index=train_x.columns) 21 | 22 | if verbose: 23 | print("Mutual Information in classif:") 24 | print(mi) 25 | 26 | return mi 27 | 28 | 29 | def select_features(train_x, train_y, test_x, test_y, selection_type, num_features=20, verbose=False): 30 | # This function orders feature from Mutual Info, selects top 60 of the 31 | # feature and the performs RFE on the selected features. 32 | 33 | if selection_type == "classification": 34 | 35 | # Feature Selection through Mutual Information. Getting refined train and test splits. 36 | mi = feature_selection_mutualinfo_classif(train_x, train_y, verbose=verbose) 37 | mi.reset_index(drop=True, inplace=True) 38 | selected = mi.nlargest(60, columns=0).index 39 | selected = list(selected) 40 | train_x = train_x.iloc[:, selected] 41 | test_x = test_x.iloc[:, selected] 42 | 43 | estimator = LogisticRegression(C=0.05, class_weight='balanced', dual=False, 44 | fit_intercept=True, intercept_scaling=1, max_iter=5, 45 | multi_class='ovr', n_jobs=-1, penalty='l1', random_state=100, 46 | solver='liblinear', tol=0.1, verbose=0, warm_start=False) 47 | 48 | selector = RFE(estimator, n_features_to_select=num_features, step=1) 49 | selector.fit(train_x, train_y) 50 | train_x = train_x.iloc[:, selector.support_] 51 | test_x = test_x.iloc[:, selector.support_] 52 | 53 | 54 | else: 55 | # If not Classification then do feature selection using Regression. 56 | # Feature Selection through Mutual Information. 57 | mi = feature_selection_mutualinfo_regress(train_x, train_y, verbose=False) 58 | mi.reset_index(drop=True, inplace=True) 59 | selected = mi.nlargest(60, columns=0).index 60 | selected = list(selected) 61 | train_x = train_x.iloc[:, selected] 62 | test_x = test_x.iloc[:, selected] 63 | 64 | estimator = LinearRegression(n_jobs=-1, fit_intercept=True) 65 | 66 | selector = RFE(estimator, n_features_to_select=num_features, step=1) 67 | selector.fit(train_x, train_y) 68 | train_x = train_x.iloc[:, selector.support_] 69 | test_x = test_x.iloc[:, selector.support_] 70 | 71 | if verbose: 72 | print("Feature Seletion Support: \n", selector.support_) 73 | print("Features Selected: \n", train_x.head(1)) 74 | 75 | return train_x, train_y, test_x, test_y 76 | 77 | 78 | -------------------------------------------------------------------------------- /slurm/important_outputs/Regress_kfold_predefined_prev_stress_feature_eng.out: -------------------------------------------------------------------------------- 1 | ########## predefined split running ######### 2 | ######## Regressor LinearRegression running ####### 3 | ######## Loss neg_mean_absolute_error running ####### 4 | Best Params: {'fit_intercept': True, 'n_jobs': -1} 5 | 6 | best score -0.8498515264872363 7 | mse: 2.2687403651907543 8 | mae: 0.9834635584159691 9 | ######## Loss neg_mean_squared_error running ####### 10 | Best Params: {'fit_intercept': True, 'n_jobs': -1} 11 | 12 | best score -1.2597576331310856 13 | mse: 2.2687403651907543 14 | mae: 0.9834635584159691 15 | ######################################################################### 16 | ######## Regressor RandomForestRegressor running ####### 17 | ######## Loss neg_mean_absolute_error running ####### 18 | Best Params: {'criterion': 'mse', 'max_depth': 80, 'max_features': 20, 'min_samples_split': 7, 'n_estimators': 50, 'n_jobs': -1, 'random_state': 100} 19 | 20 | best score -0.36633039995423233 21 | mse: 0.7063808441558569 22 | mae: 0.5326877278764942 23 | ######## Loss neg_mean_squared_error running ####### 24 | Best Params: {'criterion': 'mse', 'max_depth': 20, 'max_features': 15, 'min_samples_split': 2, 'n_estimators': 50, 'n_jobs': -1, 'random_state': 100} 25 | 26 | best score -0.3796471401488155 27 | mse: 0.7019562918690783 28 | mae: 0.5240767975823026 29 | ######################################################################### 30 | ######## Regressor SVR running ####### 31 | ######## Loss neg_mean_absolute_error running ####### 32 | Best Params: {'C': 5, 'degree': 2, 'epsilon': 1, 'gamma': 0.1, 'kernel': 'poly', 'max_iter': 150, 'tol': 0.0002} 33 | 34 | best score -0.7735846775335516 35 | mse: 1.3807648028737078 36 | mae: 1.0022805835009712 37 | ######## Loss neg_mean_squared_error running ####### 38 | Best Params: {'C': 1, 'degree': 2, 'epsilon': 1, 'gamma': 0.1, 'kernel': 'rbf', 'max_iter': 100, 'tol': 0.1} 39 | 40 | best score -1.1500512805278889 41 | mse: 1.3935237388865913 42 | mae: 0.9952454652468975 43 | ######################################################################### 44 | ########## kfold split running ######### 45 | ######## Regressor LinearRegression running ####### 46 | ######## Loss neg_mean_absolute_error running ####### 47 | Best Params: {'fit_intercept': True, 'n_jobs': -1} 48 | 49 | best score -0.8065262273598276 50 | mse: 0.7615456642727885 51 | mae: 0.6509426023292886 52 | ######## Loss neg_mean_squared_error running ####### 53 | Best Params: {'fit_intercept': True, 'n_jobs': -1} 54 | 55 | best score -1.2076209156515276 56 | mse: 0.7615456642727885 57 | mae: 0.6509426023292886 58 | ######################################################################### 59 | ######## Regressor RandomForestRegressor running ####### 60 | ######## Loss neg_mean_absolute_error running ####### 61 | Best Params: {'criterion': 'mse', 'max_depth': 20, 'max_features': 20, 'min_samples_split': 7, 'n_estimators': 200, 'n_jobs': -1, 'random_state': 300} 62 | 63 | best score -0.4926901882448105 64 | mse: 0.4583211183413246 65 | mae: 0.4363752647532852 66 | ######## Loss neg_mean_squared_error running ####### 67 | Best Params: {'criterion': 'mse', 'max_depth': 20, 'max_features': 15, 'min_samples_split': 7, 'n_estimators': 200, 'n_jobs': -1, 'random_state': 200} 68 | 69 | best score -0.5610302214828593 70 | mse: 0.4479216216451956 71 | mae: 0.4320306144516027 72 | ######################################################################### 73 | ######## Regressor SVR running ####### 74 | ######## Loss neg_mean_absolute_error running ####### 75 | Best Params: {'C': 0.0001, 'degree': 2, 'epsilon': 0.5, 'gamma': 0.001, 'kernel': 'poly', 'max_iter': 20, 'tol': 0.1} 76 | 77 | best score -0.7002379064238893 78 | mse: 0.9032258064523015 79 | mae: 0.5698924731190135 80 | ######## Loss neg_mean_squared_error running ####### 81 | Best Params: {'C': 1, 'degree': 2, 'epsilon': 0.5, 'gamma': 0.1, 'kernel': 'rbf', 'max_iter': 200, 'tol': 0.1} 82 | 83 | best score -1.0314484057973181 84 | mse: 0.9076032679346172 85 | mae: 0.5938213381612756 86 | ######################################################################### 87 | -------------------------------------------------------------------------------- /src/main/experiments/experiment_base.py: -------------------------------------------------------------------------------- 1 | from abc import ABCMeta, abstractmethod 2 | from main.definition import ROOT_DIR 3 | import yaml 4 | import sklearn.linear_model as linear_model 5 | import sklearn.ensemble as ensemble 6 | import sklearn.svm as svm 7 | import numpy as np 8 | import time 9 | import datetime 10 | 11 | 12 | class ExperimentBase: 13 | __metaclass__ = ABCMeta 14 | 15 | exp_config = {} 16 | agg_window = str() 17 | splitter = str() 18 | transformer = str() 19 | stress_agg = str() 20 | ml_models = str() 21 | previous_stress = True 22 | feature_selection = True 23 | loss = [] 24 | 25 | def __init__(self, config_file): 26 | """ 27 | Initialize the different properties for the experiment. 28 | """ 29 | 30 | self.read_configs(config_file) 31 | self.set_configs() 32 | 33 | @abstractmethod 34 | def run_experiment(self, train=True, write=True, verbose=False): 35 | """ 36 | To run te experiments. 37 | """ 38 | pass 39 | 40 | @staticmethod 41 | def get_model_configurations(): 42 | """ 43 | Returns Dictionary of hyperparameters. 44 | """ 45 | file_name = ROOT_DIR + "/resources/model_configs.yml" 46 | # Reading from YML file. 47 | with open(file_name, "r") as ymlfile: 48 | model_configs = yaml.load(ymlfile) 49 | 50 | return model_configs 51 | 52 | @staticmethod 53 | def generate_baseline(true_y): 54 | """ 55 | Generate Baseline accuracy using most label etc. 56 | """ 57 | 58 | # Most Freq. Accuracy. 59 | counts = np.bincount(true_y.astype(int)) 60 | most_freq = np.max(counts) 61 | most_freq_label = np.argmax(counts) 62 | most_freq_accuracy = most_freq / true_y.shape[0] * 1.0 63 | 64 | return most_freq_accuracy, most_freq_label 65 | 66 | # Non Abstract Methods 67 | 68 | def get_ml_models(self): 69 | model_list = [] 70 | 71 | # Classifiers 72 | if "LogisticRegression" in self.ml_models: 73 | model_list.append(linear_model.LogisticRegression()) 74 | if "RandomForestClassifier" in self.ml_models: 75 | model_list.append(ensemble.RandomForestClassifier()) 76 | if "SVM" in self.ml_models: 77 | model_list.append(svm.SVC()) 78 | if "AdaBoostClassifier" in self.ml_models: 79 | model_list.append(ensemble.AdaBoostClassifier()) 80 | 81 | # Regression 82 | if "LinearRegression" in self.ml_models: 83 | model_list.append(linear_model.LinearRegression()) 84 | if "RandomForestRegressor" in self.ml_models: 85 | model_list.append(ensemble.RandomForestRegressor()) 86 | if "SVR" in self.ml_models: 87 | model_list.append(svm.SVR()) 88 | 89 | # Raise Error if no model Selected. 90 | if len(model_list) == 0: 91 | raise Exception("Model Config Not Found!! Check Model config for Experiment.") 92 | 93 | return model_list 94 | 95 | def read_configs(self, config_file): 96 | 97 | file_name = ROOT_DIR + "/resources/" + config_file 98 | # Reading from YML file. 99 | with open(file_name, "r") as ymlfile: 100 | self.exp_config = yaml.load(ymlfile) 101 | 102 | def set_configs(self): 103 | self.agg_window = self.exp_config['agg_window'] 104 | self.splitter = self.exp_config['splitter'] 105 | self.transformer = self.exp_config['transformer_type'] 106 | self.stress_agg = self.exp_config['stress_agg'] 107 | self.ml_models = self.exp_config['ml_models'] 108 | self.previous_stress = self.exp_config['previous_stress'] 109 | self.feature_selection = self.exp_config['feature_selection'] 110 | self.loss = self.exp_config['loss'] 111 | 112 | @staticmethod 113 | def write_output(exp_name, result_df, string_to_write=None): 114 | # Write the whole data frame in a CSV. 115 | 116 | output_path = ROOT_DIR + "/outputs/" + exp_name 117 | ts = time.time() 118 | st = datetime.datetime.fromtimestamp(ts).strftime('%m_%d_%H_%M') 119 | 120 | grid_path = output_path + "/" + exp_name + "ResultGrid_" + st + ".csv" 121 | file_path = output_path + "/" + exp_name + ".txt" 122 | result_df.to_csv(grid_path, index=False, header=True) 123 | 124 | if string_to_write: 125 | f = open(file_path, "w+") 126 | f.write(string_to_write) 127 | f.close() 128 | -------------------------------------------------------------------------------- /src/main/data_processor/one_day_aggregates.py: -------------------------------------------------------------------------------- 1 | import pandas as pd 2 | import warnings 3 | import yaml 4 | import os 5 | from main.data_processor.agrregation_functions import extend_complex_features 6 | 7 | warnings.filterwarnings("ignore") 8 | 9 | owd = os.getcwd() 10 | print("owd: ", owd) 11 | 12 | fwd = "F:\Projects\DataProcessor" 13 | print("working directory of flat files: ", fwd) 14 | os.chdir(fwd) 15 | 16 | # Reading from YML file. 17 | with open("./feature_details.yml", "r") as ymlfile: 18 | feature_cfg = yaml.load(ymlfile) 19 | 20 | os.chdir(fwd) 21 | data_dir = fwd + "\StudentLife Data" 22 | os.chdir(data_dir) 23 | dir_list = [x for x in os.listdir('.') if "student" in x] 24 | 25 | # Window Length 26 | freq = 'd' 27 | 28 | # Skipping Student 0, because of bad data. 29 | print("dir list: ", dir_list) 30 | 31 | # dir_list = dir_list[1:2] 32 | 33 | print("DirList that will be precessed: ", dir_list) 34 | converter_dict = {'time': pd.to_datetime} 35 | 36 | 37 | for folder in dir_list: 38 | 39 | path = data_dir + "\\" + folder 40 | os.chdir(path) 41 | feature_files = feature_cfg['feats_to_use_from_file'] 42 | # feature_files = feature_files[1:2] 43 | feature_train_list = [] 44 | 45 | print("Working on: ", folder) 46 | 47 | for file in feature_files: 48 | raw_feature_data = pd.read_csv(file + "_train_x.csv", 49 | skip_blank_lines=False, 50 | index_col=0, 51 | converters=converter_dict 52 | ) 53 | 54 | # Resetting Index. 55 | raw_feature_data = raw_feature_data.reset_index(drop=True) 56 | raw_feature_data = raw_feature_data.set_index(keys='time') 57 | 58 | # Feature Columns required, avoiding Nusance columns. 59 | feature_cols = [col for col in raw_feature_data.columns.values if col not in ['student_id', 'stress_level']] 60 | 61 | # Exctracting information and columns. 62 | student_id = int(folder.split(" ")[1]) 63 | raw_stress_data = raw_feature_data['stress_level'] 64 | raw_feature_data = raw_feature_data[feature_cols] 65 | 66 | # resampling at fixed window length. 67 | resampled_raw_features = raw_feature_data.resample(rule=freq) 68 | 69 | # Simple aggregates being prepared. 70 | simple_low_lvl_features = {f: f for f in feature_cfg[file]["simple"]} 71 | simple_aggregates = resampled_raw_features.agg(simple_low_lvl_features) 72 | simple_aggregates.fillna(value=0, inplace=True) 73 | 74 | complex_aggregates = pd.DataFrame() 75 | 76 | # Complex aggregations functions 77 | if "linear" in feature_cfg[file].keys() and feature_cfg[file]['linear']: 78 | # Linear Slope and intercept. 79 | linear_slope = extend_complex_features('linear', resampled_raw_features, feature_cols) 80 | complex_aggregates = pd.concat([complex_aggregates, linear_slope], axis=1) 81 | 82 | if "poly" in feature_cfg[file].keys() and feature_cfg[file]['poly']: 83 | # Poly Coeffs. 84 | poly_coeff = extend_complex_features('poly', resampled_raw_features, feature_cols) 85 | complex_aggregates = pd.concat([complex_aggregates, poly_coeff], axis=1) 86 | 87 | if "iqr" in feature_cfg[file].keys() and feature_cfg[file]['iqr']: 88 | # Inter Quartile Range. 89 | iqr_df = extend_complex_features('iqr', resampled_raw_features, feature_cols) 90 | complex_aggregates = pd.concat([complex_aggregates, iqr_df], axis=1) 91 | 92 | if "kurtosis" in feature_cfg[file].keys() and feature_cfg[file]['kurtosis']: 93 | # Kurtosis. 94 | kurt_df = extend_complex_features('kurtosis', resampled_raw_features, feature_cols) 95 | complex_aggregates = pd.concat([complex_aggregates, kurt_df], axis=1) 96 | 97 | if "mcr" in feature_cfg[file].keys() and feature_cfg[file]['mcr']: 98 | # mean crossign rate. 99 | mcr_df = extend_complex_features('mcr', resampled_raw_features, feature_cols) 100 | complex_aggregates = pd.concat([complex_aggregates, mcr_df], axis=1) 101 | 102 | if "fft" in feature_cfg[file].keys() and feature_cfg[file]['fft']: 103 | # Fourier Transform magnatude spectra. 104 | fft_df = extend_complex_features('fft', resampled_raw_features, feature_cols) 105 | complex_aggregates = pd.concat([complex_aggregates, fft_df], axis=1) 106 | 107 | final_aggregates = pd.concat([simple_aggregates, complex_aggregates], axis=1) 108 | 109 | feature_train_list.append(final_aggregates) 110 | 111 | # resampling stress levels. 112 | resampled_raw_stress_levels = raw_stress_data.resample(rule=freq) 113 | aggregated_stress_levels = resampled_raw_stress_levels.agg({'stress_level': ['min', 'max', 'mean']}) 114 | aggregated_stress_levels.fillna(method='pad', inplace=True) 115 | 116 | if feature_cfg['dow']: 117 | # Extracting Day of the week. 118 | aggregated_stress_levels.insert(loc=0, column='dow', value=simple_aggregates.index.dayofweek) 119 | 120 | # preparing final dataset. 121 | train_data = pd.concat(feature_train_list + [aggregated_stress_levels], axis=1) 122 | train_data.insert(loc=0, column='student_id', value=student_id) 123 | 124 | os.chdir(owd) 125 | os.chdir('../data/aggregated_data') 126 | 127 | if not os.path.isdir("student "+str(student_id)): 128 | os.mkdir("student " + str(student_id)) 129 | 130 | os.chdir("./"+"student " + str(student_id)) 131 | 132 | if freq == 'd': 133 | train_data.to_csv("one_day_aggregate.csv", index=True) -------------------------------------------------------------------------------- /slurm/important_outputs/Classif_kfold_predefined_prev_stress_feature_eng.out: -------------------------------------------------------------------------------- 1 | ############################## predefined split running ############################# 2 | ######################### Classifier LogisticRegression running ####################### 3 | Best Params: {'C': 0.1, 'class_weight': 'balanced', 'fit_intercept': True, 'intercept_scaling': True, 'max_iter': 4, 'n_jobs': -1, 'penalty': 'l1', 'random_state': 300, 'tol': 0.075} 4 | 5 | best score 0.49206349206349204 6 | accuracy: 0.391025641025641 7 | 8 | micro_f1: 0.391025641025641 macro_f1: 0.14444444444444443 weigthed_f1: 0.26246438746438744 9 | 10 | micro_recall: 0.391025641025641 macro_recall: 0.20703296703296706 weigthed_recall: 0.391025641025641 11 | 12 | micro_precision: 0.391025641025641 macro_precision: 0.11330500163452109 weigthed_precision: 0.1992627890797227 13 | 14 | ############################### Confusion Matrix ############################ 15 | [[ 0 0 4 5 0] 16 | [ 0 0 15 0 0] 17 | [ 0 0 58 7 0] 18 | [ 0 0 18 3 0] 19 | [ 0 0 38 8 0]] 20 | 21 | ################################################################################# 22 | ######################### Classifier RandomForestClassifier running ####################### 23 | Best Params: {'class_weight': 'balanced', 'criterion': 'gini', 'max_depth': 20, 'max_features': 10, 'min_samples_split': 7, 'n_estimators': 100, 'n_jobs': -1, 'random_state': 400} 24 | 25 | best score 0.8214285714285714 26 | accuracy: 0.6987179487179487 27 | 28 | micro_f1: 0.6987179487179487 macro_f1: 0.5099771209470403 weigthed_f1: 0.6785863032378072 29 | 30 | micro_recall: 0.6987179487179487 macro_recall: 0.5123204331899984 weigthed_recall: 0.6987179487179487 31 | 32 | micro_precision: 0.6987179487179487 macro_precision: 0.5215009380863039 weigthed_precision: 0.6708519747919373 33 | 34 | ############################### Confusion Matrix ############################ 35 | [[ 0 2 3 0 4] 36 | [ 0 6 6 3 0] 37 | [ 1 2 57 4 1] 38 | [ 0 0 9 11 1] 39 | [ 0 0 3 8 35]] 40 | 41 | ################################################################################# 42 | ######################### Classifier SVM running ####################### 43 | Best Params: {'C': 5, 'class_weight': 'balanced', 'decision_function_shape': 'ovr', 'degree': 2, 'gamma': 1, 'kernel': 'rbf', 'max_iter': 100, 'probability': True, 'random_state': 100, 'tol': 0.1} 44 | 45 | best score 0.1865079365079365 46 | accuracy: 0.23717948717948717 47 | 48 | micro_f1: 0.23717948717948717 macro_f1: 0.1743206266060791 weigthed_f1: 0.15647615474552257 49 | 50 | micro_recall: 0.23717948717948717 macro_recall: 0.3309178743961353 weigthed_recall: 0.23717948717948717 51 | 52 | micro_precision: 0.23717948717948717 macro_precision: 0.12708333333333335 weigthed_precision: 0.12172809829059829 53 | 54 | ############################### Confusion Matrix ############################ 55 | [[ 7 2 0 0 0] 56 | [ 2 5 0 0 8] 57 | [20 15 0 0 30] 58 | [ 4 5 0 0 12] 59 | [15 5 0 1 25]] 60 | 61 | ################################################################################# 62 | ############################## kfold split running ############################# 63 | ######################### Classifier LogisticRegression running ####################### 64 | Best Params: {'C': 0.02, 'class_weight': 'balanced', 'fit_intercept': True, 'intercept_scaling': True, 'max_iter': 3, 'n_jobs': -1, 'penalty': 'l1', 'random_state': 500, 'tol': 0.01} 65 | 66 | best score 0.5059476605868358 67 | accuracy: 0.5967741935483871 68 | 69 | micro_f1: 0.5967741935483871 macro_f1: 0.14949494949494951 weigthed_f1: 0.44607363962202673 70 | 71 | micro_recall: 0.5967741935483871 macro_recall: 0.2 weigthed_recall: 0.5967741935483871 72 | 73 | micro_precision: 0.5967741935483871 macro_precision: 0.11935483870967742 weigthed_precision: 0.35613943808532783 74 | 75 | ############################### Confusion Matrix ############################ 76 | [[ 0 0 6 0 0] 77 | [ 0 0 13 0 0] 78 | [ 0 0 111 0 0] 79 | [ 0 0 31 0 0] 80 | [ 0 0 25 0 0]] 81 | 82 | ################################################################################# 83 | ######################### Classifier RandomForestClassifier running ####################### 84 | Best Params: {'class_weight': 'balanced', 'criterion': 'gini', 'max_depth': 50, 'max_features': 15, 'min_samples_split': 2, 'n_estimators': 100, 'n_jobs': -1, 'random_state': 100} 85 | 86 | best score 0.6986518636003172 87 | accuracy: 0.7096774193548387 88 | 89 | micro_f1: 0.7096774193548389 macro_f1: 0.4998692810457516 weigthed_f1: 0.6950734415630051 90 | 91 | micro_recall: 0.7096774193548387 macro_recall: 0.48148704535801307 weigthed_recall: 0.7096774193548387 92 | 93 | micro_precision: 0.7096774193548387 macro_precision: 0.5591679638191266 weigthed_precision: 0.7183813935501857 94 | 95 | ############################### Confusion Matrix ############################ 96 | [[ 2 1 3 0 0] 97 | [ 2 2 7 1 1] 98 | [ 2 5 100 0 4] 99 | [ 0 2 10 13 6] 100 | [ 0 1 9 0 15]] 101 | 102 | ################################################################################# 103 | ######################### Classifier SVM running ####################### 104 | Best Params: {'C': 5, 'class_weight': 'balanced', 'decision_function_shape': 'ovr', 'degree': 2, 'gamma': 1, 'kernel': 'rbf', 'max_iter': 200, 'probability': True, 'random_state': 100, 'tol': 0.1} 105 | 106 | best score 0.17287866772402855 107 | accuracy: 0.12365591397849462 108 | 109 | micro_f1: 0.12365591397849462 macro_f1: 0.1280295566502463 weigthed_f1: 0.06087495806628175 110 | 111 | micro_recall: 0.12365591397849462 macro_recall: 0.2742464846980976 weigthed_recall: 0.12365591397849462 112 | 113 | micro_precision: 0.12365591397849462 macro_precision: 0.1070472588410484 weigthed_precision: 0.05242123354584089 114 | 115 | ############################### Confusion Matrix ############################ 116 | [[ 1 5 0 0 0] 117 | [ 1 9 0 0 3] 118 | [ 2 58 0 10 41] 119 | [ 2 22 0 1 6] 120 | [ 0 13 0 0 12]] 121 | 122 | ################################################################################# 123 | -------------------------------------------------------------------------------- /src/main/experiments/generalized_global_regressor.py: -------------------------------------------------------------------------------- 1 | from main.experiments.experiment_base import ExperimentBase 2 | from main.feature_processing.generalized_global_data_loader import GeneralizedGlobalDataLoader 3 | from sklearn.model_selection import GridSearchCV 4 | from sklearn.metrics import mean_squared_error 5 | from sklearn.metrics import mean_absolute_error 6 | import pandas as pd 7 | import sys 8 | import warnings 9 | import math 10 | 11 | if not sys.warnoptions: 12 | warnings.simplefilter("ignore") 13 | 14 | 15 | class GeneralizedGlobalRegressor(ExperimentBase): 16 | """ 17 | This Class is for generalized global experiments. 18 | This class will generate all the output files if required. 19 | """ 20 | 21 | def run_experiment(self, train=True, write=True, verbose=False): 22 | 23 | # initializing some things 24 | regressors = [] 25 | temp = [] 26 | 27 | # Selecting Experiment Type 28 | experiment_type = { 29 | "predefined": "Global Generalized with Val and Test", 30 | "loso": "Global Generalized with Loso", 31 | "kfold": "Global Generalized with kfold CV with Randomization" 32 | } 33 | 34 | model_configs = ExperimentBase.get_model_configurations() 35 | 36 | # Getting the model configs and preparing param grid 37 | try: 38 | regressors = self.get_ml_models() 39 | except Exception as e: 40 | print("No ML models Specified: ", e) 41 | 42 | # Printing Details of Experiment 43 | 44 | print("#########################################################################################") 45 | 46 | print( 47 | "Previous Stress Levels:{} Feature Selection:{} Transformer:{} Splitter(s):{}".format(self.previous_stress, 48 | self.feature_selection, 49 | self.transformer, 50 | self.splitter)) 51 | 52 | print("########################################################################################") 53 | 54 | for splitter in self.splitter: 55 | 56 | print("########## {} split running #########".format(splitter)) 57 | 58 | exp = GeneralizedGlobalDataLoader(agg_window=self.agg_window, splitter=splitter, 59 | transformer_type=self.transformer) 60 | 61 | train_x, train_y, test_x, test_y, train_label_dist, test_label_dist = exp.get_data( 62 | stress_agg=self.stress_agg, previous_stress=self.previous_stress, 63 | feature_selection=self.feature_selection, feature_selection_type='regression', 64 | verbose=False) 65 | 66 | if not train: 67 | return 68 | 69 | # Iterating over all the models to test. 70 | for idx, model in enumerate(self.ml_models): 71 | try: 72 | model_config = model_configs[model] 73 | except KeyError: 74 | model_config = {} 75 | 76 | classifier = regressors[idx] 77 | 78 | print("######## Regressor {} running #######".format(model)) 79 | 80 | for loss in self.loss: 81 | 82 | print("######## Loss {} running #######".format(loss)) 83 | 84 | clf = GridSearchCV(classifier, param_grid=model_config, cv=exp.get_val_splitter(), n_jobs=-1, 85 | scoring=loss) 86 | clf.fit(train_x, train_y) 87 | best_estimator = clf.best_estimator_ 88 | pred_y = best_estimator.predict(test_x) 89 | 90 | # Getting the relevant results 91 | best_param = clf.best_params_ 92 | best_score = clf.best_score_ 93 | 94 | mae = mean_absolute_error(test_y, pred_y) 95 | mse = mean_squared_error(test_y, pred_y) 96 | 97 | temp.append( 98 | [self.feature_selection, self.previous_stress, splitter, model, loss, best_score, 99 | mse, math.sqrt(mse), mae, experiment_type[splitter], best_param] 100 | ) 101 | 102 | ######## STD prints ########## 103 | print("Best Params: ", best_param) 104 | print() 105 | print("best score", best_score) 106 | print("mse: ", mse) 107 | print("mae: ", mae) 108 | 109 | if verbose: 110 | print("best params", best_param) 111 | 112 | print("#########################################################################") 113 | 114 | result = pd.DataFrame(temp, columns=["Feature_Selection", "Previous_Stress", "Splitter", "Model", "Loss", 115 | "Best_CrossVal_Score", 116 | "MSE", "RMSE", "MAE", "Experiment_type", "Model_Config"]) 117 | # Generating Base line with the Given Data. 118 | most_freq_accuracy, most_freq_label = ExperimentBase.generate_baseline(test_y) 119 | result["Most_freq_accuracy"] = most_freq_accuracy 120 | result["Most_Freq_Label"] = most_freq_label 121 | 122 | if write: 123 | file_name = "" 124 | 125 | for splitter in self.splitter: 126 | file_name += "_" + str(splitter) 127 | 128 | if self.feature_selection: 129 | file_name += "_with_feature_selection" 130 | else: 131 | file_name += "_without_feature_selection" 132 | 133 | if self.previous_stress: 134 | file_name += "_with_prev_stress" 135 | else: 136 | file_name += "_without_prev_stress" 137 | 138 | ExperimentBase.write_output('GeneralizedGlobalRegressor' + file_name, result, None) 139 | 140 | # Printing results 141 | if verbose: 142 | print("Most Freq Baseline:{}, Most Freq Label: {} ".format(most_freq_accuracy, most_freq_label)) 143 | -------------------------------------------------------------------------------- /slurm/important_outputs/Classif_kfold_predefined_without_prev_stress.out: -------------------------------------------------------------------------------- 1 | ######################################################################################### 2 | Previous Stress Levels:False Feature Selection:True Transformer:normalizer Splitter(s):['predefined', 'kfold'] 3 | ######################################################################################## 4 | ############################## predefined split running ############################# 5 | ######################### Classifier LogisticRegression running ####################### 6 | Best Params: {'C': 0.1, 'class_weight': 'balanced', 'fit_intercept': True, 'intercept_scaling': True, 'max_iter': 3, 'n_jobs': -1, 'penalty': 'l1', 'random_state': 400, 'tol': 0.1} 7 | 8 | best score 0.49603174603174605 9 | accuracy: 0.3974358974358974 10 | 11 | micro_f1: 0.3974358974358974 macro_f1: 0.16804172593646277 weigthed_f1: 0.2808111755480176 12 | 13 | micro_recall: 0.3974358974358974 macro_recall: 0.2358974358974359 weigthed_recall: 0.3974358974358974 14 | 15 | micro_precision: 0.3974358974358974 macro_precision: 0.13055555555555556 weigthed_precision: 0.2171474358974359 16 | 17 | ############################### Confusion Matrix ############################ 18 | [[ 0 0 3 6 0] 19 | [ 0 0 13 2 0] 20 | [ 0 0 55 10 0] 21 | [ 0 0 14 7 0] 22 | [ 0 0 35 11 0]] 23 | 24 | ################################################################################# 25 | ######################### Classifier RandomForestClassifier running ####################### 26 | Best Params: {'class_weight': 'balanced', 'criterion': 'gini', 'max_depth': 20, 'max_features': 20, 'min_samples_split': 3, 'n_estimators': 50, 'n_jobs': -1, 'random_state': 500} 27 | 28 | best score 0.5992063492063492 29 | accuracy: 0.4358974358974359 30 | 31 | micro_f1: 0.4358974358974359 macro_f1: 0.22797906180455732 weigthed_f1: 0.38452511709792514 32 | 33 | micro_recall: 0.4358974358974359 macro_recall: 0.24509316770186335 weigthed_recall: 0.4358974358974359 34 | 35 | micro_precision: 0.4358974358974359 macro_precision: 0.28100079744816586 weigthed_precision: 0.44799845622214046 36 | 37 | ############################### Confusion Matrix ############################ 38 | [[ 0 0 7 2 0] 39 | [ 0 0 15 0 0] 40 | [ 1 3 52 7 2] 41 | [ 0 0 17 3 1] 42 | [ 0 0 23 10 13]] 43 | 44 | ################################################################################# 45 | ######################### Classifier SVM running ####################### 46 | Best Params: {'C': 5, 'class_weight': 'balanced', 'decision_function_shape': 'ovr', 'degree': 2, 'gamma': 0.001, 'kernel': 'rbf', 'max_iter': 150, 'probability': True, 'random_state': 100, 'tol': 0.1} 47 | 48 | best score 0.17857142857142858 49 | accuracy: 0.057692307692307696 50 | 51 | micro_f1: 0.057692307692307696 macro_f1: 0.02181818181818182 weigthed_f1: 0.006293706293706294 52 | 53 | micro_recall: 0.057692307692307696 macro_recall: 0.2 weigthed_recall: 0.057692307692307696 54 | 55 | micro_precision: 0.057692307692307696 macro_precision: 0.011538461538461539 weigthed_precision: 0.0033284023668639054 56 | 57 | ############################### Confusion Matrix ############################ 58 | [[ 9 0 0 0 0] 59 | [15 0 0 0 0] 60 | [65 0 0 0 0] 61 | [21 0 0 0 0] 62 | [46 0 0 0 0]] 63 | 64 | ################################################################################# 65 | ############################## kfold split running ############################# 66 | ######################### Classifier LogisticRegression running ####################### 67 | Best Params: {'C': 5, 'class_weight': 'balanced', 'fit_intercept': True, 'intercept_scaling': True, 'max_iter': 1, 'n_jobs': -1, 'penalty': 'l2', 'random_state': 100, 'tol': 0.1} 68 | 69 | best score 0.4972244250594766 70 | accuracy: 0.5967741935483871 71 | 72 | micro_f1: 0.5967741935483871 macro_f1: 0.14949494949494951 weigthed_f1: 0.44607363962202673 73 | 74 | micro_recall: 0.5967741935483871 macro_recall: 0.2 weigthed_recall: 0.5967741935483871 75 | 76 | micro_precision: 0.5967741935483871 macro_precision: 0.11935483870967742 weigthed_precision: 0.35613943808532783 77 | 78 | ############################### Confusion Matrix ############################ 79 | [[ 0 0 6 0 0] 80 | [ 0 0 13 0 0] 81 | [ 0 0 111 0 0] 82 | [ 0 0 31 0 0] 83 | [ 0 0 25 0 0]] 84 | 85 | ################################################################################# 86 | ######################### Classifier RandomForestClassifier running ####################### 87 | Best Params: {'class_weight': 'balanced', 'criterion': 'gini', 'max_depth': 20, 'max_features': 5, 'min_samples_split': 2, 'n_estimators': 200, 'n_jobs': -1, 'random_state': 200} 88 | 89 | best score 0.4282315622521808 90 | accuracy: 0.510752688172043 91 | 92 | micro_f1: 0.510752688172043 macro_f1: 0.18326751499195554 weigthed_f1: 0.44946378103959944 93 | 94 | micro_recall: 0.510752688172043 macro_recall: 0.19907003777971521 weigthed_recall: 0.510752688172043 95 | 96 | micro_precision: 0.510752688172043 macro_precision: 0.1756338899196042 weigthed_precision: 0.4067668122967662 97 | 98 | ############################### Confusion Matrix ############################ 99 | [[ 0 0 6 0 0] 100 | [ 1 0 12 0 0] 101 | [ 0 1 89 10 11] 102 | [ 0 1 22 6 2] 103 | [ 0 1 18 6 0]] 104 | 105 | ################################################################################# 106 | ######################### Classifier SVM running ####################### 107 | Best Params: {'C': 0.001, 'class_weight': 'balanced', 'decision_function_shape': 'ovr', 'degree': 2, 'gamma': 1, 'kernel': 'linear', 'max_iter': 150, 'probability': True, 'random_state': 100, 'tol': 0.1} 108 | 109 | best score 0.168913560666138 110 | accuracy: 0.13440860215053763 111 | 112 | micro_f1: 0.13440860215053763 macro_f1: 0.047393364928909956 weigthed_f1: 0.031850379656525506 113 | 114 | micro_recall: 0.13440860215053763 macro_recall: 0.2 weigthed_recall: 0.13440860215053763 115 | 116 | micro_precision: 0.13440860215053763 macro_precision: 0.026881720430107524 weigthed_precision: 0.018065672332061508 117 | 118 | ############################### Confusion Matrix ############################ 119 | [[ 0 0 0 0 6] 120 | [ 0 0 0 0 13] 121 | [ 0 0 0 0 111] 122 | [ 0 0 0 0 31] 123 | [ 0 0 0 0 25]] 124 | 125 | ################################################################################# 126 | -------------------------------------------------------------------------------- /src/main/feature_processing/generalized_global_data_loader.py: -------------------------------------------------------------------------------- 1 | import pandas as pd 2 | import numpy as np 3 | from main.feature_processing.data_loader_base import DataLoaderBase 4 | from main.feature_processing.transformer import get_transformer 5 | from sklearn.model_selection import LeaveOneGroupOut 6 | from sklearn.model_selection import StratifiedKFold 7 | from main.feature_processing.feature_selection import select_features 8 | 9 | 10 | class GeneralizedGlobalDataLoader(DataLoaderBase): 11 | train_data = pd.DataFrame() 12 | val_data = pd.DataFrame() 13 | test_data = pd.DataFrame() 14 | train_indices = pd.DataFrame() 15 | val_indices = pd.DataFrame() 16 | student_count = 0 17 | students = pd.DataFrame() 18 | train_x = pd.DataFrame() 19 | train_y = pd.DataFrame() 20 | 21 | def get_data(self, stress_agg='min', previous_stress=True, feature_selection=True, 22 | feature_selection_type='classification', verbose=False, segragate_by_median=False, truncate_sq=False): 23 | 24 | file_list = DataLoaderBase.get_file_list(self.aggregation_window) 25 | print("Num students for data", len(file_list)) 26 | print("Student info \n", file_list) 27 | 28 | if truncate_sq: 29 | file_list = file_list[:3] 30 | 31 | self.student_count = len(file_list) 32 | 33 | for idx, file in enumerate(file_list): 34 | 35 | if self.aggregation_window == 'd': 36 | temp_data = pd.read_csv(file, 37 | index_col=0, 38 | header=[0, 1]) 39 | 40 | if previous_stress: 41 | # Modelling previous stress level to the data frame 42 | previous_stress_levels = temp_data.loc[:, ("stress_level", stress_agg)] 43 | previous_stress_levels_len = len(previous_stress_levels) 44 | previous_stress_levels = [2] + list(previous_stress_levels) 45 | previous_stress_levels = previous_stress_levels[:previous_stress_levels_len] 46 | index = len(temp_data.columns) - 3 47 | 48 | temp_data.insert(index, "previous_stress_level", previous_stress_levels) 49 | 50 | if self.splitter == "predefined": 51 | self.train_data = self.train_data.append(temp_data[:'2013-05-01']) 52 | self.val_data = self.val_data.append(temp_data['2013-05-01':'2013-05-14']) 53 | self.test_data = self.test_data.append(temp_data['2013-05-15':]) 54 | elif self.splitter == "loso" or self.splitter == "kfold": 55 | if idx == 1 or ('student 10' in file) or ( 56 | ('student 20' in file) or ('student 20' in file) or ('student 41' in file) and idx != 1): 57 | self.test_data = self.test_data.append(temp_data) 58 | else: 59 | self.train_data = self.train_data.append(temp_data) 60 | 61 | # Now that the data has been read let us produce test train split, since it is global generalized we 62 | 63 | if self.splitter == "predefined": 64 | self.train_data["set"] = "training_set" 65 | self.val_data["set"] = "val_set" 66 | self.train_data = self.train_data.append(self.val_data, ignore_index=True) 67 | self.train_data.reset_index(drop=True) 68 | self.train_indices = self.train_data[self.train_data['set'] == "training_set"].index.values 69 | self.val_indices = self.train_data[self.train_data['set'] == "val_set"].index.values 70 | self.train_data.drop(columns="set", inplace=True) 71 | 72 | # Fixing Inf Values, NaN values in df. 73 | self.train_data.replace(np.inf, 10000000, inplace=True) 74 | self.train_data.replace(-np.inf, -10000000, inplace=True) 75 | self.train_data.fillna(method='pad', inplace=True) 76 | self.train_data.fillna(value=0, inplace=True) 77 | 78 | self.test_data.replace(np.inf, 10000000, inplace=True) 79 | self.test_data.replace(-np.inf, -10000000, inplace=True) 80 | self.test_data.fillna(method='pad', inplace=True) 81 | self.test_data.fillna(value=0, inplace=True) 82 | 83 | # Bootstrapping from training data. 84 | self.train_data = self.train_data.sample(frac=0.9, replace=True) 85 | 86 | # Slicing our t 87 | train_x, train_y = self.train_data.iloc[:, :-3], self.train_data.loc[:, ("stress_level", stress_agg)] 88 | test_x, test_y = self.test_data.iloc[:, :-3], self.test_data.loc[:, ("stress_level", stress_agg)] 89 | 90 | # Calculating Label Distribution for train and test. 91 | train_label_dist = train_y.value_counts() 92 | test_label_dist = test_y.value_counts() 93 | 94 | # Changing mapping to adjusted stress values. 95 | train_y = train_y.apply(DataLoaderBase.adjust_stress_values) 96 | test_y = test_y.apply(DataLoaderBase.adjust_stress_values) 97 | 98 | if segragate_by_median: 99 | # Segragate by media stress. 100 | train_y = train_y.apply(DataLoaderBase.segregate_y_labels_as_median) 101 | test_y = test_y.apply(DataLoaderBase.segregate_y_labels_as_median) 102 | 103 | # Selecting Features 104 | if feature_selection: 105 | train_x, train_y, test_x, test_y = select_features(train_x, train_y, test_x, test_y, 106 | selection_type=feature_selection_type, num_features=20, 107 | verbose=verbose) 108 | 109 | self.students = train_x.iloc[:, 0] 110 | 111 | # Transforming Data by getting custom transformer. 112 | transformer = get_transformer(self.transformer_type) 113 | train_x = pd.DataFrame(transformer.fit_transform(train_x), columns=train_x.columns) 114 | test_x = pd.DataFrame(transformer.fit_transform(test_x), columns=test_x.columns) 115 | 116 | self.train_x = train_x 117 | self.train_y = train_y 118 | 119 | if verbose: 120 | print("train_data_len: {}, val_data_len: {}, test_data_len: {}".format(len(self.train_data), 121 | len(self.val_data), 122 | len(self.test_data))) 123 | print() 124 | print("Is NaN", self.train_data.isnull().any(axis=1).any()) 125 | print() 126 | 127 | return self.train_x, self.train_y, test_x, test_y, train_label_dist, test_label_dist 128 | 129 | def get_val_splitter(self): 130 | if self.splitter == "predefined": 131 | return self.__get_predefined_splitter() 132 | elif self.splitter == "loso": 133 | return LeaveOneGroupOut().split(self.train_x, groups=self.students) 134 | elif self.splitter == 'kfold': 135 | return StratifiedKFold(shuffle=False, n_splits=5).split(X=self.train_x, y=self.train_y) 136 | else: 137 | return self.__get_predefined_splitter() 138 | 139 | def __get_predefined_splitter(self): 140 | 141 | yield (self.train_indices, self.val_indices) -------------------------------------------------------------------------------- /src/main/experiments/generalized_global_classifier.py: -------------------------------------------------------------------------------- 1 | from main.experiments.experiment_base import ExperimentBase 2 | from main.feature_processing.generalized_global_data_loader import GeneralizedGlobalDataLoader 3 | from sklearn.model_selection import GridSearchCV 4 | from sklearn.metrics import accuracy_score 5 | from sklearn.metrics import f1_score 6 | from sklearn.metrics import recall_score 7 | from sklearn.metrics import precision_score 8 | from sklearn.metrics import confusion_matrix 9 | import pandas as pd 10 | import sys 11 | import warnings 12 | 13 | if not sys.warnoptions: 14 | warnings.simplefilter("ignore") 15 | 16 | 17 | class GeneralizedGlobalClassifier(ExperimentBase): 18 | """ 19 | This Class is for generalized global experiments. 20 | This class will generate all the output files if required. 21 | """ 22 | 23 | def run_experiment(self, train=True, write=True, verbose=False): 24 | 25 | # initializing some things 26 | classifiers = [] 27 | temp = [] 28 | 29 | # Selecting Experiment Type 30 | experiment_type = { 31 | "predefined": "Global Generalized with Val and Test", 32 | "loso": "Global Generalized with Loso", 33 | "kfold": "Global Generalized with kfold CV with Randomization" 34 | } 35 | 36 | model_configs = ExperimentBase.get_model_configurations() 37 | 38 | # Getting the model configs and preparing param grid 39 | try: 40 | classifiers = self.get_ml_models() 41 | except Exception as e: 42 | print("No ML models Specified:", e) 43 | 44 | # Printing Details of Experiment 45 | 46 | print("#########################################################################################") 47 | 48 | print( 49 | "Previous Stress Levels:{} Feature Selection:{} Transformer:{} Splitter(s):{}".format(self.previous_stress, 50 | self.feature_selection, 51 | self.transformer, 52 | self.splitter)) 53 | 54 | print("########################################################################################") 55 | 56 | for splitter in self.splitter: 57 | 58 | print("############################## {} split running #############################".format(splitter)) 59 | 60 | exp = GeneralizedGlobalDataLoader(agg_window=self.agg_window, splitter=splitter, 61 | transformer_type=self.transformer) 62 | train_x, train_y, test_x, test_y, train_label_dist, test_label_dist = exp.get_data( 63 | stress_agg=self.stress_agg, previous_stress=self.previous_stress, 64 | feature_selection=self.feature_selection, feature_selection_type='classification', verbose=verbose) 65 | 66 | if not train: 67 | return 68 | 69 | # Iterating over all the models to test. 70 | for idx, model in enumerate(self.ml_models): 71 | try: 72 | model_config = model_configs[model] 73 | except KeyError: 74 | model_config = {} 75 | 76 | classifier = classifiers[idx] 77 | 78 | print("######################### Classifier {} running #######################".format(model)) 79 | 80 | clf = GridSearchCV(classifier, param_grid=model_config, cv=exp.get_val_splitter(), n_jobs=-1, 81 | scoring="accuracy") 82 | clf.fit(train_x, train_y) 83 | best_estimator = clf.best_estimator_ 84 | pred_y = best_estimator.predict(test_x) 85 | 86 | # Getting the relevant results 87 | best_param = clf.best_params_ 88 | best_score = clf.best_score_ 89 | accuracy = accuracy_score(test_y, pred_y) 90 | 91 | # f1 scores. 92 | micro_f1 = f1_score(test_y, pred_y, average="micro") 93 | macro_f1 = f1_score(test_y, pred_y, average="macro") 94 | weighted_f1 = f1_score(test_y, pred_y, average="weighted") 95 | 96 | # recall 97 | micro_recall = recall_score(test_y, pred_y, average="micro") 98 | macro_recall = recall_score(test_y, pred_y, average="macro") 99 | weighted_recall = recall_score(test_y, pred_y, average="weighted") 100 | 101 | # Precision. 102 | micro_precision = precision_score(test_y, pred_y, average='micro') 103 | macro_precision = precision_score(test_y, pred_y, average='macro') 104 | weighted_precision = precision_score(test_y, pred_y, average='weighted') 105 | 106 | confusion = confusion_matrix(test_y, pred_y) 107 | 108 | temp.append( 109 | [self.feature_selection, self.previous_stress, splitter, model, best_score, accuracy, micro_f1, macro_f1, 110 | weighted_f1, 111 | micro_recall, macro_recall, weighted_recall, micro_precision, macro_precision, 112 | weighted_precision, confusion, experiment_type[splitter], best_param] 113 | ) 114 | 115 | ######## STD prints ########## 116 | print("Best Params: ", best_param) 117 | print() 118 | print("best score", best_score) 119 | print("accuracy: ", accuracy) 120 | print("") 121 | print("micro_f1: {} macro_f1: {} weigthed_f1: {}".format(micro_f1, 122 | macro_f1, 123 | weighted_f1)) 124 | print("") 125 | print("micro_recall: {} macro_recall: {} weigthed_recall: {}".format(micro_recall, 126 | macro_recall, 127 | weighted_recall)) 128 | print("") 129 | print("micro_precision: {} macro_precision: {} weigthed_precision: {}".format(micro_precision, 130 | macro_precision, 131 | weighted_precision)) 132 | print("") 133 | print("############################### Confusion Matrix ############################") 134 | print(confusion) 135 | print("") 136 | if verbose: 137 | print("best params", best_param) 138 | 139 | print("#################################################################################") 140 | 141 | result = pd.DataFrame(temp, 142 | columns=["Feature_Engineering", "Previous_Stress", "Splitter", "Model", "Best_CrossVal_Score", 143 | "Test_Accuracy", "Micro_f1", "Macro_f1", "Weighted_f1", "Micro_recall", 144 | "Macro_recall", "Weighted_recall", "Micro_precision", 145 | "Macro_precision", "Weighted_precision", "Confusion", 146 | "Experiment_Type", "Model_Config"]) 147 | 148 | # Generating Base line with the Given Data. 149 | most_freq_accuracy, most_freq_label = ExperimentBase.generate_baseline(test_y) 150 | result["Most_freq_accuracy"] = most_freq_accuracy 151 | result["Most_Freq_Label"] = most_freq_label 152 | 153 | if write: 154 | file_name = "" 155 | 156 | for splitter in self.splitter: 157 | file_name += "_" + str(splitter) 158 | 159 | if self.feature_selection: 160 | file_name += "_with_feature_selection" 161 | else: 162 | file_name += "_without_feature_selection" 163 | 164 | if self.previous_stress: 165 | file_name += "_with_prev_stress" 166 | else: 167 | file_name += "_without_prev_stress" 168 | 169 | ExperimentBase.write_output("GeneralizedGlobalClassifier" + file_name, result, None) 170 | 171 | # Printing results 172 | if verbose: 173 | print("Most Freq Baseline:{}, Most Freq Label: {} ".format(most_freq_accuracy, most_freq_label)) 174 | -------------------------------------------------------------------------------- /src/main/experiments/confidence_interval_loso_kfold.py: -------------------------------------------------------------------------------- 1 | from main.experiments.experiment_base import ExperimentBase 2 | from main.feature_processing.generalized_global_data_loader import GeneralizedGlobalDataLoader 3 | from sklearn.metrics import accuracy_score 4 | from sklearn.metrics import f1_score 5 | from sklearn.metrics import recall_score 6 | from sklearn.metrics import precision_score 7 | from sklearn.metrics import confusion_matrix as cm 8 | from definition import ROOT_DIR 9 | import pandas as pd 10 | import sys 11 | import warnings 12 | 13 | if not sys.warnoptions: 14 | warnings.simplefilter("ignore") 15 | 16 | 17 | class ConfidenceIntervalsResult(ExperimentBase): 18 | """ 19 | This Class is for generalized global experiments. 20 | This class will generate all the output files if required. 21 | """ 22 | 23 | def run_experiment(self, train=True, write=True, verbose=False): 24 | results = pd.DataFrame() 25 | exp_count = 1000 26 | 27 | features =[('previous_stress_level', ''), ('sum', 'hours_slept'), 28 | ('sum', 'activity_inference'), ('kurtosis', 'activity_inference'), 29 | ('mcr', 'audio_activity_inference'), ('var', 'conv_duration_min'), 30 | ('sum', 'dark_duration_min'), ('student_id', 'Unnamed: 1_level_1'), 31 | ('poly_b', 'phonelock_duration_min'), ('poly_b', 'dark_duration_min'), 32 | ('poly_c', 'conv_duration_min'), ('median', 'phonecharge_duration_min'), 33 | ('linear_m', 'dark_duration_min'), ('sum', 'phonelock_duration_min'), 34 | ('sum', 'conv_duration_min'), ('median', 'dark_duration_min'), 35 | ('mean', 'phonelock_duration_min'), ('mcr', 'activity_inference'), 36 | ('sum', 'call_recorded'), ('linear_m', 'phonecharge_duration_min'), 37 | ('median', 'phonelock_duration_min'), 38 | ('poly_b', 'phonecharge_duration_min'), ('sum', 'sms_instance'), 39 | ('linear_m', 'phonelock_duration_min')] 40 | 41 | 42 | print("#########################################################################################") 43 | 44 | print( 45 | "Previous Stress Levels:{} Feature Selection:{} Transformer:{} Splitter(s):{}".format(self.previous_stress, 46 | self.feature_selection, 47 | self.transformer, 48 | self.splitter)) 49 | 50 | print("########################################################################################") 51 | print("################################### Truncate Sq : {} ###################################".format( 52 | self.exp_config["truncate_sq"])) 53 | 54 | for i in range(exp_count): 55 | 56 | for segragate_by_median in [True, False]: 57 | 58 | for splitter in self.splitter: 59 | 60 | print("############################## {} split running #############################".format(splitter)) 61 | 62 | exp = GeneralizedGlobalDataLoader(agg_window=self.agg_window, splitter=splitter, 63 | transformer_type=self.transformer) 64 | 65 | if splitter == "kfold": 66 | ## For Kfold cross val, use LogisticRegression for feature elimination. 67 | train_x, train_y, test_x, test_y, train_label_dist, test_label_dist = exp.get_data( 68 | stress_agg=self.stress_agg, previous_stress=True, 69 | feature_selection=True, verbose=verbose, 70 | segragate_by_median=segragate_by_median, truncate_sq=self.exp_config["truncate_sq"]) 71 | else: 72 | ## Above selected feature otherwise. 73 | train_x, train_y, test_x, test_y, train_label_dist, test_label_dist = exp.get_data( 74 | stress_agg=self.stress_agg, previous_stress=True, 75 | feature_selection=False, verbose=verbose, 76 | segragate_by_median=segragate_by_median, truncate_sq=self.exp_config["truncate_sq"]) 77 | 78 | # Selecting Features. 79 | train_x, test_x = train_x[features], test_x[features] 80 | 81 | if not train: 82 | return 83 | 84 | for classifier in self.get_ml_models(): 85 | classifier_name = classifier.__class__.__name__ 86 | param = self.exp_config[classifier_name] 87 | classifier.set_params(**param) 88 | 89 | print("############################## {} classifier running #############################".format( 90 | classifier_name)) 91 | 92 | # Initiaziling Metrics lists/ 93 | 94 | accuracy = [] 95 | micro_f1 = [] 96 | macro_f1 = [] 97 | weighted_f1 = [] 98 | 99 | # recall 100 | micro_recall = [] 101 | macro_recall = [] 102 | weighted_recall = [] 103 | 104 | # Precision. 105 | micro_precision = [] 106 | macro_precision = [] 107 | weighted_precission = [] 108 | 109 | confusion_matrix = [] 110 | 111 | most_freq_accuracy = [] 112 | most_freq_label = [] 113 | 114 | for train_idx, test_idx in exp.get_val_splitter(): 115 | 116 | # Preparing splits. 117 | split_train_x, split_train_y = train_x.iloc[train_idx], train_y.iloc[train_idx] 118 | split_test_x, split_test_y = train_x.iloc[test_idx], train_y.iloc[test_idx] 119 | 120 | # Fitting Classifier 121 | classifier.fit(split_train_x, split_train_y) 122 | split_pred_y = classifier.predict(split_test_x) 123 | 124 | ############################### Metrics ############################### 125 | accuracy.append(accuracy_score(split_test_y, split_pred_y)) 126 | 127 | # f1 scores. 128 | micro_f1.append(f1_score(split_test_y, split_pred_y, average="micro")) 129 | macro_f1.append(f1_score(split_test_y, split_pred_y, average="macro")) 130 | weighted_f1.append(f1_score(split_test_y, split_pred_y, average="weighted")) 131 | 132 | # recall 133 | micro_recall.append(recall_score(split_test_y, split_pred_y, average="micro")) 134 | macro_recall.append(recall_score(split_test_y, split_pred_y, average="macro")) 135 | weighted_recall.append(recall_score(split_test_y, split_pred_y, average="weighted")) 136 | 137 | # Precision. 138 | micro_precision.append(precision_score(split_test_y, split_pred_y, average='micro')) 139 | macro_precision.append(precision_score(split_test_y, split_pred_y, average='macro')) 140 | weighted_precission.append(precision_score(split_test_y, split_pred_y, average="weighted")) 141 | 142 | confusion_matrix.append(cm(y_true=split_test_y, y_pred=split_pred_y)) 143 | 144 | # Generating Base line with the Given Data. 145 | mfa, mfl = ExperimentBase.generate_baseline(test_y) 146 | most_freq_accuracy.append(mfa) 147 | most_freq_label.append(mfl) 148 | 149 | metrics = pd.DataFrame({ 150 | "segragate_by_median": [segragate_by_median], 151 | "previous_stress": [self.previous_stress], 152 | "splitter": [splitter], 153 | "classifier": [classifier_name], 154 | "avg_accuracy": [sum(accuracy) / len(accuracy)], 155 | "avg_micro_f1": [sum(micro_f1) / len(micro_f1)], 156 | "avg_macro_f1": [sum(macro_f1) / len(macro_f1)], 157 | "avg_weighted_f1": [sum(weighted_f1) / len(weighted_f1)], 158 | "avg_micro_precision": [sum(micro_precision) / len(micro_precision)], 159 | "avg_macro_precision": [sum(macro_precision) / len(macro_precision)], 160 | "avg_weighted_precision": [sum(weighted_precission) / len(weighted_precission)], 161 | "avg_micro_recall": [sum(micro_recall) / len(micro_recall)], 162 | "avg_macro_recall": [sum(macro_recall) / len(macro_recall)], 163 | "avg_weighted_recall": [sum(weighted_recall) / len(weighted_recall)] 164 | 165 | }) 166 | 167 | with pd.option_context('display.max_rows', None, 'display.max_columns', None): 168 | print(metrics) 169 | 170 | results = results.append(metrics.copy(), ignore_index=True) 171 | 172 | ################################ Writing to csv ################################ 173 | results.to_csv(path_or_buf=ROOT_DIR + "/outputs/ConfidenceInterval/results.csv") 174 | -------------------------------------------------------------------------------- /src/main/experiments/classification_feature_selection.py: -------------------------------------------------------------------------------- 1 | from main.experiments.experiment_base import ExperimentBase 2 | from main.feature_processing.generalized_global_data_loader import GeneralizedGlobalDataLoader 3 | from sklearn.feature_selection import RFE 4 | from sklearn.ensemble import RandomForestClassifier 5 | from sklearn.metrics import accuracy_score 6 | from sklearn.metrics import f1_score 7 | from sklearn.metrics import recall_score 8 | from sklearn.metrics import precision_score 9 | from sklearn.metrics import confusion_matrix as cm 10 | from definition import ROOT_DIR 11 | import pandas as pd 12 | import sys 13 | import warnings 14 | 15 | if not sys.warnoptions: 16 | warnings.simplefilter("ignore") 17 | 18 | 19 | class GeneralizedFeatureSelection(ExperimentBase): 20 | """ 21 | This Class is for generalized global experiments. 22 | This class will generate all the output files if required. 23 | """ 24 | 25 | def run_experiment(self, train=True, write=True, verbose=False): 26 | 27 | # initializing some things 28 | accuracy = [] 29 | micro_f1 = [] 30 | macro_f1 = [] 31 | weighted_f1 = [] 32 | 33 | # recall 34 | micro_recall = [] 35 | macro_recall = [] 36 | weighted_recall = [] 37 | 38 | # Precision. 39 | micro_precision = [] 40 | macro_precision = [] 41 | weighted_precision = [] 42 | 43 | feature_selection_rankings = [] 44 | feature_selection_masks = [] 45 | confusion_matrix = [] 46 | 47 | most_freq_accuracy = [] 48 | most_freq_label = [] 49 | 50 | # Selecting Experiment Type 51 | experiment_type = { 52 | "predefined": "Global Generalized with Val and Test", 53 | "loso": "Global Generalized with Loso", 54 | "kfold": "Global Generalized with kfold CV with Randomization" 55 | } 56 | 57 | min_features_to_be_selected = 20 58 | 59 | ## This is feature selection experiments, model will be hardcoded to one of the random forests. 60 | 61 | print("#########################################################################################") 62 | 63 | print( 64 | "Previous Stress Levels:{} Feature Selection:{} Transformer:{} Splitter(s):{}".format(self.previous_stress, 65 | self.feature_selection, 66 | self.transformer, 67 | self.splitter)) 68 | 69 | print("########################################################################################") 70 | 71 | for splitter in self.splitter: 72 | 73 | print("############################## {} split running #############################".format(splitter)) 74 | 75 | exp = GeneralizedGlobalDataLoader(agg_window=self.agg_window, splitter=splitter, 76 | transformer_type=self.transformer) 77 | train_x, train_y, test_x, test_y, train_label_dist, test_label_dist = exp.get_data( 78 | stress_agg=self.stress_agg, previous_stress=self.previous_stress, 79 | feature_selection=self.feature_selection, feature_selection_type='classification', verbose=verbose) 80 | 81 | if not train: 82 | return 83 | 84 | n_estimators = self.exp_config["RandomForestClassifier"].get("n_estimators", 50) 85 | max_features = self.exp_config["RandomForestClassifier"].get("max_features", 20) 86 | criterion = self.exp_config["RandomForestClassifier"].get("criterion", "gini") 87 | max_depth = self.exp_config["RandomForestClassifier"].get("max_depth", 100) 88 | random_state = self.exp_config["RandomForestClassifier"].get("random_state", 100) 89 | min_samples_split = self.exp_config["RandomForestClassifier"].get("min_samples_split", 5) 90 | class_weight = self.exp_config["RandomForestClassifier"].get("class_weight", "balanced") 91 | n_jobs = -1 92 | 93 | val_generator = exp.get_val_splitter() 94 | 95 | for train_idx, test_idx in val_generator: 96 | 97 | random_forest_classifier = RandomForestClassifier( 98 | 99 | n_estimators=n_estimators, 100 | max_features=max_features, 101 | criterion=criterion, 102 | max_depth=max_depth, 103 | random_state=random_state, 104 | min_samples_split=min_samples_split, 105 | class_weight=class_weight, 106 | n_jobs=n_jobs 107 | 108 | ) 109 | 110 | selector = RFE(estimator=random_forest_classifier, step=1, n_features_to_select=20) 111 | split_train_x, split_train_y = train_x.iloc[train_idx], train_y.iloc[train_idx] 112 | split_test_x, split_test_y = train_x.iloc[test_idx], train_y.iloc[test_idx] 113 | 114 | # Removing Student id as a feature from the data set. 115 | split_train_x = split_train_x.iloc[:, 1:] 116 | split_test_x = split_test_x.iloc[:, 1:] 117 | 118 | # Fitting RFE. 119 | selector.fit(split_train_x, split_train_y) 120 | feature_selection_rankings.append(list(selector.ranking_)) 121 | feature_selection_masks.append(list(selector.support_)) 122 | 123 | # training the model with selected features. 124 | split_train_x, split_test_x = split_train_x.iloc[:, selector.support_], split_test_x.iloc[:, 125 | selector.support_] 126 | 127 | random_forest_classifier.fit(split_train_x, split_train_y) 128 | split_pred_y = random_forest_classifier.predict(split_test_x) 129 | 130 | ############################### Metrics ############################### 131 | accuracy.append(accuracy_score(split_test_y, split_pred_y)) 132 | 133 | # f1 scores. 134 | micro_f1.append(f1_score(split_test_y, split_pred_y, average="micro")) 135 | macro_f1.append(f1_score(split_test_y, split_pred_y, average="macro")) 136 | weighted_f1.append(f1_score(split_test_y, split_pred_y, average="weighted")) 137 | 138 | # recall 139 | micro_recall.append(recall_score(split_test_y, split_pred_y, average="micro")) 140 | macro_recall.append(recall_score(split_test_y, split_pred_y, average="macro")) 141 | weighted_recall.append(recall_score(split_test_y, split_pred_y, average="weighted")) 142 | 143 | # Precision. 144 | micro_precision.append(precision_score(split_test_y, split_pred_y, average='micro')) 145 | macro_precision.append(precision_score(split_test_y, split_pred_y, average='macro')) 146 | weighted_precision.append(precision_score(split_test_y, split_pred_y, average='weighted')) 147 | confusion_matrix.append(cm(y_true=split_test_y, y_pred=split_pred_y)) 148 | 149 | # Generating Base line with the Given Data. 150 | mfa, mfl= ExperimentBase.generate_baseline(test_y) 151 | most_freq_accuracy.append(mfa) 152 | most_freq_label.append(mfl) 153 | 154 | metrics = pd.DataFrame({"accuracy": accuracy, 155 | "micro_f1": micro_f1, 156 | "macro_f1": macro_f1, 157 | "weighted_f1": weighted_f1, 158 | "micro_recall": micro_recall, 159 | "macro_recall": macro_recall, 160 | "weighted_recall": weighted_recall, 161 | "micro_precision": micro_precision, 162 | "macro_precision": macro_precision, 163 | "weighted_precision": weighted_precision, 164 | "confusion_matrix": confusion_matrix} 165 | ) 166 | 167 | metrics.append(metrics.mean(), ignore_index=True) 168 | 169 | feature_selection_rankings_pd = pd.DataFrame(feature_selection_rankings, columns=train_x.columns) 170 | feature_selection_masks_pd = pd.DataFrame(feature_selection_masks, columns=train_x.columns) 171 | feature_selection_rankings_pd = feature_selection_rankings_pd.append(feature_selection_rankings_pd.mean(), ignore_index=True) 172 | feature_selection_masks_pd = feature_selection_masks_pd.append(feature_selection_masks_pd.mean(), ignore_index=True) 173 | 174 | ########################## writing to csv ########################## 175 | metrics.to_csv(path_or_buf=ROOT_DIR+"/outputs/FeatureSelection/metrics.csv") 176 | feature_selection_rankings_pd.to_csv(path_or_buf=ROOT_DIR+"/outputs/FeatureSelection/rankings.csv") 177 | feature_selection_masks_pd.to_csv(path_or_buf=ROOT_DIR + "/outputs/FeatureSelection/masks.csv") 178 | 179 | print("AVG accuracy: ", sum(accuracy)/len(accuracy)) 180 | print("AVG macro F1: ", sum(macro_f1)/len(macro_f1)) 181 | print("AVG microF1: ", sum(micro_f1)/len(micro_f1)) 182 | print("AVG weighted F1: ", sum(weighted_f1)/len(weighted_f1)) 183 | 184 | print("AVG macro precision: ", sum(macro_precision)/len(macro_precision)) 185 | print("AVG micro precision: ", sum(micro_precision)/len(micro_precision)) 186 | print("AVG weighted precision: ", sum(weighted_precision)/len(weighted_precision)) 187 | 188 | print("AVG macro recall: ", sum(macro_recall)/len(macro_recall)) 189 | print("AVG micro recall: ", sum(micro_recall)/len(micro_recall)) 190 | print("AVG weighted recall: ", sum(weighted_recall)/len(weighted_recall)) 191 | 192 | -------------------------------------------------------------------------------- /src/main/data/aggregated_data/student 20/one_day_aggregate.csv: -------------------------------------------------------------------------------- 1 | ,student_id,sum,mean,std,median,var,skew,linear_m,linear_c,poly_a,poly_b,poly_c,iqr,kurtosis,mcr,sum,mean,std,median,var,skew,linear_m,linear_c,poly_a,poly_b,poly_c,iqr,kurtosis,mcr,sum,sum,mean,std,median,var,skew,linear_m,linear_c,poly_a,poly_b,poly_c,iqr,kurtosis,mcr,sum,mean,std,median,var,skew,linear_m,linear_c,poly_a,poly_b,poly_c,iqr,kurtosis,mcr,mean,mean,min,min,max,max,sum,mean,std,median,var,skew,linear_m,linear_c,poly_a,poly_b,poly_c,iqr,kurtosis,mcr,sum,mean,std,median,var,skew,linear_m,linear_c,poly_a,poly_b,poly_c,iqr,kurtosis,mcr,sum,sum,mean,mean,min,min,max,max,sum,dow,stress_level,stress_level,stress_level 2 | ,,activity_inference,activity_inference,activity_inference,activity_inference,activity_inference,activity_inference,activity_inference,activity_inference,activity_inference,activity_inference,activity_inference,activity_inference,activity_inference,activity_inference,audio_activity_inference,audio_activity_inference,audio_activity_inference,audio_activity_inference,audio_activity_inference,audio_activity_inference,audio_activity_inference,audio_activity_inference,audio_activity_inference,audio_activity_inference,audio_activity_inference,audio_activity_inference,audio_activity_inference,audio_activity_inference,call_recorded,conv_duration_min,conv_duration_min,conv_duration_min,conv_duration_min,conv_duration_min,conv_duration_min,conv_duration_min,conv_duration_min,conv_duration_min,conv_duration_min,conv_duration_min,conv_duration_min,conv_duration_min,conv_duration_min,dark_duration_min,dark_duration_min,dark_duration_min,dark_duration_min,dark_duration_min,dark_duration_min,dark_duration_min,dark_duration_min,dark_duration_min,dark_duration_min,dark_duration_min,dark_duration_min,dark_duration_min,dark_duration_min,latitude,longitude,latitude,longitude,latitude,longitude,phonecharge_duration_min,phonecharge_duration_min,phonecharge_duration_min,phonecharge_duration_min,phonecharge_duration_min,phonecharge_duration_min,phonecharge_duration_min,phonecharge_duration_min,phonecharge_duration_min,phonecharge_duration_min,phonecharge_duration_min,phonecharge_duration_min,phonecharge_duration_min,phonecharge_duration_min,phonelock_duration_min,phonelock_duration_min,phonelock_duration_min,phonelock_duration_min,phonelock_duration_min,phonelock_duration_min,phonelock_duration_min,phonelock_duration_min,phonelock_duration_min,phonelock_duration_min,phonelock_duration_min,phonelock_duration_min,phonelock_duration_min,phonelock_duration_min,hours_slept,sleep_rating,hours_slept,sleep_rating,hours_slept,sleep_rating,hours_slept,sleep_rating,sms_instance,,min,max,mean 3 | time,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, 4 | 2013-03-24,20,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-3.0,0.0,5.0,1.0,0.0,1.0,0.0,0.0,1.216188388897624e-16,0.9999999999999994,1.4700487985321024e-17,-2.0538004496109435e-16,0.9999999999999996,0.0,-3.0,0.0,26,475.0,95.0,0.0,95.0,0.0,0.0,7.783605688944793e-15,94.99999999999996,3.136104103535152e-15,-1.8061125390375083e-14,94.99999999999994,0.0,-3.0,0.0,320.0,64.0,0.0,64.0,0.0,0.0,7.783605688944793e-15,63.999999999999964,9.408312310605455e-16,-1.3144322877510039e-14,63.99999999999997,0.0,-3.0,0.0,43.7081954,-72.2849408,43.7081954,-72.2849408,43.7081954,-72.2849408,830.0,166.0,0.0,166.0,0.0,0.0,-5.189070459296528e-15,165.99999999999991,-1.5053299696968728e-14,3.504294390248491e-14,165.9999999999999,0.0,-3.0,0.0,320.0,64.0,0.0,64.0,0.0,0.0,7.783605688944793e-15,63.999999999999964,9.408312310605455e-16,-1.3144322877510039e-14,63.99999999999997,0.0,-3.0,0.0,35.0,5.0,7.0,1.0,7.0,1.0,7.0,1.0,26,6,1.0,3.0,2.0 5 | 2013-03-25,20,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,24,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,24,0,1.0,3.0,2.0 6 | 2013-03-26,20,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,24,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,24,1,1.0,3.0,2.0 7 | 2013-03-27,20,622.0,0.2749778956675508,0.6512546150266018,0.0,0.42413257359344725,2.7210719158004797,-0.0003072233600510941,0.6222939042053125,4.052139248273614e-07,-0.001223412044085758,0.9673916418583697,0.0,7.336988910547889,66.0,14486.0,1.010392690242031,0.7557190565886298,1.0,0.5711112924912086,-0.017180017166234476,-6.528478454043382e-05,1.47835402582786,-5.045974213056362e-09,7.05430177794209e-06,1.3055238920988739,2.0,-1.248764319772202,2853.0,13,205.0,15.76923076923077,25.010510611053924,7.0,625.525641025641,3.080625750224535,-3.505494505494507,36.8021978021978,0.9230769230769221,-14.582417582417579,57.10989010989013,9.0,6.136878714002963,3.0,672.0,134.4,44.5061793462436,164.0,1980.8000000000002,-1.3108125146409972,10.400000000000006,113.59999999999994,-21.142857142857146,94.97142857142858,71.3142857142856,48.0,-0.8510384668585798,2.0,43.7081954,-72.2849408,43.7081954,-72.2849408,43.7081954,-72.2849408,613.0,153.25,25.5,166.0,650.25,-1.9999999999999998,-15.300000000000042,176.20000000000005,-12.750000000000023,22.950000000000017,163.44999999999996,12.75,-0.6666666666666665,1.0,405.0,81.0,13.765899897936206,91.0,189.50000000000006,-0.6564728336677063,7.699999999999999,65.59999999999997,-2.214285714285716,16.557142857142846,61.17142857142852,23.0,-1.7635668089194587,1.0,21.0,3.0,7.0,1.0,7.0,1.0,7.0,1.0,13,2,4.0,4.0,4.0 8 | 2013-03-28,20,644.0,0.07806060606060607,0.3522831287472794,0.0,0.12410340279997226,5.869664843817241,3.83102434879878e-06,0.062259546133985474,1.4080416340897169e-09,-7.78391109080734e-06,0.07822621071829747,0.0,40.386062724348996,44.0,21429.0,0.5656328362148607,0.7186971200978229,0.0,0.5165255504369045,0.8638412350235796,1.5773300164873388e-05,0.26685498449182915,-3.459662906991352e-10,2.887988712171938e-05,0.18410217887746216,1.0,-0.5935684091702416,4807.0,24,311.0,10.03225806451613,15.060951432911406,3.0,226.83225806451614,1.9686713508614033,0.431451612903226,3.5604838709677398,-0.02458539791687729,1.1690135504095447,-0.004398826979467177,9.5,2.092512234445297,7.0,1313.0,262.6,225.0095553526561,133.0,50629.30000000001,0.9489521605648371,-19.49999999999999,301.59999999999974,-41.50000000000003,146.50000000000006,218.59999999999977,264.0,-1.21570760413875,4.0,0.0,0.0,0.0,0.0,0.0,0.0,593.0,593.0,0.0,593.0,0.0,0.0,inf,0.0,inf,,0.0,0.0,-3.0,0.0,1261.0,252.2,215.46391809303014,133.0,46424.7,0.9009285073371389,29.700000000000017,192.7999999999998,-93.35714285714293,403.12857142857166,6.085714285713704,299.0,-1.3513466088914374,2.0,7.0,2.0,7.0,2.0,7.0,2.0,7.0,2.0,24,3,4.0,4.0,4.0 9 | 2013-03-29,20,1007.0,0.1222829386763813,0.4760298885484613,0.0,0.22660445479146046,4.758447310880981,2.828835390216072e-05,0.005819785661185606,2.535148543956967e-08,-0.00018045577720725604,0.29225152423182377,0.0,24.14760879930314,66.0,18418.0,0.6134834454733196,0.83131119838467,0.0,0.6910783085597562,0.8226045614952179,4.4143760983355636e-05,-0.04913647876733991,9.858592680625095e-10,1.4547279896851008e-05,0.09894458160213793,1.0,-1.0541225249648303,2872.0,26,208.0,7.428571428571429,13.571289333732967,2.0,184.17989417989418,2.9812599089872664,0.93431855500821,-5.184729064039406,0.1147951665193046,-2.165150941013016,8.246305418719265,4.5,6.8086256966347705,7.0,504.0,168.0,0.0,168.0,0.0,0.0,0.0,168.00000000000003,-2.869075121791014e-14,5.427456701134497e-14,167.99999999999994,0.0,-3.0,0.0,43.7081954,-72.2849408,43.7081954,-72.2849408,43.7081954,-72.2849408,1186.0,593.0,0.0,593.0,0.0,0.0,-1.1368683772161603e-13,592.9999999999999,0.0,4.0194366942304625e-14,592.9999999999998,0.0,-3.0,0.0,519.0,173.0,0.0,173.0,0.0,0.0,-1.2710574864626037e-14,173.00000000000003,-2.0083525852537102e-14,6.496316616684511e-14,172.99999999999997,0.0,-3.0,0.0,14.0,4.0,7.0,2.0,7.0,2.0,7.0,2.0,26,4,1.0,1.0,1.0 10 | 2013-03-30,20,175.0,0.022392834293026232,0.15555627452135712,0.0,0.024197754542963818,7.3527708792573385,4.447990719847647e-06,0.005014534550581479,-3.970911703271152e-09,3.547669476920844e-05,-0.03539000957236115,0.0,58.437793774752166,6.0,28883.0,0.9928841526297697,0.9041812000921615,1.0,0.8175436426001014,0.013984605285503934,4.332774413678482e-05,0.36270377803230247,-2.2855840774802266e-09,0.00010981309936660702,0.040382775878123604,2.0,-1.7766373117157706,6249.0,23,152.0,4.75,5.713594428231897,2.0,32.64516129032258,1.9051711896603212,-0.058651026392961755,5.659090909090907,-0.035740469208211195,1.049303519061585,0.119318181818176,5.0,2.7140050617881863,12.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,23,5,1.0,1.0,1.0 11 | 2013-03-31,20,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0,6,1.0,1.0,1.0 12 | 2013-04-01,20,1149.0,0.15186360031720855,0.5444557695789711,0.0,0.29643208502782975,4.211644616827533,4.8929757680304116e-05,-0.033213208108541815,1.113355806802915e-09,4.0507221001840035e-05,-0.022595196869224794,0.0,18.0690695384893,128.0,24017.0,0.7548005908419497,0.8476015458153504,0.0,0.7184283804685715,0.48942144449224206,2.184323516097973e-05,0.4072965626659231,-1.4342091814241024e-10,2.6406601934435046e-05,0.3830977892274172,2.0,-1.4343611991058933,4808.0,24,218.0,8.72,15.150687553155246,4.0,229.5433333333333,3.7827695807491497,0.16153846153846155,6.781538461538462,-0.0075065031586770544,0.3416945373467106,6.090940170940173,6.0,12.972905183879236,9.0,838.0,167.6,174.0367777224113,75.0,30288.799999999996,1.9810858471644837,19.60000000000001,128.3999999999999,-45.71428571428576,202.457142857143,36.971428571428426,90.0,-0.017172938222240752,2.0,43.7060244925373,-72.28451834238808,43.7030489,-72.290555,43.7086977,-72.2832101,222.0,111.0,60.81118318204309,111.0,3698.0,0.0,85.99999999999997,67.99999999999999,42.999999999999986,42.99999999999998,67.99999999999996,43.0,-2.0,1.0,663.0,165.75,198.8506558534151,67.5,39541.583333333336,1.9989576568273881,-38.10000000000005,222.9000000000001,-98.7500000000001,258.15000000000003,124.14999999999995,103.75,-0.6671350478735567,2.0,6.0,1.0,6.0,1.0,6.0,1.0,6.0,1.0,24,0,1.0,1.0,1.0 13 | 2013-04-02,20,776.0,0.09451887941534713,0.41010701454431264,0.0,0.16818776337844907,5.415465028432983,3.614030038286645e-05,-0.05381898350612818,1.6802682972761296e-08,-0.00010179292414053095,0.13487366764187947,0.0,32.37037620182028,50.0,24696.0,0.6445517421375441,0.7726018802727123,0.0,0.5969136654009304,0.7068549668647715,1.8334196596524658e-05,0.29332353793792143,7.056138220508975e-10,-8.700691381533324e-06,0.46595481512180964,1.0,-0.9840968594052848,6574.0,24,322.0,7.666666666666667,11.713379189308283,4.5,137.20325203252034,3.39654859481478,0.24714366744996358,2.6002214839424167,-0.012492541491407065,0.7593378685976531,-0.8144065237088524,6.0,12.244761603691158,12.0,1298.0,216.33333333333334,171.93332040842654,167.0,29561.066666666662,1.5438664031820213,-42.17142857142855,321.76190476190465,-3.357142857142882,-25.38571428571414,310.57142857142844,154.5,-0.03472970757108618,4.0,43.705305554558834,-72.28374074882355,43.70025814,-72.2885603,43.7065586,-72.28223529,119.0,119.0,0.0,119.0,0.0,0.0,inf,0.0,inf,,0.0,0.0,-3.0,0.0,1182.0,236.4,176.42222082266167,215.0,31124.8,1.2835275198328087,-33.199999999999996,302.7999999999998,11.714285714285747,-80.05714285714306,326.2285714285717,173.0,-0.595095873586371,3.0,6.0,1.0,6.0,1.0,6.0,1.0,6.0,1.0,24,1,1.0,1.0,1.0 14 | 2013-04-03,20,360.0,0.04361521686455052,0.24023356953244354,0.0,0.05771216793029938,7.211786969859127,-2.757875945641807e-06,0.054995591954241425,4.329400022843362e-09,-3.848841433416804e-05,0.10413699241792782,0.0,67.09686761572326,16.0,14834.0,0.5047466739256184,0.7591057829644513,0.0,0.5762415897300727,1.1028027537681109,1.938566098748548e-05,0.21989377137550628,1.103333437888933e-09,-1.3039102085194436e-05,0.3787048567783135,1.0,-0.3831564823764224,4948.0,25,147.0,6.391304347826087,10.616193164795606,3.0,112.70355731225295,3.032031694882086,-0.4150197628458496,10.95652173913043,-0.06092603049124797,0.925352907961605,6.265217391304347,4.5,6.950899966082703,6.0,1019.0,339.6666666666667,208.42344717745488,460.0,43440.33333333333,-1.7320508075688783,180.49999999999997,159.16666666666674,-180.4999999999999,541.4999999999998,98.99999999999997,180.5,-1.4999999999999998,1.0,43.705670932465765,-72.28432579452057,43.70406205,-72.2885764,43.7086542,-72.28291167,1222.0,305.5,159.0,332.0,25281.0,-0.37037037037037035,95.39999999999998,162.40000000000006,26.49999999999994,15.900000000000082,188.89999999999995,238.5,-1.7201646090534979,1.0,1058.0,264.5,200.36716297836827,266.5,40146.99999999999,-0.0013803836483108807,139.6,55.10000000000012,-2.000000000000083,145.60000000000016,53.09999999999997,345.0,-1.9989374507540163,1.0,12.0,2.0,6.0,1.0,6.0,1.0,6.0,1.0,25,2,1.0,1.0,1.0 15 | 2013-04-04,20,562.0,0.06846144475575587,0.28730546177949967,0.0,0.08254442836833155,5.180707920119597,-3.6375142278250194e-06,0.08338980314674976,3.812591307422606e-09,-3.4931263679149785e-05,0.12619443677125347,0.0,34.5662799561663,34.0,23597.0,0.6549264501804052,0.7837744464730269,0.0,0.6143023829440996,0.6894754308986656,-6.500237280504859e-06,0.7720249746700603,2.159448999759432e-09,-8.430302529283751e-05,1.239204782421448,1.0,-1.0429812631858206,4482.0,25,287.0,10.25,21.209056416400852,2.0,449.8240740740741,2.7788012285907766,0.12287903667214023,8.591133004926107,-0.05291356153425121,1.5515451980969241,2.4002463054186958,4.0,5.446037288372668,5.0,678.0,339.0,171.1198410471445,339.0,29282.0,0.0,-242.00000000000003,459.9999999999999,-120.99999999999989,-120.9999999999999,460.0,121.0,-2.0,1.0,43.70546041478873,-72.2839614077465,43.7003246,-72.2886323,43.7086807,-72.2831962,1221.0,305.25,251.49204758799036,308.5,63248.25000000001,-0.002313513818434924,172.90000000000003,45.900000000000034,3.2499999999998934,163.15000000000023,49.14999999999986,432.25,-1.998219254511398,1.0,1501.0,300.2,195.91503260342225,219.0,38382.7,0.45840535291848583,-115.1,530.3999999999996,12.785714285714358,-166.24285714285742,555.9714285714285,373.0,-1.7923543596921967,1.0,13.0,3.0,6.5,1.5,6.0,1.0,7.0,2.0,25,3,1.0,1.0,1.0 16 | 2013-04-05,20,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-3.0,0.0,8552.0,0.2882469918096329,0.5876381396648414,0.0,0.3453185831887556,1.9030648693297203,1.2209106589148118e-05,0.1071371046662094,1.2727647679181791e-09,-2.555127854544831e-05,0.2938433289642209,0.0,2.4095378649741406,3640.0,24,137.0,4.566666666666666,5.110390587227457,2.0,26.116091954022988,1.903996895335024,0.19288097886540595,1.7698924731182815,0.016392221515970116,-0.28249344509772717,3.9883064516129,6.5,3.646317698151485,14.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,43.70550526805555,-72.2832370986111,43.7053293,-72.2832926,43.7056591,-72.2831349,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,192.0,192.0,0.0,192.0,0.0,0.0,inf,0.0,inf,,0.0,0.0,-3.0,0.0,3.0,4.0,3.0,4.0,3.0,4.0,3.0,4.0,24,4,1.0,1.0,1.0 17 | 2013-04-06,20,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-3.0,0.0,13783.0,0.4145637200348904,0.6645216404381202,0.0,0.4415890106105703,1.3317371571792282,-4.447199851318431e-06,0.4884895231633565,1.8482156634142663e-09,-6.58929777971891e-05,0.8289503377984349,1.0,0.45575377419440954,4824.0,25,212.0,5.0476190476190474,5.0555566191453565,3.0,25.55865272938443,1.5737477875592751,-0.04294627663884613,5.928017718715395,0.01126603118945718,-0.5048535554065905,9.007399577167021,7.0,1.992755588399712,16.0,218.0,218.0,0.0,218.0,0.0,0.0,inf,0.0,inf,,0.0,0.0,-3.0,0.0,43.70550209178082,-72.28322672465752,43.7053408,-72.2832842,43.7056359,-72.2831296,523.0,523.0,0.0,523.0,0.0,0.0,inf,0.0,inf,,0.0,0.0,-3.0,0.0,192.0,192.0,0.0,192.0,0.0,0.0,inf,0.0,inf,,0.0,0.0,-3.0,0.0,3.0,4.0,3.0,4.0,3.0,4.0,3.0,4.0,25,5,1.0,1.0,1.0 18 | 2013-04-07,20,102.0,0.012360639844886088,0.18445831913661634,0.0,0.0340248714987058,15.675886279077751,2.7043581597569635e-06,0.0012038102568087312,2.773835710605888e-09,-2.0182560288452218e-05,0.03267332312309632,0.0,248.45290267129135,20.0,10825.0,0.3687994003815754,0.6314405199864218,0.0,0.3987171302807228,1.4906800923941352,-2.4651862901793783e-05,0.7305778143968499,3.44185932544064e-09,-0.000125673875962802,1.2247438282869483,1.0,0.9804951470224514,3353.0,25,138.0,4.758620689655173,6.074861388270476,2.0,36.903940886699495,2.4655909653406947,-0.3463054187192117,9.606896551724134,0.03643378003778446,-1.366451259777177,14.197552836484983,5.0,5.6577213970266715,9.0,681.0,170.25,45.065692790266375,174.5,2030.9166666666667,-0.44536354539132683,-10.50000000000006,186.00000000000014,17.25000000000002,-62.250000000000064,203.25,52.25,-1.3336293952193514,3.0,43.70550006027396,-72.28323043835617,43.7053626,-72.2833215,43.7056394,-72.2831777,676.0,338.0,261.6295090390226,338.0,68450.0,0.0,-369.99999999999994,522.9999999999999,-185.0,-184.9999999999999,523.0,185.0,-2.0,1.0,494.0,98.8,25.95573154430443,82.0,673.7,1.092610591639174,4.999999999999999,88.79999999999997,-8.857142857142868,40.42857142857146,71.08571428571418,31.0,-1.1307111157340524,2.0,10.0,6.0,5.0,3.0,3.0,2.0,7.0,4.0,25,6,1.0,1.0,1.0 19 | 2013-04-08,20,176.0,0.021315247668644788,0.19196824408152918,0.0,0.03685180673574556,11.721909434414078,4.3455666821851886e-07,0.01952139774223874,-2.1601116325996574e-09,1.8268438306961294e-05,-0.00501505107906486,0.0,160.4869057626872,30.0,16719.0,0.4946888777110394,0.6957230451093211,0.0,0.4840305554961865,1.0615634298688774,1.362463420374869e-05,0.2644598089360936,1.179863429908067e-09,-2.6250030273424373e-05,0.4890538566037718,1.0,-0.20357598084785256,4436.0,25,240.0,6.857142857142857,12.663385982343547,3.0,160.36134453781503,4.6690698152494035,0.07086834733893571,5.652380952380951,0.009900274606156964,-0.26574098927040124,7.503732303732303,6.5,21.010581988940604,11.0,1020.0,204.0,189.40432941197517,93.0,35874.0,1.6748013478704298,71.7,60.599999999999994,-7.500000000000007,101.70000000000003,45.59999999999989,144.0,-0.3756173293682932,1.0,43.70568826164382,-72.28327738767128,43.7054183,-72.284321,43.708688,-72.2831741,153.0,153.0,0.0,153.0,0.0,0.0,inf,0.0,inf,,0.0,0.0,-3.0,0.0,1459.0,364.75,223.28214587527293,409.0,49854.916666666664,-0.7278978907576289,122.5,181.00000000000006,-44.2500000000001,255.25000000000014,136.7499999999999,288.75,-1.4267701744402037,3.0,14.0,3.0,7.0,1.5,7.0,1.0,7.0,2.0,25,0,1.0,1.0,1.0 20 | 2013-04-09,20,364.0,0.04404113732607381,0.2589092621980704,0.0,0.06703400605194919,7.713777274251037,2.258531585961342e-05,-0.049281387805848814,5.1321573570395e-09,-1.9826832538961032e-05,0.009127209230387985,0.0,72.21265140563148,24.0,28443.0,0.6963302078488016,0.7379129316797214,1.0,0.5445154947401611,0.5485147564990339,-3.597514682956961e-06,0.7698022502188311,1.2967919149658513e-09,-5.6566277241652135e-05,1.130387101337149,1.0,-0.9943650900102101,4425.0,24,383.0,15.958333333333334,25.048612157452812,3.5,627.4329710144928,2.1903586776265564,-0.8656521739130443,25.91333333333334,0.15792794162359386,-4.497994831255704,39.2319230769231,19.75,3.6693914268957037,7.0,370.0,123.33333333333333,31.13411847689498,120.0,969.3333333333334,0.47626402313912153,-18.00000000000003,141.33333333333337,43.99999999999998,-106.00000000000001,155.99999999999994,31.0,-1.4999999999999998,1.0,43.70536310277776,-72.28406959166666,43.7016359,-72.2899292,43.7057983,-72.2832012,63.0,63.0,0.0,63.0,0.0,0.0,inf,0.0,inf,,0.0,0.0,-3.0,0.0,294.0,98.0,50.714889332423866,76.0,2572.0,1.584744461179614,-46.99999999999999,145.00000000000003,32.99999999999998,-112.99999999999999,155.99999999999997,47.0,-1.5,1.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,24,1,1.0,1.0,1.0 21 | 2013-04-10,20,219.0,0.02652937613567535,0.213770558173554,0.0,0.04569785154183283,10.380834496022455,-3.104008203254372e-07,0.027810400321158425,8.044704898809753e-10,-6.9505002438030015e-06,0.036943857078151815,0.0,125.3806967975367,20.0,12983.0,0.42886400422819015,0.6939279701704821,0.0,0.4815360277849256,1.3175184186978113,2.45245309987967e-05,0.057660703030403264,5.41711686586757e-10,8.125834822442397e-06,0.14039485835614024,1.0,0.297500530471027,4301.0,24,151.0,5.392857142857143,13.19466582938751,2.0,174.09920634920638,4.89483535624272,-0.0845648604269294,6.53448275862069,0.0010420613868890346,-0.11270051787293349,6.65640394088671,3.0,20.490968595137804,6.0,554.0,184.66666666666666,105.97326706926296,205.0,11230.333333333334,-0.8316383197008305,37.00000000000001,147.66666666666669,171.99999999999983,-306.9999999999998,204.9999999999998,104.5,-1.5,2.0,43.705677677142866,-72.28347496114286,43.705342,-72.2884181,43.7087104,-72.2831621,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,424.0,212.0,86.2670273047588,212.0,7442.0,0.0,121.99999999999993,150.99999999999997,61.0,60.99999999999998,150.99999999999997,61.0,-2.0,1.0,7.0,2.0,7.0,2.0,7.0,2.0,7.0,2.0,24,2,1.0,1.0,1.0 22 | 2013-04-11,20,236.0,0.029218769345053856,0.2337074330097416,0.0,0.05461916424400286,9.946581684257685,1.5081519553926518e-05,-0.03168040661370139,3.828274585914831e-09,-1.5835626001921656e-05,0.009928918446877565,0.0,111.15311123755967,20.0,18149.0,0.5451132336156664,0.6970797379699069,0.0,0.48592016108819397,0.8926488780384764,1.4583784950409524e-05,0.30234425743867416,1.7582631655726714e-09,-4.395407062100141e-05,0.6271513053859097,1.0,-0.4720613410747809,3275.0,24,474.0,19.75,43.285955147639726,4.5,1873.673913043478,2.885125708083956,3.1086956521739135,-16.0,0.4387807844329587,-6.983262389784141,21.003846153846222,7.25,5.699870019247882,3.0,745.0,149.0,72.65672714897086,136.0,5279.0,0.14610686882519272,39.99999999999999,68.99999999999996,2.714285714285714,29.142857142857117,74.42857142857137,131.0,-1.6970753762374342,1.0,43.70568602957747,-72.28354051830988,43.7053812,-72.2878155,43.7089514,-72.2831193,522.0,261.0,0.0,261.0,0.0,0.0,0.0,260.99999999999994,0.0,0.0,261.0,0.0,-3.0,0.0,582.0,145.5,64.80997865555376,157.5,4200.333333333334,-0.45280438244987076,47.59999999999999,74.10000000000001,-12.000000000000062,83.6000000000001,62.099999999999966,95.0,-1.6593883078562215,1.0,16.0,6.0,8.0,3.0,8.0,3.0,8.0,3.0,24,3,2.0,2.0,2.0 23 | -------------------------------------------------------------------------------- /src/main/data/aggregated_data/student 15/one_day_aggregate.csv: -------------------------------------------------------------------------------- 1 | ,student_id,sum,mean,std,median,var,skew,linear_m,linear_c,poly_a,poly_b,poly_c,iqr,kurtosis,mcr,sum,mean,std,median,var,skew,linear_m,linear_c,poly_a,poly_b,poly_c,iqr,kurtosis,mcr,sum,sum,mean,std,median,var,skew,linear_m,linear_c,poly_a,poly_b,poly_c,iqr,kurtosis,mcr,sum,mean,std,median,var,skew,linear_m,linear_c,poly_a,poly_b,poly_c,iqr,kurtosis,mcr,mean,mean,min,min,max,max,sum,mean,std,median,var,skew,linear_m,linear_c,poly_a,poly_b,poly_c,iqr,kurtosis,mcr,sum,mean,std,median,var,skew,linear_m,linear_c,poly_a,poly_b,poly_c,iqr,kurtosis,mcr,sum,sum,mean,mean,min,min,max,max,sum,dow,stress_level,stress_level,stress_level 2 | ,,activity_inference,activity_inference,activity_inference,activity_inference,activity_inference,activity_inference,activity_inference,activity_inference,activity_inference,activity_inference,activity_inference,activity_inference,activity_inference,activity_inference,audio_activity_inference,audio_activity_inference,audio_activity_inference,audio_activity_inference,audio_activity_inference,audio_activity_inference,audio_activity_inference,audio_activity_inference,audio_activity_inference,audio_activity_inference,audio_activity_inference,audio_activity_inference,audio_activity_inference,audio_activity_inference,call_recorded,conv_duration_min,conv_duration_min,conv_duration_min,conv_duration_min,conv_duration_min,conv_duration_min,conv_duration_min,conv_duration_min,conv_duration_min,conv_duration_min,conv_duration_min,conv_duration_min,conv_duration_min,conv_duration_min,dark_duration_min,dark_duration_min,dark_duration_min,dark_duration_min,dark_duration_min,dark_duration_min,dark_duration_min,dark_duration_min,dark_duration_min,dark_duration_min,dark_duration_min,dark_duration_min,dark_duration_min,dark_duration_min,latitude,longitude,latitude,longitude,latitude,longitude,phonecharge_duration_min,phonecharge_duration_min,phonecharge_duration_min,phonecharge_duration_min,phonecharge_duration_min,phonecharge_duration_min,phonecharge_duration_min,phonecharge_duration_min,phonecharge_duration_min,phonecharge_duration_min,phonecharge_duration_min,phonecharge_duration_min,phonecharge_duration_min,phonecharge_duration_min,phonelock_duration_min,phonelock_duration_min,phonelock_duration_min,phonelock_duration_min,phonelock_duration_min,phonelock_duration_min,phonelock_duration_min,phonelock_duration_min,phonelock_duration_min,phonelock_duration_min,phonelock_duration_min,phonelock_duration_min,phonelock_duration_min,phonelock_duration_min,hours_slept,sleep_rating,hours_slept,sleep_rating,hours_slept,sleep_rating,hours_slept,sleep_rating,sms_instance,,min,max,mean 3 | time,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, 4 | 2013-03-24,15,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-3.0,0.0,6.0,1.0,0.0,1.0,0.0,0.0,-5.988097684046442e-17,0.9999999999999998,5.8828872136011476e-18,-6.651736030083218e-17,1.0,0.0,-3.0,0.0,27,42.0,7.0,0.0,7.0,0.0,0.0,0.0,6.999999999999998,-1.1765774427202295e-16,1.5877782560810028e-15,6.999999999999994,0.0,-3.0,0.0,810.0,135.0,0.0,135.0,0.0,0.0,-7.664765035579445e-15,135.0,-3.765047816704734e-15,3.3558697179448323e-14,134.99999999999991,0.0,-3.0,0.0,43.70404630000001,-72.2906206,43.7040463,-72.2906206,43.7040463,-72.2906206,360.0,60.0,0.0,60.0,0.0,0.0,-1.9161912588948613e-15,59.999999999999986,-2.2590286900228405e-15,1.7014462698534712e-14,59.99999999999998,0.0,-3.0,0.0,2928.0,488.0,0.0,488.0,0.0,0.0,-3.065906014231778e-14,487.99999999999994,4.518057380045681e-15,-1.1843181226209864e-14,487.99999999999983,0.0,-3.0,0.0,42.0,12.0,7.0,2.0,7.0,2.0,7.0,2.0,27,6,3.0,4.0,3.1666666666666665 5 | 2013-03-25,15,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,24,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,24,0,3.0,4.0,3.1666666666666665 6 | 2013-03-26,15,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,24,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,24,1,3.0,4.0,3.1666666666666665 7 | 2013-03-27,15,527.0,0.07818991097922849,0.35677445620500603,0.0,0.12728801260037775,5.8786615853208515,1.237889159500014e-05,0.03647923574987553,-3.384601827525123e-09,3.518772331069194e-05,0.010864917733153658,0.0,40.022207379459786,32.0,30446.0,0.8062816133047324,0.8125073337564107,1.0,0.6601681674079514,0.36767342532389,3.043099248141012e-05,0.23174447525570915,-2.782811036253333e-10,4.0938886954302816e-05,0.16561654402204923,2.0,-1.3927561624240126,4957.0,24,370.0,14.23076923076923,15.76910318897734,8.5,248.66461538461533,1.8812745761579301,0.27487179487179497,10.794871794871796,-0.06346153846153853,1.861410256410258,4.448717948717939,17.75,2.9012997133749723,10.0,1243.0,248.6,124.41583500503464,207.0,15479.300000000001,1.3757602289524111,3.8000000000000163,240.9999999999998,-13.14285714285713,56.37142857142852,214.7142857142855,102.0,-0.5490498338439718,3.0,43.7046735305,-72.28998876799999,43.7031369,-72.2947046,43.7090604,-72.2836477,60.0,60.0,0.0,60.0,0.0,0.0,inf,0.0,inf,,0.0,0.0,-3.0,0.0,831.0,277.0,188.07179480187878,216.0,35371.0,1.3060056499599886,-136.0,413.0000000000001,224.99999999999983,-585.9999999999998,487.9999999999999,180.5,-1.5000000000000002,1.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,24,2,3.0,4.0,3.1666666666666665 8 | 2013-03-28,15,239.0,0.058823529411764705,0.2810882946024754,0.0,0.07901062936252802,6.272001345356285,-4.527525204863677e-05,0.15077756632254596,7.184450583602276e-09,-7.445849031922914e-05,0.1705297547586918,0.0,50.141613311719,22.0,12751.0,0.67170626349892,0.7910465092641892,0.0,0.625754579819059,0.6533346180731011,-7.570570234654215e-05,1.3902290844699519,-6.688219320417507e-09,5.1250076793623244e-05,0.9886044771600362,1.0,-1.1051950018188847,2398.0,13,164.0,9.647058823529411,17.83585285482092,2.0,318.11764705882365,3.4310211114110283,-0.9338235294117652,17.117647058823533,-0.25219298245614047,3.101264189886482,7.029927760577914,10.0,9.008685735372142,4.0,271.0,271.0,0.0,271.0,0.0,0.0,inf,0.0,inf,,0.0,0.0,-3.0,0.0,43.70406222173913,-72.29059388695651,43.703962,-72.290761,43.7042224,-72.290313,281.0,281.0,0.0,281.0,0.0,0.0,inf,0.0,inf,,0.0,0.0,-3.0,0.0,247.0,247.0,0.0,247.0,0.0,0.0,inf,0.0,inf,,0.0,0.0,-3.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,13,3,3.0,4.0,3.1666666666666665 9 | 2013-03-29,15,516.0,0.06321979906885568,0.29524238455728624,0.0,0.08716806563907249,6.1197850455822085,1.7925181280040087e-05,-0.009923903144347913,5.191248456067463e-09,-2.44405973699265e-05,0.04769355581960666,0.0,47.028405881885604,48.0,36979.0,0.7867035421763642,0.7710053110877779,1.0,0.5944491897255612,0.38573728510103106,5.38216174981093e-06,0.6602119767323077,7.845460668926057e-10,-3.1494641578409276e-05,0.9490987078716986,1.0,-1.22720794312731,6845.0,26,570.0,13.571428571428571,16.224255940912574,5.0,263.22648083623693,2.123156135458542,-0.13353861113361973,16.30897009966778,-0.029342325286738243,1.069496725622648,8.28873452129266,21.25,5.8663007422397335,12.0,2018.0,403.6,140.0635570018126,501.0,19617.800000000003,-1.0119857647560726,-79.10000000000001,561.7999999999995,-30.357142857142847,42.3285714285714,501.085714285714,183.0,-1.2578217839799974,1.0,43.70448787365384,-72.28975776288462,43.7031256,-72.2910804,43.7090786,-72.2839881,1425.0,475.0,0.0,475.0,0.0,0.0,5.084229945850415e-14,475.00000000000017,-3.4428901461492175e-14,3.9736835931053334e-14,474.99999999999983,0.0,-3.0,0.0,2324.0,290.5,187.99696046175094,310.0,35342.85714285715,-0.09782292353356789,-36.07142857142855,416.74999999999994,-16.70238095238095,80.84523809523809,299.83333333333326,359.5,-1.8658820196331254,4.0,29.0,7.0,7.25,1.75,7.0,1.0,8.0,2.0,26,4,1.0,1.0,1.0 10 | 2013-03-30,15,2612.0,0.325199203187251,0.902588295315121,0.0,0.814665630839856,2.5503711683286747,0.0001225311991305861,-0.16682482692161751,-8.277676122348326e-09,0.00018900921606916554,-0.25579457292441654,0.0,4.661125954542925,98.0,36849.0,0.7851572487854769,0.7724223908911578,1.0,0.5966363499500126,0.38976684337020756,1.7443184443631137e-05,0.37584420422345105,-2.95528268697094e-10,3.131262162185444e-05,0.2673620897611144,1.0,-1.2307704446138228,7666.0,25,527.0,12.547619047619047,23.89836445159149,4.0,571.1318234610918,3.8895018425091683,0.3909731788347784,4.532668881506094,0.05742038732679688,-1.963262701563893,20.227574750830566,8.0,15.874779393146952,11.0,347.0,173.5,33.23401871576773,173.5,1104.5,0.0,-47.00000000000003,196.99999999999997,-23.5,-23.5,196.99999999999997,23.5,-2.0,1.0,43.486132056981134,-72.08565925962264,42.2443292,-72.2908763,43.70443106,-70.9031926,475.0,475.0,0.0,475.0,0.0,0.0,inf,0.0,inf,,0.0,0.0,-3.0,0.0,450.0,150.0,37.04051835490427,136.0,1372.0,1.457862967321305,6.99999999999997,143.00000000000006,-62.99999999999992,132.99999999999994,121.99999999999994,35.0,-1.4999999999999998,2.0,8.0,1.0,8.0,1.0,8.0,1.0,8.0,1.0,25,5,4.0,4.0,4.0 11 | 2013-03-31,15,932.0,0.11256038647342995,0.5624534413023876,0.0,0.31635387363289835,4.880470101608742,7.395747087240831e-05,-0.19358656420290438,3.722913571645502e-08,-0.00023426254372412264,0.23165431593544275,0.0,21.980477498075658,37.0,41366.0,0.738573060991287,0.7418405497143363,1.0,0.5503274012004686,0.4606276516353615,3.848727247087684e-06,0.6307952275274674,9.278768350458075e-10,-4.811887065332285e-05,1.1158781088625342,1.0,-1.068466785595067,12224.0,26,760.0,14.339622641509434,16.11609729936359,8.0,259.72859216255443,1.7538687405930609,0.0017739074342845813,14.293501048218033,0.012952025160682211,-0.6717314009211899,20.018296169239555,15.0,2.358718898021851,19.0,442.0,110.5,26.43860813280457,99.0,699.0,1.951453156463994,-14.800000000000034,132.70000000000005,14.000000000000032,-56.800000000000104,146.70000000000005,14.0,-0.6863828222482828,1.0,42.24451985041665,-70.90531201847222,42.2443187,-70.98470393,42.25182301,-70.9030408,949.0,316.3333333333333,137.40936406713092,237.0,18881.333333333332,1.7320508075688792,-118.99999999999994,435.33333333333337,118.99999999999984,-356.9999999999998,474.99999999999983,119.0,-1.4999999999999996,1.0,459.0,114.75,19.6871362400257,112.5,387.58333333333326,0.17780836563198327,-14.30000000000004,136.20000000000005,2.250000000000007,-21.050000000000054,138.45,31.25,-1.8643147650997713,1.0,24.0,3.0,8.0,1.0,8.0,1.0,8.0,1.0,26,6,1.0,1.0,1.0 12 | 2013-04-01,15,2001.0,0.24231048680067813,0.749804117644956,0.0,0.562206214837331,3.1647905996977945,-0.0001110130518541301,0.7006278713804545,5.208275949153222e-08,-0.0005410603969757117,1.2923730182677509,0.0,8.6116709787241,81.0,38753.0,0.8197876121171095,0.8043556548283367,1.0,0.6469880194543223,0.337100165332613,-1.3642744320322068e-05,1.1422406955000812,8.085677688613304e-10,-5.1864551322165984e-05,1.4433648316629406,1.0,-1.3783634910798201,5807.0,24,503.0,15.242424242424242,18.026075389263017,12.0,324.9393939393939,2.2943743844167215,0.6544117647058822,4.771836007130123,0.03580361763473719,-0.491303999605708,10.69136745607335,18.0,4.98272784094057,10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,43.7047642902,-72.28958612919999,43.7031598,-72.2908957,43.7090835,-72.2835983,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,24,0,1.0,1.0,1.0 13 | 2013-04-02,15,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-3.0,0.0,3873.0,0.2494525312379235,0.4741885413234027,0.0,0.2248547727224164,1.6745501189084997,-2.852540150048909e-05,0.4708809603854699,-5.380672063942495e-09,5.50095322922182e-05,0.2547482416858053,0.0,1.8822540199809232,2328.0,11,100.0,8.333333333333334,7.101002916788756,9.0,50.42424242424243,0.667497803014189,0.8111888111888111,3.871794871794871,0.01448551448551429,0.6518481518481538,4.1373626373626395,9.5,-0.8389480861686391,6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,43.7040860060606,-72.29054956363636,43.7039219,-72.2908721,43.7042029,-72.2903931,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,11,1,1.0,1.0,1.0 14 | 2013-04-03,15,396.0,0.050368862884762146,0.25221419425449,0.0,0.06361199978344162,6.387839952300292,7.3091191619184204e-06,0.021640370018841826,-1.7898123504764279e-09,2.1378834049013615e-05,0.003209043516747086,0.0,52.904444377842005,43.0,37352.0,0.7734934769103334,0.7460398412467495,1.0,0.5565754447274751,0.3933281834376338,5.074401113234255e-07,0.7612415891424844,4.3803422587052125e-10,-2.0644794621738178e-05,0.9314747742741653,1.0,-1.1215574869400586,7872.0,25,621.0,18.818181818181817,20.954496154546614,9.0,439.0909090909089,1.337410447143985,-0.12633689839572176,20.83957219251336,0.03871152566598488,-1.3651057197072394,27.239877769289553,29.0,0.5076011245708116,10.0,1159.0,289.75,212.87457183358782,304.0,45315.58333333334,-0.06171949050563281,-140.9000000000001,501.10000000000014,14.250000000000155,-183.65000000000046,515.3500000000001,352.25,-1.952630247084162,1.0,43.704851094202894,-72.2904352652174,43.7031679,-72.2972714,43.7090834,-72.2836145,343.0,114.33333333333333,44.45597072760118,140.0,1976.3333333333333,-1.7320508075688765,-38.50000000000005,152.83333333333343,-38.50000000000001,38.50000000000005,139.99999999999997,38.5,-1.5000000000000004,1.0,1619.0,323.8,206.94975235549327,455.0,42828.2,-0.6151722486501892,-42.400000000000006,408.59999999999974,80.00000000000006,-362.4000000000002,568.6000000000003,366.0,-1.7975854715241006,2.0,28.0,10.0,7.0,2.5,6.0,2.0,8.0,3.0,25,2,3.0,3.0,3.0 15 | 2013-04-04,15,147.0,0.11648177496038035,0.36919139097863474,0.0,0.13630228317273915,3.9924833332685457,-9.208446978535777e-05,0.17454103316004843,4.665407677005234e-07,-0.0006803923778557176,0.2980856938548238,0.0,20.96213338610981,15.0,11270.0,1.0856372218476062,0.7876007144073849,1.0,0.6203148853350231,-0.15220856831197696,-0.00012061429039467237,1.7116253889959554,1.7033265837461934e-08,-0.00029741958978752735,2.0174690893956972,2.0,-1.373586485149872,2038.0,4,70.0,6.363636363636363,5.7144155829398215,4.0,32.654545454545456,1.3369917002875815,-0.59090909090909,9.318181818181811,-0.02214452214452225,-0.3694638694638686,8.98601398601399,4.5,-0.00018384085396228045,5.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,43.70396628181819,-72.29029656363635,43.7031602,-72.2954618,43.70468,-72.2826015,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,4,3,3.0,3.0,3.0 16 | 2013-04-05,15,2856.0,0.35289756579760284,0.9434141304132698,0.0,0.8900302214634261,2.3891813432419573,0.00010458783291397822,-0.07026480617235294,-3.508283349169536e-08,0.00038847812152877743,-0.4530908603694099,0.0,3.8134449380139026,156.0,30939.0,0.7512748288087028,0.7946622037407728,1.0,0.6314880180541415,0.47401251139465345,2.4379715817721596e-05,0.24928429026390755,-1.4920181396196042e-09,8.582251482539654e-05,-0.17241812025876802,1.0,-1.2652250704778187,4645.0,25,400.0,10.0,13.462197786051474,4.0,181.23076923076923,1.7962177289825905,-0.20750469043151956,14.046341463414628,-0.02966962434228159,0.9496106589174623,6.717944250871066,13.0,2.2523965590629187,14.0,1941.0,485.25,167.23312072274038,555.0,27966.91666666666,-1.922056839548815,107.69999999999996,323.70000000000016,-69.75000000000011,316.95,253.94999999999996,89.75,-0.6975062427207037,1.0,43.65845156333333,-72.27205708916667,41.49884621,-72.290709,43.708693,-71.45800698,512.0,256.0,0.0,256.0,0.0,0.0,-2.842170943040401e-14,255.99999999999997,0.0,2.0097183471152313e-14,255.9999999999999,0.0,-3.0,0.0,1906.0,476.5,161.0248428038357,555.0,25929.0,-1.998141340850333,97.79999999999995,329.80000000000024,-78.50000000000018,333.3000000000003,251.2999999999999,81.5,-0.6674789866724202,1.0,14.0,4.0,7.0,2.0,6.0,2.0,8.0,2.0,25,4,1.0,1.0,1.0 17 | 2013-04-06,15,3827.0,0.46410380790686395,1.0688190366321921,0.0,1.1423741330673671,1.9093284948227232,0.00011857932125863992,-0.02473944398187896,-5.365715490646996e-08,0.0005609825634624846,-0.6326014987699606,0.0,1.6955819108577135,146.0,23406.0,0.7494236680327869,0.8975039945271871,0.0,0.805513420192257,0.512760519663307,3.548337698293886e-05,0.19533299475570481,-6.087450545927682e-09,0.0002256005449828064,-0.794226864683604,2.0,-1.5629059176167392,1208.0,24,179.0,7.16,9.98615708535237,6.0,99.72333333333331,3.363727199426561,-0.05230769230769242,7.787692307692308,-0.06685247120029722,1.5521516164994407,1.6372649572649614,6.0,10.559936488679055,8.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,41.15324364333333,-72.82107547466667,40.85199423,-74.01419915,41.50578384,-71.45561789,559.0,559.0,0.0,559.0,0.0,0.0,inf,0.0,inf,,0.0,0.0,-3.0,0.0,1439.0,479.6666666666667,76.27144507175234,501.0,5817.333333333335,-1.1601926686007091,-53.000000000000064,532.6666666666667,-95.00000000000001,137.00000000000006,500.9999999999999,74.0,-1.4999999999999996,1.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,24,5,1.0,1.0,1.0 18 | 2013-04-07,15,3770.0,0.6528138528138528,1.2042020136131004,0.0,1.4501024895898456,1.3641546972089162,0.0004869193732346637,-0.7529223777146213,1.9705218603245115e-07,-0.0006508599489167093,0.3418109600820257,0.0,-0.06673961785317717,125.0,28114.0,1.0206571065529133,0.8834828240909213,1.0,0.7805419004636698,-0.04020355219201984,6.121608470253964e-05,0.177589188029537,5.079052143572444e-09,-7.868132754001966e-05,0.819788258929005,2.0,-1.7176124704228155,3941.0,17,240.0,8.571428571428571,13.85755194945146,3.5,192.031746031746,2.8939476847271295,-0.10180623973727457,9.945812807881778,0.04050355774493667,-1.1954022988505644,14.68472906403937,7.5,6.977839215263041,9.0,619.0,309.5,127.9863273947651,309.5,16380.5,0.0,-181.00000000000003,399.9999999999999,-90.5,-90.49999999999997,399.9999999999999,90.5,-2.0,1.0,40.852214280000005,-74.014007279375,40.85208478,-74.01413659,40.85248073,-74.01386382,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,619.0,206.33333333333334,170.89567968012923,137.0,29205.333333333336,1.5251744648884495,-132.00000000000003,338.3333333333333,187.99999999999994,-508.00000000000006,400.9999999999998,160.0,-1.5000000000000002,1.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,17,6,1.0,1.0,1.0 19 | 2013-04-08,15,863.0,0.1056045031815957,0.47683626140193075,0.0,0.2273728201877704,5.203663267291479,-2.65545681056923e-05,0.2140931911774015,1.635091030882674e-08,-0.00016015785623911552,0.396016335185746,0.0,27.562431450966923,63.0,30227.0,0.6623644132792813,0.7139950927098258,1.0,0.5097889924137127,0.5967957685908105,3.69484422946199e-07,0.6539338872009175,2.3918516743146753e-10,-1.054549150762143e-05,0.736947736640851,1.0,-0.8626048244768532,6477.0,24,486.0,14.294117647058824,13.743382786271441,10.5,188.88057040998214,1.1604117253726152,0.3920550038197095,7.8252100840336185,-0.04640151515151522,1.9233050038197115,-0.34145658263305817,19.5,0.18506514859407108,10.0,82.0,82.0,0.0,82.0,0.0,0.0,inf,0.0,inf,,0.0,0.0,-3.0,0.0,43.70461674814286,-72.28936310657143,43.7024808,-72.2909076,43.7091297,-72.2835768,60.0,60.0,0.0,60.0,0.0,0.0,inf,0.0,inf,,0.0,0.0,-3.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,26.0,6.0,8.666666666666666,2.0,6.0,1.0,10.0,3.0,24,0,1.0,1.0,1.0 20 | 2013-04-09,15,579.0,0.07081702544031311,0.3704690707572972,0.0,0.13724733238777528,6.400290020199754,-1.0209666524147687e-09,0.07082119864150486,-2.870409853364816e-09,2.346457958460495e-05,0.03885322882384192,0.0,44.408654713882434,36.0,17151.0,0.46334017722066134,0.6496552483113475,0.0,0.4220519416584785,1.0846596226470953,-1.3491710062820986e-06,0.48830995961942775,-5.719570709543884e-10,1.9821819975094577e-05,0.3577061162553152,1.0,0.010154414516863497,5246.0,25,330.0,9.166666666666666,9.575265755357094,5.0,91.68571428571427,1.5546994787353503,0.08828828828828834,7.621621621621624,-0.011678640161612281,0.49704069394471834,5.305357989568513,10.25,1.8308648325773538,14.0,1480.0,370.0,160.0749824301099,351.0,25624.0,0.19151187331763775,-22.80000000000012,404.20000000000016,136.00000000000028,-430.8000000000008,540.2000000000004,253.0,-1.8539584939410696,2.0,43.70420620375001,-72.29175759597223,43.7035153,-72.2955079,43.7090729,-72.2843155,226.0,113.0,0.0,113.0,0.0,0.0,-1.4210854715202004e-14,112.99999999999999,0.0,0.0,112.99999999999996,0.0,-3.0,0.0,1752.0,438.0,222.01801728688596,548.0,49292.0,-1.999029194472093,46.3999999999999,368.4000000000001,110.00000000000009,-283.60000000000025,478.4000000000001,116.0,-0.6671032986712064,2.0,14.0,6.0,7.0,3.0,6.0,3.0,8.0,3.0,25,1,1.0,1.0,1.0 21 | 2013-04-10,15,425.0,0.0517724448775734,0.2967901524749769,0.0,0.08808439460612005,7.409669347798771,7.170600549201937e-06,0.022344300223648642,-4.991736689035351e-09,4.814277529280411e-05,-0.033698806129808495,0.0,63.46249847025403,26.0,29279.0,0.6855142703284868,0.762867878853577,1.0,0.5819674005865558,0.5984365895551433,-8.299030473449229e-06,0.8627400660889949,-2.0363425416074172e-11,-7.429308573928729e-06,0.8565492406545584,1.0,-1.0514076374923242,5720.0,24,411.0,15.807692307692308,18.92515623347766,9.5,358.1615384615384,2.085755916683291,0.9829059829059833,3.5213675213675244,-0.03986568986568987,1.9795482295482296,-0.465201465201477,13.25,3.00936845516191,10.0,590.0,590.0,0.0,590.0,0.0,0.0,inf,0.0,inf,,0.0,0.0,-3.0,0.0,43.70477160694444,-72.289442325,43.7031966,-72.2907973,43.7090624,-72.2836714,65.0,65.0,0.0,65.0,0.0,0.0,inf,0.0,inf,,0.0,0.0,-3.0,0.0,60.0,60.0,0.0,60.0,0.0,0.0,inf,0.0,inf,,0.0,0.0,-3.0,0.0,7.0,2.0,7.0,2.0,7.0,2.0,7.0,2.0,24,2,1.0,1.0,1.0 22 | 2013-04-11,15,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-3.0,0.0,3375.0,0.40438533429187634,0.5506355059086504,0.0,0.30319946036727535,0.9430563913275543,7.928258668224356e-05,0.07357874136021526,-8.015563659557504e-09,0.00014617246542125088,-0.01944278333949775,1.0,-0.15209399032835247,1594.0,4,56.0,7.0,6.969320524371696,4.0,48.57142857142857,1.8433732210483476,1.4285714285714284,1.9999999999999962,0.04761904761904757,1.0952380952380951,2.3333333333333295,4.0,0.6841522491349479,2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,43.704277023076926,-72.29052875384616,43.7041948,-72.2905534,43.7043174,-72.2904872,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,4,3,1.0,1.0,1.0 23 | 2013-04-12,15,1239.0,0.6014563106796117,1.1694250487595705,0.0,1.3675549446663238,1.5193212650416446,0.0006742868288500772,-0.09272197962154285,-2.6437867652405225e-07,0.0012186425238131006,-0.2794359829938597,0.0,0.3826123901191769,126.0,25280.0,1.3678913478707861,0.6793851755561809,1.0,0.46156421676550285,-0.6101172301196347,6.997622148934547e-05,0.7213110613092275,-3.739088685685896e-09,0.00013907458040082147,0.5084996322550357,1.0,-0.7219784685686883,4423.0,7,222.0,15.857142857142858,15.864120828786248,8.5,251.67032967032966,1.0165443774187144,-1.4417582417582426,25.22857142857144,-0.4292582417582421,4.138598901098903,14.067857142857129,23.5,-0.3983378781049458,4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,43.708519307500005,-72.28461658625,43.70525206,-72.28760059,43.7091206,-72.2840356,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,6.0,2.0,6.0,2.0,6.0,2.0,6.0,2.0,7,4,1.0,1.0,1.0 24 | 2013-04-13,15,2699.0,0.338178173161258,0.9364692067910675,0.0,0.876974575267891,2.4625049308080302,9.602825096840941e-05,-0.04497454820269569,-3.789952053510367e-08,0.00039846642483853695,-0.44716691308765383,0.0,4.121189323267346,54.0,23241.0,0.6715693356835323,0.8135252291988241,0.0,0.6618232985429993,0.6669593502985551,2.0193165697599953e-05,0.32216698961796003,-3.9335311021271166e-09,0.00015631694301781088,-0.46292689607635734,1.0,-1.1701885343262886,2745.0,24,268.0,7.882352941176471,15.022739745047017,3.0,225.6827094474153,3.528196784702957,0.10084033613445365,6.218487394957987,-0.050786223580341315,1.7767857142857166,-2.719887955182083,5.75,10.288044903516726,10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,43.70440965,-72.29141144375001,43.7041017,-72.2974512,43.7054205,-72.2904541,559.0,559.0,0.0,559.0,0.0,0.0,inf,0.0,inf,,0.0,0.0,-3.0,0.0,556.0,556.0,0.0,556.0,0.0,0.0,inf,0.0,inf,,0.0,0.0,-3.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,24,5,1.0,1.0,1.0 25 | 2013-04-14,15,152.0,0.018462285922506982,0.17045989518746066,0.0,0.02905657586732007,12.234123761514205,9.088278231054654e-06,-0.018945067276513974,2.2199620885851343e-09,-9.186449682178172e-06,0.006124813632455914,0.0,181.86467148745794,10.0,14167.0,0.42844613802697634,0.6636577900230929,0.0,0.44044166225833564,1.2671014832491234,1.3494731171771922e-05,0.20534449492965715,2.8164400348457727e-09,-7.96308585804036e-05,0.7185285781906453,1.0,0.31901344970874623,3939.0,24,216.0,9.818181818181818,14.477030620414382,3.5,209.5844155844156,1.8402945290654917,0.33088650479954856,6.343873517786556,-0.06684076792772455,1.7345426312817642,1.6650197628458485,6.0,1.4229266114688723,6.0,157.0,78.5,21.920310216782973,78.5,480.5,0.0,30.99999999999997,62.99999999999998,15.5,15.499999999999993,62.99999999999998,15.5,-2.0,1.0,43.70452390694446,-72.28983375138891,43.7031566,-72.290835,43.705512,-72.2872501,408.0,204.0,38.18376618407357,204.0,1458.0,0.0,54.0,176.99999999999997,27.0,26.999999999999964,177.0,27.0,-2.0,1.0,100.0,100.0,0.0,100.0,0.0,0.0,inf,0.0,inf,,0.0,0.0,-3.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,24,6,1.0,1.0,1.0 26 | 2013-04-15,15,756.0,0.09264705882352942,0.4034352463299383,0.0,0.162759997981298,5.504740327382089,9.15453646542472e-06,0.055301127312829275,7.67991162249972e-09,-5.350586246255044e-05,0.14049838305523277,0.0,33.74185652005639,38.0,28269.0,0.7083719648182023,0.7804692716765504,1.0,0.6091322840313251,0.5597302841765365,2.4873374622706514e-05,0.2120735209713386,-5.380547887831559e-10,4.634498902388715e-05,0.06926939219148667,1.0,-1.1497229627119112,4653.0,24,364.0,13.481481481481481,16.878229879778388,5.0,284.87464387464394,1.7967767943126354,-0.38278388278388303,18.457671957671963,-0.10415140415140418,2.3251526251526253,7.1746031746031615,15.0,1.9998251323752436,8.0,395.0,98.75,41.08020610139795,81.0,1687.583333333333,1.9287168888287147,11.499999999999982,81.50000000000003,-20.250000000000057,72.25000000000013,61.24999999999993,26.25,-0.6986713223295822,2.0,43.70511393661972,-72.29092202605635,43.7031513,-72.2975087,43.7091203,-72.2841411,280.0,93.33333333333333,42.146569650842686,78.0,1776.3333333333335,1.4204555720987053,40.0,53.333333333333336,23.000000000000004,-6.000000000000017,60.99999999999999,40.0,-1.5,1.0,385.0,96.25,43.115155881275285,78.5,1858.9166666666667,1.8370664504330165,13.099999999999994,76.6,-17.750000000000043,66.35000000000011,58.84999999999992,32.75,-0.7472329048898652,2.0,6.0,1.0,6.0,1.0,6.0,1.0,6.0,1.0,24,0,1.0,1.0,1.0 27 | 2013-04-16,15,486.0,0.0592538405267008,0.2694008837754718,0.0,0.07257683617900525,5.729493849529036,1.3891945452746105e-05,0.0022899181977154262,5.119921386219579e-09,-2.809652983564067e-05,0.05967416775851072,0.0,42.7870455129085,36.0,18016.0,0.5404205537390887,0.7310477034062351,0.0,0.5344307446555308,0.9581442709873133,3.271616062879979e-06,0.4858892572030058,3.1673046158272956e-09,-0.00010231365061033871,1.0725034012949621,1.0,-0.507481830621483,4124.0,24,230.0,6.764705882352941,8.019139315750717,4.0,64.30659536541889,1.8312592530557272,0.0036669213139799263,6.7042016806722735,0.013432645785587,-0.4396103896103907,9.068347338935583,7.0,2.4093379155788233,11.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,43.70475422069445,-72.2898812251389,43.7015519,-72.2974932,43.7091298,-72.2834092,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,67.0,67.0,0.0,67.0,0.0,0.0,inf,0.0,inf,,0.0,0.0,-3.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,24,1,1.0,1.0,1.0 28 | 2013-04-17,15,213.0,0.1393979057591623,0.5763900063947222,0.0,0.33222543947170785,4.426707873852476,-0.0002515559407582691,0.3314608665281007,-8.8017374224635e-08,-0.00011715341031725167,0.2972778229526022,0.0,18.637854315190662,24.0,7110.0,0.7090147586757081,0.7343259312007444,1.0,0.5392345732338404,0.5161837035220321,-3.681374623336121e-05,0.8935804754166647,-7.8761545676642e-09,4.216045561660758e-05,0.7616145841253669,1.0,-1.0028812396682414,1769.0,6,127.0,7.470588235294118,6.615489844475081,5.0,43.764705882352935,1.321535930431984,0.22058823529411759,5.705882352941174,-0.1382868937048504,2.433178534571724,0.1744066047471578,7.0,0.26835669902228654,4.0,253.0,63.25,1.5,64.0,2.25,-1.9999999999999998,0.8999999999999865,61.900000000000034,-0.7500000000000127,3.150000000000012,61.15,0.75,-0.6666666666666665,1.0,43.704764912499996,-72.28970765000001,43.7042421,-72.290552,43.7059056,-72.2885801,282.0,141.0,0.0,141.0,0.0,0.0,-4.263256414560601e-14,140.99999999999997,2.842170943040401e-14,2.0097183471152313e-14,140.99999999999997,0.0,-3.0,0.0,234.0,78.0,0.0,78.0,0.0,0.0,-1.2710574864626037e-14,78.00000000000003,8.607225365373044e-15,-5.233404040604806e-15,77.99999999999996,0.0,-3.0,0.0,33.0,4.0,8.25,1.0,8.0,1.0,9.0,1.0,6,2,1.0,1.0,1.0 29 | -------------------------------------------------------------------------------- /src/main/data/aggregated_data/student 39/one_day_aggregate.csv: -------------------------------------------------------------------------------- 1 | ,student_id,sum,mean,std,median,var,skew,linear_m,linear_c,poly_a,poly_b,poly_c,iqr,kurtosis,mcr,sum,mean,std,median,var,skew,linear_m,linear_c,poly_a,poly_b,poly_c,iqr,kurtosis,mcr,sum,sum,mean,std,median,var,skew,linear_m,linear_c,poly_a,poly_b,poly_c,iqr,kurtosis,mcr,sum,mean,std,median,var,skew,linear_m,linear_c,poly_a,poly_b,poly_c,iqr,kurtosis,mcr,mean,mean,min,min,max,max,sum,mean,std,median,var,skew,linear_m,linear_c,poly_a,poly_b,poly_c,iqr,kurtosis,mcr,sum,mean,std,median,var,skew,linear_m,linear_c,poly_a,poly_b,poly_c,iqr,kurtosis,mcr,sum,sum,mean,mean,min,min,max,max,sum,dow,stress_level,stress_level,stress_level 2 | ,,activity_inference,activity_inference,activity_inference,activity_inference,activity_inference,activity_inference,activity_inference,activity_inference,activity_inference,activity_inference,activity_inference,activity_inference,activity_inference,activity_inference,audio_activity_inference,audio_activity_inference,audio_activity_inference,audio_activity_inference,audio_activity_inference,audio_activity_inference,audio_activity_inference,audio_activity_inference,audio_activity_inference,audio_activity_inference,audio_activity_inference,audio_activity_inference,audio_activity_inference,audio_activity_inference,call_recorded,conv_duration_min,conv_duration_min,conv_duration_min,conv_duration_min,conv_duration_min,conv_duration_min,conv_duration_min,conv_duration_min,conv_duration_min,conv_duration_min,conv_duration_min,conv_duration_min,conv_duration_min,conv_duration_min,dark_duration_min,dark_duration_min,dark_duration_min,dark_duration_min,dark_duration_min,dark_duration_min,dark_duration_min,dark_duration_min,dark_duration_min,dark_duration_min,dark_duration_min,dark_duration_min,dark_duration_min,dark_duration_min,latitude,longitude,latitude,longitude,latitude,longitude,phonecharge_duration_min,phonecharge_duration_min,phonecharge_duration_min,phonecharge_duration_min,phonecharge_duration_min,phonecharge_duration_min,phonecharge_duration_min,phonecharge_duration_min,phonecharge_duration_min,phonecharge_duration_min,phonecharge_duration_min,phonecharge_duration_min,phonecharge_duration_min,phonecharge_duration_min,phonelock_duration_min,phonelock_duration_min,phonelock_duration_min,phonelock_duration_min,phonelock_duration_min,phonelock_duration_min,phonelock_duration_min,phonelock_duration_min,phonelock_duration_min,phonelock_duration_min,phonelock_duration_min,phonelock_duration_min,phonelock_duration_min,phonelock_duration_min,hours_slept,sleep_rating,hours_slept,sleep_rating,hours_slept,sleep_rating,hours_slept,sleep_rating,sms_instance,,min,max,mean 3 | time,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, 4 | 2013-03-24,39,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-3.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-3.0,0.0,24,35.0,7.0,0.0,7.0,0.0,0.0,4.864753555590496e-16,6.9999999999999964,6.664221220012197e-16,-2.9159759954685893e-15,7.0,0.0,-3.0,0.0,1280.0,256.0,0.0,256.0,0.0,0.0,3.113442275577917e-14,255.99999999999986,3.763324924242182e-15,-5.2577291510040155e-14,255.9999999999999,0.0,-3.0,0.0,43.706606,-72.2870135,43.706606,-72.2870135,43.706606,-72.2870135,1895.0,379.0,0.0,379.0,0.0,0.0,-1.0378140918593056e-14,378.9999999999999,2.5088832828281212e-15,-3.0562847380220597e-14,378.9999999999998,0.0,-3.0,0.0,1320.0,264.0,0.0,264.0,0.0,0.0,2.0756281837186113e-14,263.9999999999997,2.5088832828281212e-15,-4.8086676043722836e-14,263.99999999999994,0.0,-3.0,0.0,40.0,5.0,8.0,1.0,8.0,1.0,8.0,1.0,24,6,1.0,3.0,1.8 5 | 2013-03-25,39,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,24,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,24,0,1.0,3.0,1.8 6 | 2013-03-26,39,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,15,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,15,1,1.0,3.0,1.8 7 | 2013-03-27,39,3.0,0.05555555555555555,0.40824829046386313,0.0,0.16666666666666674,7.34846922834952,-0.005831903945111494,0.21010101010101012,0.00047986604590378134,-0.03126480437801189,0.4305194805194803,0.0,49.01886792452826,2.0,32.0,0.2064516129032258,0.5308260432833916,0.0,0.28177628822790113,2.5403332405607384,0.0022783667944958263,0.031017369727047113,5.4158486095057834e-05,-0.006062040064143074,0.24369774462233912,0.0,5.142856896546693,29.0,1,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,43.7066064,-72.28700375,43.706606,-72.2870135,43.7066068,-72.286994,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,1,2,1.0,3.0,1.8 8 | 2013-03-28,39,240.0,0.24439918533604887,0.7829374336396483,0.0,0.6129910249942387,3.0919271038344136,0.0006970266803451422,-0.09749240137324335,2.151303802918863e-06,-0.0014134023503182627,0.24721100696844614,0.0,7.831888037178578,14.0,2699.0,0.5774497218656397,0.7632786567641858,0.0,0.5825943078717398,0.8804384405921662,2.796827227498053e-05,0.5121018536951477,8.633508472157477e-08,-0.00037547557862893833,0.8262501322656655,1.0,-0.7408680642850789,715.0,3,34.0,2.4285714285714284,2.1737697038266783,2.0,4.7252747252747245,1.4496304669029132,-0.2065934065934068,3.771428571428573,0.043956043956043966,-0.7780219780219779,4.914285714285713,1.75,0.47043807463493925,5.0,256.0,256.0,0.0,256.0,0.0,0.0,inf,0.0,inf,,0.0,0.0,-3.0,0.0,43.697102027499994,-72.28727484125,43.63662342,-72.2893004,43.706688,-72.2865782,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,264.0,264.0,0.0,264.0,0.0,0.0,inf,0.0,inf,,0.0,0.0,-3.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,3,3,1.0,3.0,1.8 9 | 2013-03-29,39,99.0,0.014690606914972548,0.20295590585224543,0.0,0.04119109972030551,14.326167214813271,-1.1398648557133449e-05,0.0530926539039551,6.661973692212009e-09,-5.628702729525799e-05,0.10349482183041271,0.0,206.19376135594445,14.0,4612.0,0.20523317906728372,0.4758165013759989,0.0,0.22640134298169598,2.293503937388958,-2.3203699746302095e-05,0.46593834756686087,4.738884016231806e-10,-3.38524460191766e-05,0.5058179023587759,0.0,4.538990735253608,2606.0,20,83.0,3.608695652173913,3.9970344738293466,2.0,15.976284584980242,2.2241873187783634,-0.13142292490118582,5.054347826086956,-0.0026821005081874632,-0.0724167137210617,4.847826086956524,3.5,4.061603595204338,8.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,43.65162056041667,-72.30992046458339,43.6515916,-72.3100202,43.6516478,-72.3098184,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,20,4,1.0,3.0,1.8 10 | 2013-03-30,39,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0,5,1.0,3.0,1.8 11 | 2013-03-31,39,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0,6,1.0,3.0,1.8 12 | 2013-04-01,39,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0,0,1.0,3.0,1.8 13 | 2013-04-02,39,188.0,0.06010230179028133,0.37541183749816315,0.0,0.14093404773374726,7.039252710309792,3.7690418865056504e-05,0.001173331894765481,-1.942523495833546e-08,9.84331285797715e-05,-0.03047361986660103,0.0,50.64166670468684,12.0,5534.0,0.4239963224026969,0.6729105047311111,0.0,0.4528085473774787,1.304867221112849,4.375635480670814e-05,0.13846422911152273,-9.80507397295835e-09,0.00017172237522778785,-0.1398618653043261,1.0,0.36088794087260956,1758.0,11,89.0,4.238095238095238,7.777562355293346,2.0,60.49047619047618,4.098859249672837,0.24675324675324672,1.7705627705627704,-0.03679158370233895,0.982584920800025,-0.5595708639186973,3.0,13.548673108506879,8.0,443.0,221.5,48.79036790187178,221.5,2380.5,0.0,-69.00000000000003,255.99999999999997,-34.49999999999994,-34.499999999999964,255.99999999999997,34.5,-2.0,1.0,43.69470196892858,-72.29175623142858,43.6515465,-72.3101,43.7066857,-72.2865983,758.0,379.0,0.0,379.0,0.0,0.0,-5.684341886080802e-14,379.0,0.0,0.0,379.0,0.0,-3.0,0.0,726.0,145.2,87.48828493004078,121.0,7654.200000000001,1.9619960375533756,45.6,53.999999999999964,19.428571428571455,-32.114285714285856,92.85714285714295,10.0,0.04815587276938427,1.0,8.0,1.0,8.0,1.0,8.0,1.0,8.0,1.0,11,1,1.0,1.0,1.0 14 | 2013-04-03,39,214.0,0.025745909528392685,0.25595785531767484,0.0,0.06551442369882376,10.878990280255,3.642582313516754e-06,0.010609158724573808,-4.904520856389826e-09,4.440405515097259e-05,-0.045845481155302556,0.0,121.0262264672838,12.0,7587.0,0.2548367593712213,0.5473008851916176,0.0,0.2995382589315282,2.063154731000235,6.465952816097728e-07,0.24521186530681907,-1.8399777842229598e-10,6.1243931430199175e-06,0.218032858251123,0.0,3.203975390105466,3216.0,24,142.0,4.176470588235294,4.569136170830716,2.0,20.87700534759358,1.709617555218508,0.11550802139037432,2.2705882352941194,0.006978927934810291,-0.11479660045836516,3.4988795518207287,6.0,2.472915196967663,15.0,630.0,315.0,352.13917703090067,315.0,124002.0,0.0,-497.9999999999999,563.9999999999998,-248.9999999999999,-248.99999999999983,563.9999999999999,249.0,-2.0,1.0,43.67382474263888,-72.30066108680555,43.6515754,-72.31012458,43.706805,-72.2866522,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,91.0,91.0,0.0,91.0,0.0,0.0,inf,0.0,inf,,0.0,0.0,-3.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,24,2,1.0,1.0,1.0 15 | 2013-04-04,39,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-3.0,0.0,117.0,0.005229050279329609,0.08033300928212353,0.0,0.006453392380321746,17.134852150142745,5.582150227553964e-07,-0.001015701180235009,-1.262872756875993e-11,8.407701733788303e-07,-0.00206930224438469,0.0,328.4396510512682,108.0,24,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,43.70666595428571,-72.28693728285712,43.7065455,-72.2872734,43.7071688,-72.2861764,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,24,3,1.0,1.0,1.0 16 | 2013-04-05,39,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-3.0,0.0,2618.0,0.1063190383365822,0.3729936517015739,0.0,0.13912426420967502,3.720729381757936,1.7546828997200846e-05,-0.10970874686245591,1.5374678545516002e-09,-2.0310241985423216e-05,0.045644053426572184,0.0,13.708581830226752,1374.0,24,41.0,4.1,5.425249610233001,2.0,29.43333333333333,2.2331719569061255,0.696969696969697,0.9636363636363646,-0.09848484848484874,1.5833333333333348,-0.2181818181818211,3.5,2.4383645273948984,4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,43.706670516567165,-72.28692205776116,43.7065193,-72.2872863,43.7072105,-72.2861743,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,24,4,1.0,1.0,1.0 17 | 2013-04-06,39,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-3.0,0.0,319.0,0.014533691739942595,0.13773330891832739,0.0,0.0189704643855914,10.581762621946439,-3.23425283430261e-06,0.05002638234357945,6.22223388275951e-10,-1.6890811760183187e-05,0.09997979880129622,0.0,123.25529784027208,148.0,23,5.0,5.0,0.0,5.0,0.0,0.0,inf,0.0,inf,,0.0,0.0,-3.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,43.706681677777766,-72.28689956666666,43.7065456,-72.2871426,43.70708,-72.2863155,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,23,5,1.0,1.0,1.0 18 | 2013-04-07,39,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0,6,1.0,1.0,1.0 19 | 2013-04-08,39,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0,0,1.0,1.0,1.0 20 | 2013-04-09,39,228.0,0.43346007604562736,0.9290764514768182,0.0,0.8631830526887565,2.1120746285975325,0.002193841108134656,-0.1424232148397198,8.212313451896506e-06,-0.002117623454111007,0.23411135692973473,0.0,2.989889006352067,14.0,2059.0,0.8084020416175893,0.8428107773432211,1.0,0.7103300064058845,0.373880019863503,0.0005160635427431581,0.15145315170554957,-6.601199348412443e-07,0.0021967288968489664,-0.5614290693276642,2.0,-1.4918666035720887,208.0,2,22.0,5.5,7.14142842854285,2.5,51.0,1.7791794008826476,2.4,1.9000000000000015,-3.0000000000000075,11.400000000000016,-1.100000000000013,6.0,-0.7820069204152249,2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,43.70670343333333,-72.2868021,43.7066167,-72.2869602,43.7067759,-72.2865921,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,2,1,1.0,1.0,1.0 21 | 2013-04-10,39,194.0,0.023342558055588977,0.24760502487596786,0.0,0.06130824834382866,11.387942278445934,-2.571813604436846e-06,0.034028443582024066,-9.294046575728807e-10,5.15153909999379e-06,0.023332887311838413,0.0,131.68109633496988,24.0,10800.0,0.35328753680078506,0.6248816722703673,0.0,0.3904771043394107,1.5629319342978376,-1.3194590764531538e-05,0.5549602593412675,2.283519419216313e-09,-8.299949589055496e-05,0.9105929826566481,1.0,1.2001157183789974,3278.0,28,270.0,7.297297297297297,9.039619168677113,3.0,81.71471471471472,1.4453090672045303,-0.2603129445234707,11.98293029871977,-0.0034597929334771404,-0.13576039891829367,11.256373782689572,10.0,0.4335483303413903,10.0,264.0,66.0,0.0,66.0,0.0,0.0,-1.519204271928768e-14,66.00000000000001,1.791528210723876e-15,-2.105971354791939e-14,66.0,0.0,-3.0,0.0,43.65125515488888,-72.31020325488888,43.63562777,-72.31726057,43.6519067,-72.3090695,1516.0,379.0,0.0,379.0,0.0,0.0,-9.115225631572607e-14,379.00000000000017,4.299667705737303e-14,-1.8445788548524465e-13,379.0,0.0,-3.0,0.0,364.0,91.0,0.0,91.0,0.0,0.0,-3.4182096118397275e-14,91.00000000000006,7.166112842895505e-15,-6.440457596980786e-14,91.00000000000004,0.0,-3.0,0.0,60.0,8.0,7.5,1.0,7.0,1.0,8.0,1.0,28,2,1.0,1.0,1.0 22 | 2013-04-11,39,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-3.0,0.0,850.0,0.062353286384976524,0.27207062925536213,0.0,0.07402242730340872,4.714212532511075,-2.1604812190227625e-05,0.20960088386747278,4.863852237914597e-09,-8.790398204524145e-05,0.36021049805477934,0.0,23.612808347088095,356.0,14,16.0,3.2,1.4832396974191326,3.0,2.2,-0.5516180692881077,-0.5000000000000003,4.199999999999997,0.5,-2.5,5.199999999999998,1.0,-0.7830578512396698,1.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,43.706820647368424,-72.2868793131579,43.7066714,-72.287252,43.7069485,-72.2865441,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,14,3,1.0,1.0,1.0 23 | 2013-04-12,39,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0,4,1.0,1.0,1.0 24 | 2013-04-13,39,6.0,0.000774593338497289,0.048202489347932115,0.0,0.002323479979337509,62.22137584975658,-5.767572493453578e-07,0.0030080857865871858,3.431655565401201e-10,-3.2345744847485888e-06,0.006438441898414287,0.0,3868.0002582644643,2.0,3840.0,0.15276285952977683,0.4124200933062466,0.0,0.1700903333627332,2.754795054711937,-3.902130770604823e-06,0.2018048390547382,3.6449822540249087e-10,-1.3064158164321852e-05,0.24018609881158481,0.0,7.1953395982505075,2126.0,24,85.0,3.5416666666666665,3.6113247800034087,3.0,13.041666666666668,2.5939725445887776,-0.18043478260869575,5.616666666666667,0.010177865612648211,-0.4145256916996044,6.474999999999996,3.25,6.331680784560513,13.0,168.0,84.0,0.0,84.0,0.0,0.0,0.0,83.99999999999997,0.0,0.0,83.99999999999997,0.0,-3.0,0.0,43.65146435014928,-72.31021196850747,43.6512502,-72.3104701,43.6517348,-72.3090693,379.0,379.0,0.0,379.0,0.0,0.0,inf,0.0,inf,,0.0,0.0,-3.0,0.0,136.0,68.0,0.0,68.0,0.0,0.0,-1.4210854715202004e-14,67.99999999999999,0.0,0.0,67.99999999999997,0.0,-3.0,0.0,16.0,2.0,8.0,1.0,8.0,1.0,8.0,1.0,24,5,1.0,1.0,1.0 25 | 2013-04-14,39,15.0,0.0018067935437244037,0.07360549377751958,0.0,0.005417768714232473,40.71854259675242,-1.0067975633732423e-06,0.005985506830505045,3.0805215522534553e-10,-3.5639385038988386e-06,0.009522885131565467,0.0,1655.4006026274549,2.0,6359.0,0.22031666839898834,0.46609106507058656,0.0,0.21724088093863375,1.999245157118002,-4.081296089476505e-07,0.22620638678571178,2.0811769455501086e-09,-6.04750586114149e-05,0.5151383264424132,0.0,3.2408848316055696,2918.0,24,125.0,4.032258064516129,4.902270704940327,2.0,24.032258064516135,2.122345835728973,-0.08830645161290353,5.356854838709682,0.03986120942461321,-1.2841427343512992,11.136730205278592,3.5,3.271575862949115,9.0,162.0,162.0,0.0,162.0,0.0,0.0,inf,0.0,inf,,0.0,0.0,-3.0,0.0,43.65589040625,-72.3069261748611,43.6512503,-72.3103178,43.9698714,-72.0800778,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,24,6,1.0,1.0,1.0 26 | 2013-04-15,39,449.0,0.05410942395758014,0.3791455394435149,0.0,0.14375134007991391,7.330408317746498,2.3806529385002986e-05,-0.04465196319610469,6.991683561196438e-09,-3.420346912224381e-05,0.03555652807324847,0.0,53.131125338899366,14.0,6773.0,0.2441160569471977,0.5513431861429943,0.0,0.3039793089063084,2.1798264694310587,1.7691195619550808e-05,-0.001296208687211237,2.2439865997113334e-09,-4.4565968602840436e-05,0.2865705424830891,0.0,3.6160161764590404,2666.0,24,96.0,2.6666666666666665,2.4842360136324753,1.0,6.171428571428572,1.3167999385380926,0.08108108108108109,1.2477477477477483,0.004291332464707077,-0.06911555518366663,2.098862019914652,3.0,0.4207818930041145,17.0,561.0,561.0,0.0,561.0,0.0,0.0,inf,0.0,inf,,0.0,0.0,-3.0,0.0,43.67473904126761,-72.30040177774644,43.6513253,-72.310393,43.7069271,-72.2866941,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,576.0,576.0,0.0,576.0,0.0,0.0,inf,0.0,inf,,0.0,0.0,-3.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,24,0,1.0,1.0,1.0 27 | 2013-04-16,39,396.0,0.047705095771593785,0.34134898618630133,0.0,0.11651913037041574,7.849577432922178,1.3181222409667065e-05,-0.006996977228524549,2.677323675013247e-09,-9.0405640929429e-06,0.023739457135668843,0.0,62.697978689691396,26.0,8346.0,0.2726203697654668,0.5452362239427083,0.0,0.29728253989930314,1.888983296911291,1.272436690260772e-06,0.25314381756599025,1.6816560115438e-09,-5.0208098791129504e-05,0.5157975095920435,0.0,2.5843870869547727,3352.0,26,164.0,3.4166666666666665,2.908778593808992,2.0,8.460992907801417,1.628687189670622,-0.002496743378202389,3.4753401360544216,0.0044662916045234,-0.21241244879080218,5.08469387755102,3.25,2.446935146274476,18.0,1122.0,561.0,0.0,561.0,0.0,0.0,-1.1368683772161603e-13,560.9999999999999,0.0,0.0,561.0,0.0,-3.0,0.0,43.66866922999999,-72.30295884712329,43.63488578,-72.31602686,43.7069678,-72.2868027,758.0,379.0,0.0,379.0,0.0,0.0,-5.684341886080802e-14,379.0,0.0,0.0,379.0,0.0,-3.0,0.0,1152.0,576.0,0.0,576.0,0.0,0.0,-1.1368683772161603e-13,575.9999999999999,0.0,-4.0194366942304625e-14,575.9999999999999,0.0,-3.0,0.0,24.0,3.0,8.0,1.0,8.0,1.0,8.0,1.0,26,1,1.0,1.0,1.0 28 | 2013-04-17,39,60.0,0.007221954742416947,0.14702486001952286,0.0,0.02161630946376029,20.311360823905872,-3.880546263283966e-06,0.02333980364696689,1.036966471969707e-09,-1.2494626745936316e-05,0.03526456239511865,0.0,410.4024131274136,6.0,2543.0,0.10343705511490746,0.355100873961704,0.0,0.126096630688366,3.646595538948362,-8.265309769204777e-06,0.2050342427979725,3.595050296305674e-10,-1.710338141764266e-05,0.24124529535356418,0.0,13.425724815437622,1534.0,25,39.0,2.0526315789473686,1.35292621998583,2.0,1.8304093567251465,0.34588519610210783,-0.07719298245614035,2.747368421052631,-0.011057054400707644,0.12183399675659741,2.1834586466165407,2.0,-0.5924986475313623,8.0,561.0,561.0,0.0,561.0,0.0,0.0,inf,0.0,inf,,0.0,0.0,-3.0,0.0,43.6515135339726,-72.3100754149315,43.6512502,-72.3103966,43.65184231,-72.3090693,379.0,379.0,0.0,379.0,0.0,0.0,inf,0.0,inf,,0.0,0.0,-3.0,0.0,172.0,86.0,0.0,86.0,0.0,0.0,-7.105427357601002e-15,85.99999999999999,0.0,5.024295867788078e-15,85.99999999999999,0.0,-3.0,0.0,16.0,2.0,8.0,1.0,8.0,1.0,8.0,1.0,25,2,1.0,1.0,1.0 29 | 2013-04-18,39,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-3.0,0.0,696.0,0.03083466241360978,0.2032629006624285,0.0,0.041315806785704276,7.297245457891234,1.7955321709597366e-06,0.010571184098243659,-2.8158397125606024e-10,8.151163986180279e-06,-0.013336584246677592,0.0,57.37530601435398,482.0,24,2.0,0.6666666666666666,0.5773502691896258,1.0,0.33333333333333337,-1.732050807568877,0.0,0.6666666666666665,0.9999999999999996,-1.9999999999999996,0.9999999999999999,0.5,-1.5000000000000002,2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,43.65150400444443,-72.3100368088889,43.6513751,-72.3102704,43.65226722,-72.3094698,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,24,3,1.0,1.0,1.0 30 | 2013-04-19,39,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-3.0,0.0,2874.0,0.11335936575553189,0.3599225258718255,0.0,0.12954422462995488,3.323430004755727,-7.404415103128647e-06,0.2072177316027905,1.1368226046253779e-09,-3.6225141775591246e-05,0.32899010524839084,0.0,11.073682840732742,1652.0,24,58.0,5.2727272727272725,9.778454981140008,2.0,95.61818181818182,3.0243782530248042,-1.3818181818181812,12.18181818181818,0.2191142191142193,-3.5729603729603725,15.468531468531474,3.5,5.2263429210045675,4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,43.65151443263889,-72.31010586055555,43.6513242,-72.3104471,43.65197543,-72.3093606,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,24,4,1.0,1.0,1.0 31 | 2013-04-20,39,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-3.0,0.0,712.0,0.03159389421370252,0.20569926492109045,0.0,0.04231218758907695,7.204413604812396,1.857501460072635e-06,0.010664496512334094,-8.942465930364886e-11,3.872686157480363e-06,0.0030961345171031467,0.0,55.88762073354225,510.0,24,3.0,1.5,0.7071067811865476,1.5,0.5,0.0,0.9999999999999998,1.0,0.4999999999999998,0.49999999999999967,0.9999999999999997,0.5,-2.0,1.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,43.651554771805564,-72.31003423819446,43.651328,-72.3104417,43.65187569,-72.3090692,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,24,5,1.0,1.0,1.0 32 | 2013-04-21,39,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-3.0,0.0,1685.0,0.07042842215256008,0.29360401057482094,0.0,0.08620331502561956,4.507176794788804,-2.297432130227135e-06,0.09791030529433703,6.084469900366e-10,-1.685391791986277e-05,0.15594944021857934,0.0,21.33602082674271,988.0,24,28.0,4.666666666666667,3.3862466931200785,4.5,11.466666666666667,0.15108996873034386,0.11428571428571394,4.3809523809523805,-0.5535714285714278,2.882142857142855,2.5357142857142896,5.5,-1.4707950243374803,5.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,43.65148991125002,-72.31009467916667,43.6513593,-72.31080198,43.651926,-72.309606,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,24,6,1.0,1.0,1.0 33 | 2013-04-22,39,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-3.0,0.0,8311.0,0.253631591796875,0.48359632805453756,0.0,0.2338654085078319,1.7070284188385492,1.812510727728304e-05,-0.04332110328049185,4.064414415542989e-10,4.807240561873342e-06,0.02940776685236047,0.0,2.0333884547748395,4834.0,24,209.0,5.9714285714285715,6.065746228694732,4.0,36.79327731092437,1.5914841301013354,0.1394957983193278,3.6000000000000005,0.018678724561077505,-0.49558083675730746,7.0929214929214925,8.5,1.8255690635379649,15.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,43.65148676138889,-72.31008864125002,43.6513554,-72.31040712,43.65179387,-72.30982305,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,24,0,1.0,1.0,1.0 34 | 2013-04-23,39,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-3.0,0.0,1328.0,0.05662630052873956,0.2602878940056339,0.0,0.06774978776588811,4.986184196719638,-2.538804220575516e-06,0.08639504941709777,3.9406591226875184e-10,-1.1780043929190017e-05,0.12251289461159946,0.0,26.564141304745505,861.0,24,14.0,1.5555555555555556,1.7400510848184252,1.0,3.027777777777778,1.4363628250983504,-0.23333333333333334,2.4888888888888894,0.10606060606060587,-1.0818181818181802,3.4787878787878768,0.0,-0.10617793115057728,3.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,43.65149203249999,-72.3100545751389,43.65129216,-72.3102186,43.65185134,-72.30972388,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,24,1,1.0,1.0,1.0 35 | 2013-04-24,39,446.0,0.05396249243799153,0.36482778635221536,0.0,0.1330993136946577,7.409566430148213,2.6772023230537987e-05,-0.05665950755059143,5.2765399384148595e-09,-1.6833302820522448e-05,0.003392293976060674,0.0,55.497868807819465,24.0,9592.0,0.322192737899298,0.6054707276863035,0.0,0.36659480208498185,1.707711516023574,1.4789885654694668e-05,0.10204528992916799,1.6847734537207205e-09,-3.536582006257119e-05,0.35089282384538256,0.0,1.7031337493870282,3360.0,24,146.0,3.8421052631578947,3.149657345494205,3.0,9.920341394025604,1.2874005094792358,0.019914651493598876,3.473684210526315,0.005616952985374042,-0.1879126089652408,4.720647773279354,4.75,1.411159594870342,12.0,441.0,441.0,0.0,441.0,0.0,0.0,inf,0.0,inf,,0.0,0.0,-3.0,0.0,43.65391314166665,-72.30909614409093,43.65106804,-72.3103594,43.70700822,-72.28692969,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,539.0,179.66666666666666,121.66484016893843,165.0,14802.333333333332,0.5345905344904254,71.50000000000001,108.16666666666671,170.49999999999991,-269.4999999999999,164.9999999999999,121.0,-1.4999999999999996,1.0,16.0,2.0,8.0,1.0,8.0,1.0,8.0,1.0,24,2,1.0,1.0,1.0 36 | 2013-04-25,39,206.0,0.02943277611087298,0.27828344529403,0.0,0.07744167592471539,10.121244107449751,1.5326334567384037e-06,0.024070091645745313,6.505571418232084e-10,-3.0199654217403993e-06,0.029379180704531316,0.0,103.51233101776205,22.0,6956.0,0.2771646013467745,0.5554251457092372,0.0,0.30849709248612733,1.8899042885633313,-2.9828236415134487e-06,0.31459307240048273,9.843676908574151e-10,-2.7686515211270906e-05,0.41791626239099394,0.0,2.5387730743653814,2717.0,21,118.0,3.4705882352941178,3.7597170599350274,2.0,14.135472370766488,2.247568246825577,-0.10847975553857915,5.260504201680675,-0.006588999236058056,0.10895721925133672,4.100840336134456,3.0,4.934746115522168,15.0,441.0,441.0,0.0,441.0,0.0,0.0,inf,0.0,inf,,0.0,0.0,-3.0,0.0,43.6651832504918,-72.30418664196722,43.6514477,-72.309945,43.70691563,-72.28615388,379.0,379.0,0.0,379.0,0.0,0.0,inf,0.0,inf,,0.0,0.0,-3.0,0.0,144.0,72.0,0.0,72.0,0.0,0.0,-1.4210854715202004e-14,71.99999999999999,0.0,-5.024295867788078e-15,71.99999999999999,0.0,-3.0,0.0,8.0,1.0,8.0,1.0,8.0,1.0,8.0,1.0,21,3,1.0,1.0,1.0 37 | -------------------------------------------------------------------------------- /src/main/data/aggregated_data/student 31/one_day_aggregate.csv: -------------------------------------------------------------------------------- 1 | ,student_id,sum,mean,std,median,var,skew,linear_m,linear_c,poly_a,poly_b,poly_c,iqr,kurtosis,mcr,sum,mean,std,median,var,skew,linear_m,linear_c,poly_a,poly_b,poly_c,iqr,kurtosis,mcr,sum,sum,mean,std,median,var,skew,linear_m,linear_c,poly_a,poly_b,poly_c,iqr,kurtosis,mcr,sum,mean,std,median,var,skew,linear_m,linear_c,poly_a,poly_b,poly_c,iqr,kurtosis,mcr,mean,mean,min,min,max,max,sum,mean,std,median,var,skew,linear_m,linear_c,poly_a,poly_b,poly_c,iqr,kurtosis,mcr,sum,mean,std,median,var,skew,linear_m,linear_c,poly_a,poly_b,poly_c,iqr,kurtosis,mcr,sum,sum,mean,mean,min,min,max,max,sum,dow,stress_level,stress_level,stress_level 2 | ,,activity_inference,activity_inference,activity_inference,activity_inference,activity_inference,activity_inference,activity_inference,activity_inference,activity_inference,activity_inference,activity_inference,activity_inference,activity_inference,activity_inference,audio_activity_inference,audio_activity_inference,audio_activity_inference,audio_activity_inference,audio_activity_inference,audio_activity_inference,audio_activity_inference,audio_activity_inference,audio_activity_inference,audio_activity_inference,audio_activity_inference,audio_activity_inference,audio_activity_inference,audio_activity_inference,call_recorded,conv_duration_min,conv_duration_min,conv_duration_min,conv_duration_min,conv_duration_min,conv_duration_min,conv_duration_min,conv_duration_min,conv_duration_min,conv_duration_min,conv_duration_min,conv_duration_min,conv_duration_min,conv_duration_min,dark_duration_min,dark_duration_min,dark_duration_min,dark_duration_min,dark_duration_min,dark_duration_min,dark_duration_min,dark_duration_min,dark_duration_min,dark_duration_min,dark_duration_min,dark_duration_min,dark_duration_min,dark_duration_min,latitude,longitude,latitude,longitude,latitude,longitude,phonecharge_duration_min,phonecharge_duration_min,phonecharge_duration_min,phonecharge_duration_min,phonecharge_duration_min,phonecharge_duration_min,phonecharge_duration_min,phonecharge_duration_min,phonecharge_duration_min,phonecharge_duration_min,phonecharge_duration_min,phonecharge_duration_min,phonecharge_duration_min,phonecharge_duration_min,phonelock_duration_min,phonelock_duration_min,phonelock_duration_min,phonelock_duration_min,phonelock_duration_min,phonelock_duration_min,phonelock_duration_min,phonelock_duration_min,phonelock_duration_min,phonelock_duration_min,phonelock_duration_min,phonelock_duration_min,phonelock_duration_min,phonelock_duration_min,hours_slept,sleep_rating,hours_slept,sleep_rating,hours_slept,sleep_rating,hours_slept,sleep_rating,sms_instance,,min,max,mean 3 | time,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, 4 | 2013-03-24,31,5.0,1.0,0.0,1.0,0.0,0.0,1.216188388897624e-16,0.9999999999999994,1.4700487985321024e-17,-2.0538004496109435e-16,0.9999999999999996,0.0,-3.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-3.0,0.0,24,55.0,11.0,0.0,11.0,0.0,0.0,0.0,10.999999999999996,7.84026025883788e-16,-3.1990684342875825e-15,10.999999999999998,0.0,-3.0,0.0,2040.0,408.0,0.0,408.0,0.0,0.0,-2.0756281837186113e-14,407.9999999999999,-4.265101580807806e-14,1.5627449505185588e-13,407.9999999999997,0.0,-3.0,0.0,43.7066157,-72.2870255,43.7066157,-72.2870255,43.7066157,-72.2870255,1010.0,202.0,0.0,202.0,0.0,0.0,-5.189070459296528e-15,201.99999999999991,3.261548267676557e-14,-1.202200374440074e-13,201.99999999999994,0.0,-3.0,0.0,690.0,138.0,0.0,138.0,0.0,0.0,-5.189070459296528e-15,137.99999999999991,-1.0662753952019516e-14,1.9980667784047358e-14,137.99999999999991,0.0,-3.0,0.0,10.0,20.0,2.0,4.0,2.0,4.0,2.0,4.0,24,6,2.0,3.0,2.6 5 | 2013-03-25,31,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,24,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,24,0,2.0,3.0,2.6 6 | 2013-03-26,31,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,15,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,15,1,2.0,3.0,2.6 7 | 2013-03-27,31,124.0,0.10139002452984465,0.467807888023287,0.0,0.2188442200968082,5.3273089744248825,-0.00027268502887556567,0.2680005771728153,1.3930053509079533e-08,-0.00028970755426366046,0.2714646610892925,0.0,28.901759271650526,29.0,4932.0,0.6687457627118644,0.7783817874184157,0.0,0.6058782069846876,0.6514707492080243,-1.5699375823627617e-05,0.7266293613735794,-1.5634682958753607e-08,9.959077631422162e-05,0.5849569794215191,1.0,-1.0610548627081262,2260.0,7,73.0,7.3,6.32543366980566,7.5,40.011111111111106,1.3349789852745049,0.5878787878787882,4.654545454545453,-0.03787878787878803,0.9287878787878797,4.199999999999999,6.0,1.0196259007630095,4.0,408.0,408.0,0.0,408.0,0.0,0.0,inf,0.0,inf,,0.0,0.0,-3.0,0.0,43.69110746714285,-72.29130668214286,43.68026,-72.2942067,43.7066157,-72.2870059,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,138.0,138.0,0.0,138.0,0.0,0.0,inf,0.0,inf,,0.0,0.0,-3.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,6,2,2.0,3.0,2.6 8 | 2013-03-28,31,966.0,0.12117410938283994,0.5261861713138898,0.0,0.2768718868819702,4.6767167205795435,3.455336280535523e-05,-0.01653831807790327,8.147764935747122e-09,-3.0392471497485084e-05,0.06973139848770289,0.0,21.35521119614266,126.0,28216.0,0.6714897667777249,0.7541384073198903,0.0,0.5687247373949809,0.623561350704663,1.0329277198158665e-05,0.4544768174830094,-2.293034687198935e-10,1.9964379650299873e-05,0.3870021950106656,1.0,-0.9960507744473168,9371.0,25,412.0,6.983050847457627,11.57954725668425,3.0,134.08591466978376,2.9726974081564634,0.14880187025131483,2.6677966101694963,0.006399236730912829,-0.22235386014162883,6.193776048902458,4.0,8.31280199080679,14.0,335.0,111.66666666666667,17.8978583448784,122.0,320.3333333333334,-1.7320508075688796,-15.50000000000003,127.16666666666671,-15.500000000000005,15.500000000000004,122.00000000000001,15.5,-1.4999999999999991,1.0,43.688038982112666,-72.29202533366197,43.62748011,-72.32351438,43.7086848,-72.2829302,556.0,185.33333333333334,14.433756729740647,177.0,208.3333333333334,1.7320508075688719,-12.50000000000004,197.83333333333337,12.49999999999995,-37.499999999999865,201.99999999999986,12.5,-1.5000000000000018,1.0,499.0,83.16666666666667,49.93362260708376,62.0,2493.366666666667,2.439577207120172,-17.857142857142854,127.80952380952381,10.535714285714278,-70.53571428571428,162.92857142857136,3.75,1.1866449274236137,1.0,4.0,8.0,2.0,4.0,2.0,4.0,2.0,4.0,26,3,4.0,4.0,4.0 9 | 2013-03-29,31,1078.0,0.13382991930477964,0.5166379233589762,0.0,0.26691474385267533,4.461265632814691,-6.649502819477222e-06,0.16060746715881433,5.581487466510725e-09,-5.160280287475465e-05,0.22094228804967278,0.0,20.294559174880217,88.0,44923.0,0.841223175161979,0.7678236882729512,1.0,0.5895532162730782,0.27845698384892215,-9.4429583630697e-06,1.0933548849351225,2.7116763641940695e-10,-2.392358131550245e-05,1.222232429211773,1.0,-1.2593133496060993,11099.0,25,601.0,7.329268292682927,14.661661501225334,3.0,214.96431797651312,4.8725426989738025,0.08958326531056474,3.7011460476050564,0.0015274026807967284,-0.0341363518339702,5.350740942865518,4.0,25.314424848772557,22.0,280.0,140.0,0.0,140.0,0.0,0.0,-4.263256414560601e-14,140.0,0.0,0.0,140.0,0.0,-3.0,0.0,43.68284753410957,-72.29411873986301,43.62582222,-72.3235974,43.7098375,-72.2839832,604.0,151.0,104.95713410721541,142.0,11016.0,0.10088152067206402,-68.40000000000009,253.60000000000014,-8.999999999999952,-41.40000000000019,244.6000000000001,171.0,-1.922722029988466,1.0,1122.0,374.0,225.16660498395404,504.0,50700.0,-1.7320508075688774,194.99999999999994,179.00000000000006,-194.9999999999998,584.9999999999998,114.00000000000009,195.0,-1.5,1.0,14.0,7.0,4.666666666666667,2.3333333333333335,4.0,2.0,5.0,3.0,29,4,5.0,5.0,5.0 10 | 2013-03-30,31,458.0,0.0560999510044096,0.37375399963156974,0.0,0.13969205224059544,7.267591573901398,1.3453464478003664e-05,0.001189635737437639,1.9321954905675707e-10,1.1876213299053356e-05,0.0033352230912030703,0.0,53.164852501889676,58.0,22354.0,0.6092834364523426,0.7917076992485985,0.0,0.6268010810495093,0.8134069033230753,4.6355150804340015e-06,0.5242495478168613,-1.2158350455589604e-09,4.924207123190109e-05,0.25150276022871526,1.0,-0.9309904010591414,8554.0,25,273.0,3.5921052631578947,3.343362106538655,2.0,11.178070175438595,2.9584296638287624,-0.002802460697197511,3.6971975393028003,0.002021236231762547,-0.15439517807938857,5.566841053683159,3.25,13.066523863313694,28.0,323.0,80.75,27.825348155953055,68.5,774.25,1.8667456603315322,-8.500000000000021,93.50000000000003,-12.250000000000027,28.250000000000036,81.24999999999999,21.25,-0.7340069291870117,2.0,43.68072516931506,-72.29385793863015,43.6801845,-72.2942772,43.7012505,-72.2881996,433.0,216.5,219.9102089490163,216.5,48360.5,0.0,310.9999999999999,60.999999999999986,155.5,155.49999999999994,60.999999999999964,155.5,-2.0,1.0,271.0,67.75,5.61990510002912,67.0,31.583333333333314,0.24085139894444674,-3.5000000000000115,73.00000000000003,-0.749999999999999,-1.2500000000000202,72.25,8.75,-1.8167932554075785,1.0,5.0,2.0,5.0,2.0,5.0,2.0,5.0,2.0,28,5,3.0,3.0,3.0 11 | 2013-03-31,31,4692.0,0.5860604546590057,1.1386242806824567,0.0,1.2964652525596418,1.5674460823284833,0.0002715876377056869,-0.5009690652580062,7.911271309215973e-08,-0.0003617096305970517,0.34384949065784615,0.0,0.5870886531620574,163.0,37669.0,0.9975636238447075,0.8752387061411259,1.0,0.7660427927275921,0.004717355076266313,4.7674714184191954e-05,0.09746502004716392,-8.576375214783816e-10,8.00591069952157e-05,-0.10633536131141061,2.0,-1.694539180443843,3963.0,29,339.0,9.162162162162161,11.866183308305425,3.0,140.80630630630628,1.8513940971975544,0.6047889995258415,-1.7240398293029877,0.014529567161146107,0.08172458172458176,1.3271692745376964,11.0,2.4915043701554493,11.0,310.0,103.33333333333333,35.07610772781572,106.0,1230.3333333333333,-0.34013586099663246,-15.499999999999998,118.83333333333334,54.49999999999993,-124.49999999999994,136.99999999999994,35.0,-1.5,2.0,43.41486024777778,-72.04559784138894,42.3455177,-72.29439508,43.7000082,-71.1907561,158.0,158.0,0.0,158.0,0.0,0.0,inf,0.0,inf,,0.0,0.0,-3.0,0.0,427.0,142.33333333333334,77.50053763254378,142.0,6006.333333333334,0.01935434639981579,-77.50000000000003,219.8333333333334,0.5000000000000375,-78.50000000000004,219.99999999999994,77.5,-1.5000000000000002,1.0,8.0,1.0,8.0,1.0,8.0,1.0,8.0,1.0,28,6,3.0,3.0,3.0 12 | 2013-04-01,31,1147.0,0.14436752674638137,0.589797707014136,0.0,0.3478613351991327,4.296102807992714,-2.426835184292289e-06,0.1540069160983903,2.8495220719259396e-08,-0.00022879286857808886,0.45367781663954415,0.0,17.389412240185788,95.0,22559.0,0.5940017905102954,0.7236413351542045,0.0,0.5236567819437598,0.788363632095171,-6.453844646206733e-06,0.7165506195747918,5.2506917351115047e-11,-8.447899846449999e-06,0.7291716596221979,1.0,-0.7077577695159074,6151.0,24,317.0,10.225806451612904,17.308398110781084,3.0,299.5806451612902,2.938750516185463,0.49758064516129025,2.762096774193554,-0.012046212963899273,0.8589670340782686,1.015395894428154,7.0,6.95959105120391,8.0,551.0,551.0,0.0,551.0,0.0,0.0,inf,0.0,inf,,0.0,0.0,-3.0,0.0,43.68919973861111,-72.28919329541667,43.57912799,-72.2942988,43.70873,-72.1610123,226.0,113.0,66.46803743153546,113.0,4418.0,0.0,93.99999999999999,66.0,47.0,46.99999999999998,66.0,47.0,-2.0,1.0,515.0,171.66666666666666,64.60908088909278,140.0,4174.333333333334,1.6757394690376137,58.49999999999998,113.16666666666667,47.49999999999999,-36.499999999999964,128.99999999999997,58.5,-1.4999999999999998,1.0,8.0,1.0,8.0,1.0,8.0,1.0,8.0,1.0,45,0,3.0,3.0,3.0 13 | 2013-04-02,31,1239.0,0.15541896638233818,0.6023868283222835,0.0,0.36286989093618033,4.0842405715569825,-4.7096496102918155e-06,0.17418927490415617,1.2219784018282426e-08,-0.00010211354802002104,0.3035741199584132,0.0,15.686295661813364,132.0,32254.0,0.7574917801784875,0.782236919862343,1.0,0.6118945987957257,0.4532091287748939,9.702298495869935e-06,0.5509346963506652,-7.834891251902655e-11,1.3038316842017505e-05,0.5272611981602865,1.0,-1.2325348627734694,7988.0,24,396.0,8.608695652173912,15.371659725134242,4.0,236.2879227053141,4.547164383963896,0.2418748072772126,3.1665124884366316,-0.0011318083704762814,0.29280618394864516,2.79301572617946,6.0,21.328149502016604,13.0,250.0,83.33333333333333,17.785762095938797,87.0,316.33333333333326,-0.8882799300836098,-11.500000000000016,94.83333333333336,-23.499999999999982,35.499999999999986,86.99999999999997,17.5,-1.5000000000000007,1.0,43.69059442458334,-72.29114475708336,43.6801882,-72.2945725,43.70932724,-72.28454651,487.0,243.5,245.36605307173198,243.5,60204.5,0.0,-347.0,416.99999999999994,-173.5,-173.49999999999991,416.99999999999994,173.5,-2.0,1.0,202.0,101.0,15.556349186104045,101.0,242.0,0.0,21.99999999999998,90.0,11.0,10.999999999999998,89.99999999999997,11.0,-2.0,1.0,8.0,7.0,4.0,3.5,3.0,3.0,5.0,4.0,27,1,3.0,3.0,3.0 14 | 2013-04-03,31,622.0,0.07582591734731196,0.4019029775230143,0.0,0.1615260033418645,6.0621762710370035,2.4511008422338405e-05,-0.02469372819269784,4.586065400933421e-09,-1.3103899996117516e-05,0.0267195824639283,0.0,38.16124775846906,62.0,17688.0,0.5256776034236804,0.7338439196486303,0.0,0.5385268984052652,1.0088960463795094,1.872938988561026e-05,0.21058371268311613,5.368335760848857e-10,6.665505510821171e-07,0.31187409472470573,1.0,-0.4401305926572152,5668.0,25,251.0,7.171428571428572,7.946459493849758,5.0,63.146218487394954,1.8202049780012008,0.33249299719887965,1.5190476190476185,0.022976758270875912,-0.4487167840109015,5.8157014157014135,8.0,2.5635086648752026,11.0,202.0,67.33333333333333,2.88675134594813,69.0,8.33333333333334,-1.732050807568863,2.499999999999993,64.83333333333334,-2.499999999999991,7.499999999999975,63.999999999999986,2.5,-1.5000000000000053,1.0,43.68758427767122,-72.2918246020548,43.6801837,-72.2942723,43.7098402,-72.28197,303.0,101.0,28.478061731796284,107.0,811.0,-0.9060124912201941,18.499999999999993,82.50000000000003,-37.49999999999997,93.50000000000001,69.99999999999999,28.0,-1.4999999999999996,1.0,801.0,160.2,102.07693177207082,112.0,10419.7,0.5152054622566576,-7.099999999999998,174.39999999999992,-24.07142857142859,89.18571428571431,126.25714285714268,184.0,-1.784493708200486,4.0,13.0,4.0,6.5,2.0,5.0,1.0,8.0,3.0,30,2,4.0,4.0,4.0 15 | 2013-04-04,31,895.0,0.11212728639438738,0.47735935701469756,0.0,0.22787195572948546,4.875954374655749,8.745009516599446e-06,0.07723032591839732,1.2347784090221715e-10,7.759532868358869e-06,0.0785410098605572,0.0,24.401979998167135,129.0,39432.0,0.8332347223396163,0.7713446711213822,1.0,0.5949726016673532,0.295333713633418,3.766834267566473e-06,0.744105773317592,1.0552290143187962e-10,-1.2268259968944445e-06,0.7834907718233962,1.0,-1.2678960027871946,8932.0,25,499.0,8.180327868852459,12.234525187246827,4.0,149.68360655737703,3.1445893617860667,0.0009518773135907621,8.151771549444737,-0.0005087605406690344,0.031477509753732806,7.851602830450005,6.0,9.447341923879906,19.0,538.0,179.33333333333334,171.57019943257436,92.0,29436.333333333336,1.697098930650251,11.49999999999996,167.83333333333337,-296.4999999999998,604.4999999999999,69.0000000000002,154.0,-1.5,2.0,43.68758287684931,-72.29190283136985,43.6801825,-72.294276,43.7098386,-72.2836763,822.0,164.4,53.444363594302445,177.0,2856.3,-0.668652494486521,-12.099999999999982,188.59999999999988,-26.500000000000007,93.90000000000002,135.59999999999988,80.0,-1.3255250906621696,2.0,216.0,72.0,3.0,72.0,9.0,0.0,2.999999999999992,69.00000000000003,-1.434537560895507e-15,3.0000000000000013,68.99999999999997,3.0,-1.5,2.0,8.0,1.0,8.0,1.0,8.0,1.0,8.0,1.0,31,3,1.0,1.0,1.0 16 | 2013-04-05,31,1575.0,0.1971707561342013,0.6220416208143704,0.0,0.386935778025369,3.573384630307799,6.231603002821836e-05,-0.051688309783488595,3.715709634861338e-08,-0.00023445769850815684,0.34331752289842643,0.0,12.415435979223904,162.0,26351.0,0.7151658253270369,0.7974662232153904,0.0,0.6359523771694189,0.5554675445071802,1.291536546253141e-05,0.47723250509355175,2.9870593830503807e-09,-9.714283750595979e-05,1.1530632434554018,1.0,-1.2150631664302516,4830.0,25,284.0,5.916666666666667,9.708152602341734,3.0,94.24822695035459,4.4828014396212135,0.060138949196699834,4.5034013605442205,0.0002737450206724658,0.04727293322509413,4.602040816326526,5.25,21.687417673320564,17.0,680.0,170.0,171.5245366315463,96.5,29420.666666666668,1.939233812693664,39.19999999999999,111.20000000000002,-73.50000000000023,259.70000000000056,37.69999999999973,98.0,-0.6915515367604868,2.0,43.68659030041096,-72.2932497810959,43.6241667,-72.3279541,43.7098385,-72.2836223,162.0,81.0,11.313708498984761,81.0,128.0,0.0,-16.000000000000007,88.99999999999999,-8.0,-7.999999999999991,88.99999999999997,8.0,-2.0,1.0,481.0,120.25,42.39005386487102,120.0,1796.9166666666667,0.01897365820145883,8.099999999999975,108.10000000000005,-35.25000000000007,113.85000000000015,72.84999999999991,60.25,-1.7123080741511696,2.0,13.0,4.0,6.5,2.0,5.0,1.0,8.0,3.0,46,4,4.0,4.0,4.0 17 | 2013-04-06,31,1044.0,0.12941613982893269,0.539867276442915,0.0,0.29145667617389076,4.53936136038372,2.3738521899833458e-05,0.03367868100690434,1.3757549436864002e-08,-8.72298718579115e-05,0.18283869694960653,0.0,20.11766742722422,58.0,29436.0,0.6954754873006498,0.7603673951782614,1.0,0.5781585756501743,0.5730299463991327,9.38134110600306e-06,0.4969475468154129,1.333928951269038e-09,-4.70758678275076e-05,0.8951872890975742,1.0,-1.063060396314669,8208.0,25,389.0,7.339622641509434,8.70221765773268,4.0,75.72859216255445,1.9858479028773615,0.09264634736332841,4.930817610062893,0.007285783645384094,-0.2862144021966443,8.151133981322658,8.0,3.253147645627479,19.0,736.0,184.0,204.4455917842202,87.5,41798.00000000001,1.974308369648236,32.59999999999997,135.10000000000005,-98.00000000000027,326.60000000000065,37.099999999999724,125.0,-0.6787544521813755,2.0,43.68744247013888,-72.29218719263889,43.6328893,-72.3279541,43.7068103,-72.283126,561.0,112.2,42.646219058669196,92.0,1818.7,0.5573275115579559,8.3,95.59999999999995,2.2142857142857157,-0.5571428571428798,100.02857142857141,71.0,-1.7112152347352432,3.0,695.0,139.0,79.35678924956578,111.0,6297.499999999999,1.6661101200397666,-17.499999999999993,173.9999999999999,-21.785714285714274,69.64285714285711,130.42857142857127,49.0,-0.26625140791832047,4.0,5.0,3.0,5.0,3.0,5.0,3.0,5.0,3.0,33,5,1.0,1.0,1.0 18 | 2013-04-07,31,534.0,0.06611365606041847,0.4003922215932765,0.0,0.16031393111239942,6.64317312358941,2.1391664246681946e-06,0.0574757020376083,6.785111748756647e-09,-5.265739605829046e-05,0.1312227423792568,0.0,44.42115372839887,107.0,19336.0,0.5529310837861023,0.7475645982904143,0.0,0.5588528286171085,0.9379044262500048,2.5983934575284446e-06,0.5074994733779464,-1.1191484047808414e-10,6.511943514206646e-06,0.4846913036476253,1.0,-0.6008854179050833,5995.0,24,251.0,6.275,7.899975657216633,3.5,62.40961538461537,2.0611097110218033,-0.05975609756097557,7.440243902439022,-0.008282314604522561,0.2632541720154045,5.394512195121946,5.5,3.0747712315038367,12.0,594.0,297.0,183.84776310850236,297.0,33800.0,0.0,-259.99999999999994,426.9999999999999,-130.0,-129.99999999999994,426.99999999999983,130.0,-2.0,1.0,43.68548348138889,-72.29260159763886,43.6801928,-72.2942709,43.7069237,-72.2868848,981.0,327.0,85.492689745966,342.0,7309.0,-0.7652359816798895,53.50000000000002,273.5,-115.49999999999983,284.4999999999998,235.00000000000006,84.5,-1.5000000000000002,1.0,146.0,73.0,16.97056274847714,73.0,288.0,0.0,23.999999999999993,60.999999999999986,11.999999999999986,11.999999999999986,60.99999999999999,12.0,-2.0,1.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,50,6,1.0,1.0,1.0 19 | 2013-04-08,31,1229.0,0.15484439964722188,0.5493187029434039,0.0,0.30175103740342357,3.852969157116355,2.770651952297851e-05,0.044904930180043136,9.017781374756876e-09,-4.3858593467092024e-05,0.13954979210941135,0.0,14.5851652384105,124.0,42401.0,0.8865865133298484,0.7699727845835008,1.0,0.5928580889992702,0.19663539738202837,3.981376891127003e-06,0.79138382910922,-1.1648628063896974e-09,5.968977574390798e-05,0.3473600360531271,1.0,-1.2914209622798825,8147.0,30,551.0,11.244897959183673,16.417128520040812,4.0,269.5221088435374,2.2299308629011514,0.1943877551020409,6.579591836734692,-0.025148144364128617,1.4014986845802144,-2.876110444177679,12.0,3.9442985507773747,21.0,527.0,263.5,287.79245994292484,263.5,82824.5,0.0,-407.0,466.9999999999999,-203.49999999999994,-203.4999999999999,466.99999999999994,203.5,-2.0,1.0,43.69493810915491,-72.28998110873239,43.6801512,-72.2943001,43.7086651,-72.2834429,220.0,220.0,0.0,220.0,0.0,0.0,inf,0.0,inf,,0.0,0.0,-3.0,0.0,339.0,84.75,18.062391868188442,81.0,326.25,0.7617275048653389,-9.300000000000011,98.70000000000002,-3.750000000000001,1.949999999999974,94.95000000000002,23.25,-1.40940150614348,1.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,38,0,1.0,1.0,1.0 20 | 2013-04-09,31,724.0,0.09146033350176858,0.4208379449828944,0.0,0.17710457593742565,5.580645221938448,2.3245284089832905e-05,-0.0005328782837451332,6.622263378009837e-09,-2.9169930547114968e-05,0.06860278982238913,0.0,33.30891236591135,111.0,23673.0,0.6098145285935085,0.7375517629073703,0.0,0.5439826029677698,0.7626522385280355,8.727081367273047e-06,0.440426242795422,-1.394175148362989e-10,1.4139129875703338e-05,0.4054120929620474,1.0,-0.790930005096921,6933.0,29,328.0,7.809523809523809,9.912392084703,3.5,98.25551684088269,2.033700416007122,0.19090835426626693,3.8959025470653414,-0.00866107800310864,0.5460125523937209,1.5285412262156441,8.5,3.832602642585025,17.0,548.0,274.0,18.384776310850235,274.0,338.0,0.0,-26.0,286.99999999999994,-13.0,-13.00000000000002,287.0,13.0,-2.0,1.0,43.68750101763888,-72.29205612527777,43.6801508,-72.2943005,43.709072,-72.2802268,333.0,166.5,120.91525958289962,166.5,14620.5,0.0,-171.0,251.99999999999991,-85.5,-85.49999999999997,252.0,85.5,-2.0,1.0,156.0,156.0,0.0,156.0,0.0,0.0,inf,0.0,inf,,0.0,0.0,-3.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,45,1,1.0,1.0,1.0 21 | 2013-04-10,31,920.0,0.11718252451916954,0.5009789241841764,0.0,0.2509798824767348,4.887394811772506,1.933468928629033e-05,0.04129386907048003,1.3071362634117003e-08,-8.327550739152817e-05,0.17552510802451288,0.0,24.114084618966974,129.0,33870.0,0.7093193717277487,0.7075043291371395,1.0,0.5005623757477937,0.4811334061293815,5.461370051295426e-06,0.5789318924380964,1.2730841020784926e-10,-6.174792277191627e-07,0.6273073750004944,1.0,-0.9156039236378901,9912.0,26,510.0,8.793103448275861,14.755027238067989,4.0,217.71082879612825,3.2499384811279963,0.2044972161555261,2.964932787843369,0.000375170831813601,0.183112478742151,3.164523670368202,6.0,9.983538684898894,22.0,155.0,155.0,0.0,155.0,0.0,0.0,inf,0.0,inf,,0.0,0.0,-3.0,0.0,43.69443023111112,-72.29062562444443,43.6476968,-72.3396049,43.708973,-72.2840398,376.0,125.33333333333333,89.0748748712752,88.0,7934.333333333333,1.554741738664364,69.50000000000001,55.83333333333327,96.49999999999994,-123.49999999999991,87.99999999999997,83.0,-1.5,1.0,271.0,90.33333333333333,49.074772881118186,62.0,2408.333333333333,1.732050807568878,-42.49999999999999,132.83333333333331,42.49999999999998,-127.49999999999999,146.99999999999997,42.5,-1.4999999999999996,1.0,12.0,6.0,6.0,3.0,6.0,3.0,6.0,3.0,46,2,1.0,1.0,1.0 22 | 2013-04-11,31,1054.0,0.13516286227237753,0.5277399650538208,0.0,0.278509470715008,4.496944310001001,6.571533380424181e-06,0.10954373938879385,2.268697370535738e-08,-0.0001703188006002475,0.3393832466743469,0.0,20.409015291646224,120.0,27613.0,0.6124517588608437,0.7146399126703827,0.0,0.5107102047815323,0.7245394605927532,8.753042198824968e-06,0.4151363050938319,3.562453941475866e-10,-7.308281396318956e-06,0.535821090587743,1.0,-0.7454578144274668,10343.0,23,468.0,7.2,11.680913919723919,3.0,136.44375000000002,3.1812735828777705,0.14012237762237767,2.716083916083917,-0.0021850040506756927,0.2799626368656221,1.2477611940298476,6.0,10.20275885401409,23.0,456.0,456.0,0.0,456.0,0.0,0.0,inf,0.0,inf,,0.0,0.0,-3.0,0.0,43.695586187500005,-72.28948284305554,43.6802269,-72.2939193,43.7089541,-72.2818595,219.0,73.0,22.516660498395403,60.0,507.0,1.7320508075688774,19.500000000000004,53.5,19.499999999999993,-19.499999999999993,59.999999999999964,19.5,-1.5,1.0,284.0,284.0,0.0,284.0,0.0,0.0,inf,0.0,inf,,0.0,0.0,-3.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,94,3,1.0,1.0,1.0 23 | 2013-04-12,31,1353.0,0.17823738637860626,0.6804095504095344,0.0,0.46295715628850476,3.7758481587757418,1.8422822409456347e-06,0.17124592527421756,-2.3281970288230125e-08,0.00017855243672861246,-0.052262968460266374,0.0,12.605531312522096,164.0,18447.0,0.5351299605476909,0.697606063623693,0.0,0.486654220004544,0.9257655674062207,9.258861570551691e-07,0.5191718496877666,-2.159423023386461e-09,7.536335719620983e-05,0.09152857856782334,1.0,-0.4266363816520764,5229.0,27,216.0,4.695652173913044,9.099131985994639,2.0,82.79420289855074,5.501676411850508,0.20894233734196732,-0.005550416281220882,-0.00010687354581897055,0.21375164690382104,-0.04081868640148294,4.0,30.345004537570574,14.0,432.0,216.0,0.0,216.0,0.0,0.0,0.0,215.99999999999997,0.0,2.0097183471152313e-14,215.9999999999999,0.0,-3.0,0.0,43.69105266314284,-72.29109169371428,43.6802269,-72.2940097,43.706939,-72.2866239,768.0,128.0,70.42442758020827,102.5,4959.6,0.585123570262085,33.48571428571428,44.285714285714235,7.3392857142857135,-3.2107142857142845,68.74999999999994,117.75,-1.5869760888399267,2.0,506.0,253.0,0.0,253.0,0.0,0.0,-2.842170943040401e-14,252.99999999999994,0.0,2.0097183471152313e-14,252.99999999999994,0.0,-3.0,0.0,6.0,3.0,6.0,3.0,6.0,3.0,6.0,3.0,35,4,4.0,4.0,4.0 24 | 2013-04-13,31,3211.0,0.4004739336492891,0.9599097577650352,0.0,0.9214267430525285,2.204072939913755,0.00013363008905618106,-0.13518227833241264,1.3730001660301197e-08,2.355666574554645e-05,0.011875815210595173,0.0,3.1137087125546996,181.0,27371.0,0.7510839141649744,0.8553176886028626,0.0,0.7315683484369434,0.499924943721019,4.254312403102727e-05,-0.024073077242357997,-1.3256113147609507e-09,9.084972595223109e-05,-0.3174551729104694,2.0,-1.4506690517008851,3393.0,24,283.0,6.902439024390244,6.814707910280456,5.0,46.440243902439015,1.6422906357432783,-0.006271777003484274,7.027874564459927,-0.003552885004955334,0.13584362319472915,6.1041244631715434,7.0,2.3183613450768163,18.0,723.0,361.5,248.19448019647817,361.5,61600.5,0.0,350.9999999999999,185.99999999999997,175.49999999999994,175.4999999999999,185.99999999999991,175.5,-2.0,1.0,43.19803186708334,-71.89015356736111,42.3242895,-72.30672015,43.68076968,-71.1220404,303.0,151.5,118.08683245815344,151.5,13944.5,0.0,-167.0,234.99999999999994,-83.5,-83.49999999999997,234.99999999999994,83.5,-2.0,1.0,741.0,105.85714285714286,30.229282555322477,104.0,913.8095238095239,0.17857268074587976,7.7499999999999885,82.60714285714292,-4.940476190476195,37.39285714285716,57.904761904762005,32.0,-0.8944712579099163,4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,40,5,4.0,4.0,4.0 25 | 2013-04-14,31,2120.0,0.26777819881268156,0.7832498456315207,0.0,0.6134803206818009,2.9549044090984364,-0.00014574454036045363,0.8446350895593565,7.207755228944036e-08,-0.000716310444283663,1.5973066111513898,0.0,7.282453982071285,117.0,31223.0,0.7011834983943048,0.7598902862664553,1.0,0.5774332471621154,0.5595208688637727,-2.3041706016073327e-05,1.2141840411361606,1.5496030460758798e-09,-9.204243045173995e-05,1.72624991729398,1.0,-1.072017105441234,9883.0,25,440.0,5.7894736842105265,8.137674998792034,3.0,66.22175438596494,3.6049269449198365,-0.11693779904306206,10.17464114832535,0.0023862339651813374,-0.29590534643166255,12.3819075661181,5.25,14.351381374012405,24.0,581.0,116.2,35.91239340394901,95.0,1289.7000000000003,1.0260596911664797,-15.700000000000001,147.59999999999994,1.9285714285714413,-23.414285714285764,151.4571428571428,41.0,-1.143205277925991,1.0,43.63650457273973,-72.22997432383566,42.471297,-72.3072574,43.7069501,-71.19872039,670.0,167.5,90.12768719988325,181.5,8123.0,-0.3234061883143183,-16.80000000000003,192.70000000000005,-75.50000000000013,209.70000000000024,117.19999999999983,137.0,-1.755044293216225,2.0,481.0,120.25,92.14255260193306,77.0,8490.25,1.96067385768227,-58.300000000000075,207.7000000000001,43.2500000000001,-188.0500000000003,250.95000000000013,59.25,-0.6854606502816303,1.0,6.0,3.0,6.0,3.0,6.0,3.0,6.0,3.0,41,6,1.0,1.0,1.0 26 | 2013-04-15,31,1130.0,0.1451882307593473,0.5647416126714465,0.0,0.31893308908274615,4.248315941030815,-1.85179734023861e-05,0.21724166526803151,8.259821371397177e-09,-8.27959033145989e-05,0.3005994273758528,0.0,17.528037961713125,186.0,33871.0,0.6762838431435189,0.6970260366634151,1.0,0.4858452957867085,0.5375398288880621,4.7420511696244285e-06,0.557535768779368,-2.8678272678744314e-11,6.178345100193951e-06,0.5455470233409057,1.0,-0.8398490841065591,10696.0,28,571.0,6.963414634146342,10.31293700542226,3.5,106.35666967780786,3.469680651064,0.03000620367649457,5.7481633852483105,-0.003376747407749467,0.3035227437042014,2.101276184878884,6.75,14.163159645210236,31.0,735.0,245.0,154.1525218736301,334.0,23763.0,-1.7320508075688774,133.5,111.5000000000001,-133.49999999999997,400.5,67.00000000000006,133.5,-1.5,1.0,43.69734146369862,-72.28937936054797,43.6802303,-72.2939429,43.7069526,-72.2867853,371.0,123.66666666666667,50.80682368868706,153.0,2581.333333333333,-1.7320508075688783,43.99999999999998,79.66666666666669,-43.99999999999998,132.0,65.0,44.0,-1.4999999999999998,1.0,302.0,75.5,2.3804761428476167,76.5,5.666666666666667,-1.779179400882648,0.7999999999999778,74.30000000000005,1.0000000000000016,-2.200000000000025,75.30000000000001,2.0,-0.7820069204152249,2.0,6.0,3.0,6.0,3.0,6.0,3.0,6.0,3.0,30,0,1.0,1.0,1.0 27 | 2013-04-16,31,849.0,0.10513931888544892,0.46472505105951706,0.0,0.21596937308227074,5.0898861216269715,2.4343205915620766e-06,0.09531196665731273,6.796627352439344e-09,-5.2441648652033224e-05,0.16914758327457016,0.0,26.68591530155226,110.0,37097.0,0.6715726207932801,0.6712597404381239,1.0,0.4505896391330574,0.4990909028893119,3.7128355481971347e-06,0.5690278157876228,4.265463397819738e-10,-1.9848731168679537e-05,0.785939525910976,1.0,-0.7662569020197387,13104.0,28,661.0,10.492063492063492,13.986021841955118,5.0,195.60880696364563,2.604016998141868,0.26531298003072196,2.2673611111111103,0.007647258655323169,-0.20881705659931452,7.087683150183151,11.0,7.691752244609486,26.0,839.0,279.6666666666667,68.29592471980546,302.0,4664.333333333335,-1.314179304246277,-65.50000000000006,345.1666666666668,-33.50000000000002,1.5000000000000007,334.0,65.5,-1.5,1.0,43.69444689589041,-72.29024014383562,43.680223,-72.2939211,43.7069452,-72.2810953,211.0,70.33333333333333,4.618802153517004,73.0,21.333333333333314,-1.7320508075688683,-4.00000000000001,74.33333333333334,-4.000000000000006,4.000000000000033,72.99999999999997,4.0,-1.5000000000000036,1.0,531.0,106.2,42.61103143553322,107.0,1815.7,1.255637123718165,-1.3999999999999886,108.9999999999999,-6.285714285714294,23.74285714285717,96.4285714285713,31.0,-0.549790702646944,3.0,6.0,3.0,6.0,3.0,6.0,3.0,6.0,3.0,29,1,1.0,1.0,1.0 28 | 2013-04-17,31,259.0,0.20015455950540958,0.574772539218089,0.0,0.3303634718392097,3.2231737795137976,-7.75116701917893e-05,0.2502658542844013,-6.212084333319407e-07,0.0007257108341064101,0.07730527502552238,0.0,10.400945478078482,26.0,7466.0,0.7849032800672834,0.6833951459892978,1.0,0.4670289255617337,0.3014829813391645,1.588963695250772e-05,0.7093401115396324,4.4577349247893795e-09,-2.650787991716403e-05,0.7765401757780623,1.0,-0.8711656941942425,1654.0,5,156.0,10.4,10.709141622264331,6.0,114.6857142857143,0.9533173089441455,1.0035714285714281,3.374999999999999,0.22276987718164198,-2.11520685197156,10.13235294117647,15.5,-0.9296576332611641,7.0,203.0,203.0,0.0,203.0,0.0,0.0,inf,0.0,inf,,0.0,0.0,-3.0,0.0,43.706643253846146,-72.2869752153846,43.7065932,-72.2870387,43.706684,-72.2869482,65.0,65.0,0.0,65.0,0.0,0.0,inf,0.0,inf,,0.0,0.0,-3.0,0.0,66.0,66.0,0.0,66.0,0.0,0.0,inf,0.0,inf,,0.0,0.0,-3.0,0.0,6.0,3.0,6.0,3.0,6.0,3.0,6.0,3.0,36,2,1.0,1.0,1.0 29 | --------------------------------------------------------------------------------