diff --git a/.gitignore b/.gitignore index 82f9275..e259a2a 100644 --- a/.gitignore +++ b/.gitignore @@ -130,11 +130,11 @@ ENV/ env.bak/ venv.bak/ -# Spyder project settings +# Spyder project params .spyderproject .spyproject -# Rope project settings +# Rope project params .ropeproject # mkdocs documentation @@ -159,4 +159,4 @@ cython_debug/ # be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore # and can be added to the global gitignore or merged into this file. For a more nuclear # option (not recommended) you can uncomment the following to ignore the entire idea folder. -#.idea/ +#.idea/ \ No newline at end of file diff --git a/.idea/.gitignore b/.idea/.gitignore new file mode 100644 index 0000000..c3f502a --- /dev/null +++ b/.idea/.gitignore @@ -0,0 +1,8 @@ +# 디폴트 무시된 파일 +/shelf/ +/workspace.xml +# 에디터 기반 HTTP 클라이언트 요청 +/httpRequests/ +# Datasource local storage ignored files +/dataSources/ +/dataSources.local.xml diff --git a/README.md b/README.md index f746e56..8c3c636 100644 --- a/README.md +++ b/README.md @@ -1,29 +1,133 @@ # Project 2 -Select one of the following two options: +### Implemented model +* generic k-fold cross-validation and bootstrapping model selection methods. -## Boosting Trees +### Creator Description +- Name: Haeun Suh +- HawkID: A20542585 +- Class: CS584-04 Machine Learning(Instructor: Steve Avsec) +- Email: hsuh7@hawk.iit.edu + +#### [Question 1] Do your cross-validation and bootstrapping model selectors agree with a simpler model selector like AIC in simple cases (like linear regression)? +- For simple datasets, it was observed that cross-validation and bootstrapping models generally reach the same conclusions as simpler methods like AIC. +- However, on more complex datasets, particularly those with random elements or multi-collinearity, the results were somewhat inconsistent. +- Below is a comparison of the average metric scores from cross-validation and bootstrapping with AIC scores for the same tests. + +##### Size test: +- Model: Simple Linear Regression +- Metrics: R^2 +- [K-fold] k = 5, shuffling = Yes +- [bootstrapping] sampling size: 100, epochs: 100 +- [Configuration file] /params/test_size.json +` ` + + -Implement the gradient-boosting tree algorithm (with the usual fit-predict interface) as described in Sections 10.9-10.10 of Elements of Statistical Learning (2nd Edition). Answer the questions below as you did for Project 1. +- AIC tends to increase proportionally with the dataset size. However, the average metric scores for cross-validation and bootstrapping are relatively irregular, with gentler slopes in their trend lines, regardless of the dataset size. +- The k-value applied to the model may have contributed to an underestimation of the dataset size. As a result, these methods do not reach the same conclusions as AIC. +- Below is another test to evaluate the impact of correlation. + +##### Correlation test: +- Model: Simple Linear Regression +- Metrics: R^2 +- [K-fold] k = 5, shuffling = Yes +- [bootstrapping] sampling size: 100, epochs: 100 +- [Configuration file] params/test_correlation.json +` ` + + -Put your README below. Answer the following questions. +- Under multi-collinearity, the trends for cross-validation and bootstrapping models were strong. However, AIC did not exhibit a similarly strong trend and showed artificially high performance under the assumption of a perfect correlation coefficient of 1. +- The two models developed do not yield the same conclusions as AIC. In fact, the conclusions were often contradictory (e.g., lower scores being better for AIC). +- In datasets with multi-collinearity or heavily biased structures, cross-validation and bootstrapping model selectors may not align with simpler model selectors like AIC. + +#### [Question 2] In what cases might the methods you've written fail or give incorrect or undesirable results? +- According to the test results mentioned above, there is a high possibility of incorrect conclusions if the test data is too large, has multi-collinearity, or has a biased structure. +- In particular, according to the test results of testing multiple factors together as shown below, performance fluctuations were most severe when multi-collinearity existed. + +##### Multi-factor test: +- Model: Simple Linear Regression +- Metrics: R^2 +- [K-fold] k = 5, shuffling = Yes +- [bootstrapping] sampling size: 100, epochs: 100 +- [Configuration file] /params/test_multi.json +` ` +multi-test_k_fold +multi-test_bootstrapping -* What does the model you have implemented do and when should it be used? -* How did you test your model to determine if it is working reasonably correctly? -* What parameters have you exposed to users of your implementation in order to tune performance? (Also perhaps provide some basic usage examples.) -* Are there specific inputs that your implementation has trouble with? Given more time, could you work around these or is it fundamental? +- When the data was predictable but noisy, the cross-validation and bootstrapping models performed better than AIC. However, in more complex scenarios, such as with multi-collinearity or data bias, both models exhibited unstable metric scores. +- Since both methods aim to equalize performance across folds or samples, they may not be appropriate indicators for model selection if the data distribution is highly unstable. +- In summary, if the data distribution is overly complex and biased, the two developed models may not be suitable for model selection. + +#### [Question 3] What could you implement given more time to mitigate these cases or help users of your methods? +- To address these limitations, additional improvements could include: +> - Adding regularization techniques (e.g., Ridge, Lasso, ElasticNet) to handle multi-collinearity. +> - Implementing preprocessing methods, such as Principal Component Analysis (PCA), for datasets with high correlation coefficients. +> - Providing automated warnings or recommendations for datasets with bias, multi-collinearity, or extreme size imbalances. -## Model Selection +#### [Question 4] What parameters have you exposed to your users in order to use your model selectors. +- For user convenience, all parameter settings, including data generation conditions, are included in: +> params/ +- When running the mail script test.py, the user can specify the desired settings by selecting the json format settings file that exists in the location. +- Regarding parameter settings, specifications are provided in 'params/param_example.txt' and sample images are as follows. +` ` +param_sample -Implement generic k-fold cross-validation and bootstrapping model selection methods. +- However, the parameters related to the actual model are limited and the specifications are as follows. +>> - "test": +>> - "general": +>> - "model": "LinearRegression", # [Options] "LinearRegression" (default), "LogisticRegression". +>> - "metric": "MSE" # [Options] "MSE" (default), "Accuracy score", "R2". +>> - "k_fold_cross_validation": +>> - "k": [5], # Number of folds for k-fold cross-validation. +>> - "shuffle": true # Whether to shuffle the data before splitting into folds. +>> - "bootstrapping": +>> - "size": [50], # The size of the training dataset for each bootstrap sample. +>> - "epochs": [100] # The number of bootstrapping iterations to perform. -In your README, answer the following questions: +- Regarding k-fold cross validation, the direct variables are as follows. +>> - model: The statistical model to test. +>> - metric: The metric function to measure the model's performance. +>> - X: The feature matrix for training. +>> - y: The target labels for training. +>> - k: The number of folds to divide the data into. +>> - shuffle: Whether to shuffle the data before splitting into folds. -* Do your cross-validation and bootstrapping model selectors agree with a simpler model selector like AIC in simple cases (like linear regression)? -* In what cases might the methods you've written fail or give incorrect or undesirable results? -* What could you implement given more time to mitigate these cases or help users of your methods? -* What parameters have you exposed to your users in order to use your model selectors. +- Regarding Bootstrapping model, the direct variables are as follows. +>> - model: The statistical model to test. +>> - metric: The metric function to measure the model's performance. +>> - X: The feature matrix for training. +>> - y: The target labels for training. +>> - s: The size of the training dataset for each bootstrap sample. +>> - epochs: The number of bootstrap iterations to perform. -See sections 7.10-7.11 of Elements of Statistical Learning and the lecture notes. Pay particular attention to Section 7.10.2. +#### Additional Notes +Since the description of each function and execution is written in comments, only points to keep in mind when executing are explained in detail: +- You can refer to the guidelines in 'params/param_example.txt' or run one of several pre-written configuration files. + - The simplest and easiest to modify file is 'param_single.json'. Use this file to test and verify execution for the program. +- Visualization is only enabled for some items and is only supported for 'generate' type datasets, including file creation. +- Since the purpose of this task is to implement a model related to model selection, the learning model to be evaluated is a linear model from scikit-learn. +- The data folder contains files that you can simply experiment with running. The name, description, and source of each file are included in dataSource.txt. -As usual, above-and-beyond efforts will be considered for bonus points. +#### Sample execution +* To directly execute only the implemented model, you can call the relevant function in modelSelection.py. +>> from modelSelection import k_fold_cross_validation, bootstrapping +1. Adjust configuration file. Refer to 'params/param_example.txt' to set up + * Alternatively, you can choose one of the settings in the params folder. See param_list.csv for a brief introduction to those settings. +2. Execute 'test.py' at the prompt(at that script location) and run it by entering the path to the file. (The example used param_single.json.) + * Sample code as below: + >> python test.py ./params/param_single.json + * Sample execution image as below: +
+ simple test +3. (Optional) Another execution for size testing as batch job + * Sample code as below: + >> python test.py ./params/test_size.json + * Sample execution image as below: +
+ size test +
+ * Sample execution image as below: +
+ file created diff --git a/data/IRIS.csv b/data/IRIS.csv new file mode 100644 index 0000000..2328736 --- /dev/null +++ b/data/IRIS.csv @@ -0,0 +1,151 @@ +sepal_length,sepal_width,petal_length,petal_width,species +5.1,3.5,1.4,0.2,0 +4.9,3,1.4,0.2,0 +4.7,3.2,1.3,0.2,0 +4.6,3.1,1.5,0.2,0 +5,3.6,1.4,0.2,0 +5.4,3.9,1.7,0.4,0 +4.6,3.4,1.4,0.3,0 +5,3.4,1.5,0.2,0 +4.4,2.9,1.4,0.2,0 +4.9,3.1,1.5,0.1,0 +5.4,3.7,1.5,0.2,0 +4.8,3.4,1.6,0.2,0 +4.8,3,1.4,0.1,0 +4.3,3,1.1,0.1,0 +5.8,4,1.2,0.2,0 +5.7,4.4,1.5,0.4,0 +5.4,3.9,1.3,0.4,0 +5.1,3.5,1.4,0.3,0 +5.7,3.8,1.7,0.3,0 +5.1,3.8,1.5,0.3,0 +5.4,3.4,1.7,0.2,0 +5.1,3.7,1.5,0.4,0 +4.6,3.6,1,0.2,0 +5.1,3.3,1.7,0.5,0 +4.8,3.4,1.9,0.2,0 +5,3,1.6,0.2,0 +5,3.4,1.6,0.4,0 +5.2,3.5,1.5,0.2,0 +5.2,3.4,1.4,0.2,0 +4.7,3.2,1.6,0.2,0 +4.8,3.1,1.6,0.2,0 +5.4,3.4,1.5,0.4,0 +5.2,4.1,1.5,0.1,0 +5.5,4.2,1.4,0.2,0 +4.9,3.1,1.5,0.1,0 +5,3.2,1.2,0.2,0 +5.5,3.5,1.3,0.2,0 +4.9,3.1,1.5,0.1,0 +4.4,3,1.3,0.2,0 +5.1,3.4,1.5,0.2,0 +5,3.5,1.3,0.3,0 +4.5,2.3,1.3,0.3,0 +4.4,3.2,1.3,0.2,0 +5,3.5,1.6,0.6,0 +5.1,3.8,1.9,0.4,0 +4.8,3,1.4,0.3,0 +5.1,3.8,1.6,0.2,0 +4.6,3.2,1.4,0.2,0 +5.3,3.7,1.5,0.2,0 +5,3.3,1.4,0.2,0 +7,3.2,4.7,1.4,1 +6.4,3.2,4.5,1.5,1 +6.9,3.1,4.9,1.5,1 +5.5,2.3,4,1.3,1 +6.5,2.8,4.6,1.5,1 +5.7,2.8,4.5,1.3,1 +6.3,3.3,4.7,1.6,1 +4.9,2.4,3.3,1,1 +6.6,2.9,4.6,1.3,1 +5.2,2.7,3.9,1.4,1 +5,2,3.5,1,1 +5.9,3,4.2,1.5,1 +6,2.2,4,1,1 +6.1,2.9,4.7,1.4,1 +5.6,2.9,3.6,1.3,1 +6.7,3.1,4.4,1.4,1 +5.6,3,4.5,1.5,1 +5.8,2.7,4.1,1,1 +6.2,2.2,4.5,1.5,1 +5.6,2.5,3.9,1.1,1 +5.9,3.2,4.8,1.8,1 +6.1,2.8,4,1.3,1 +6.3,2.5,4.9,1.5,1 +6.1,2.8,4.7,1.2,1 +6.4,2.9,4.3,1.3,1 +6.6,3,4.4,1.4,1 +6.8,2.8,4.8,1.4,1 +6.7,3,5,1.7,1 +6,2.9,4.5,1.5,1 +5.7,2.6,3.5,1,1 +5.5,2.4,3.8,1.1,1 +5.5,2.4,3.7,1,1 +5.8,2.7,3.9,1.2,1 +6,2.7,5.1,1.6,1 +5.4,3,4.5,1.5,1 +6,3.4,4.5,1.6,1 +6.7,3.1,4.7,1.5,1 +6.3,2.3,4.4,1.3,1 +5.6,3,4.1,1.3,1 +5.5,2.5,4,1.3,1 +5.5,2.6,4.4,1.2,1 +6.1,3,4.6,1.4,1 +5.8,2.6,4,1.2,1 +5,2.3,3.3,1,1 +5.6,2.7,4.2,1.3,1 +5.7,3,4.2,1.2,1 +5.7,2.9,4.2,1.3,1 +6.2,2.9,4.3,1.3,1 +5.1,2.5,3,1.1,1 +5.7,2.8,4.1,1.3,1 +6.3,3.3,6,2.5,2 +5.8,2.7,5.1,1.9,2 +7.1,3,5.9,2.1,2 +6.3,2.9,5.6,1.8,2 +6.5,3,5.8,2.2,2 +7.6,3,6.6,2.1,2 +4.9,2.5,4.5,1.7,2 +7.3,2.9,6.3,1.8,2 +6.7,2.5,5.8,1.8,2 +7.2,3.6,6.1,2.5,2 +6.5,3.2,5.1,2,2 +6.4,2.7,5.3,1.9,2 +6.8,3,5.5,2.1,2 +5.7,2.5,5,2,2 +5.8,2.8,5.1,2.4,2 +6.4,3.2,5.3,2.3,2 +6.5,3,5.5,1.8,2 +7.7,3.8,6.7,2.2,2 +7.7,2.6,6.9,2.3,2 +6,2.2,5,1.5,2 +6.9,3.2,5.7,2.3,2 +5.6,2.8,4.9,2,2 +7.7,2.8,6.7,2,2 +6.3,2.7,4.9,1.8,2 +6.7,3.3,5.7,2.1,2 +7.2,3.2,6,1.8,2 +6.2,2.8,4.8,1.8,2 +6.1,3,4.9,1.8,2 +6.4,2.8,5.6,2.1,2 +7.2,3,5.8,1.6,2 +7.4,2.8,6.1,1.9,2 +7.9,3.8,6.4,2,2 +6.4,2.8,5.6,2.2,2 +6.3,2.8,5.1,1.5,2 +6.1,2.6,5.6,1.4,2 +7.7,3,6.1,2.3,2 +6.3,3.4,5.6,2.4,2 +6.4,3.1,5.5,1.8,2 +6,3,4.8,1.8,2 +6.9,3.1,5.4,2.1,2 +6.7,3.1,5.6,2.4,2 +6.9,3.1,5.1,2.3,2 +5.8,2.7,5.1,1.9,2 +6.8,3.2,5.9,2.3,2 +6.7,3.3,5.7,2.5,2 +6.7,3,5.2,2.3,2 +6.3,2.5,5,1.9,2 +6.5,3,5.2,2,2 +6.2,3.4,5.4,2.3,2 +5.9,3,5.1,1.8,2 diff --git a/data/__init__.py b/data/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/data/dataSource.txt b/data/dataSource.txt new file mode 100644 index 0000000..a821e90 --- /dev/null +++ b/data/dataSource.txt @@ -0,0 +1,15 @@ + +[File #1] Boston Housing +[description] Concerns housing values in suburbs of Boston +[LINK] https://www.kaggle.com/datasets/schirmerchad/bostonhoustingmlnd + +[File #2] Iris Flower Dataset +[description] Iris flower data set used for multi-class classification. + +* Modified species as numerical values: + 0: Iris-setosa 1: Iris-versicolor 2: Iris-virginica +[LINK] https://www.kaggle.com/datasets/arshid/iris-flower-dataset + +[File #3] Red Wine Quality +[description] Simple and clean practice dataset for regression or classification modelling +[LINK] https://www.kaggle.com/datasets/uciml/red-wine-quality-cortez-et-al-2009 diff --git a/data/housing.csv b/data/housing.csv new file mode 100644 index 0000000..9b9116f --- /dev/null +++ b/data/housing.csv @@ -0,0 +1,490 @@ +RM,LSTAT,PTRATIO,MEDV +6.575,4.98,15.3,504000.0 +6.421,9.14,17.8,453600.0 +7.185,4.03,17.8,728700.0 +6.998,2.94,18.7,701400.0 +7.147,5.33,18.7,760200.0 +6.43,5.21,18.7,602700.0 +6.012,12.43,15.2,480900.0 +6.172,19.15,15.2,569100.0 +5.631,29.93,15.2,346500.0 +6.004,17.1,15.2,396900.0 +6.377,20.45,15.2,315000.0 +6.009,13.27,15.2,396900.0 +5.889,15.71,15.2,455700.0 +5.949,8.26,21.0,428400.0 +6.096,10.26,21.0,382200.0 +5.834,8.47,21.0,417900.0 +5.935,6.58,21.0,485100.0 +5.99,14.67,21.0,367500.0 +5.456,11.69,21.0,424200.0 +5.727,11.28,21.0,382200.0 +5.57,21.02,21.0,285600.0 +5.965,13.83,21.0,411600.0 +6.142,18.72,21.0,319200.0 +5.813,19.88,21.0,304500.0 +5.924,16.3,21.0,327600.0 +5.599,16.51,21.0,291900.0 +5.813,14.81,21.0,348600.0 +6.047,17.28,21.0,310800.0 +6.495,12.8,21.0,386400.0 +6.674,11.98,21.0,441000.0 +5.713,22.6,21.0,266700.0 +6.072,13.04,21.0,304500.0 +5.95,27.71,21.0,277200.0 +5.701,18.35,21.0,275100.0 +6.096,20.34,21.0,283500.0 +5.933,9.68,19.2,396900.0 +5.841,11.41,19.2,420000.0 +5.85,8.77,19.2,441000.0 +5.966,10.13,19.2,518700.0 +6.595,4.32,18.3,646800.0 +7.024,1.98,18.3,732900.0 +6.77,4.84,17.9,558600.0 +6.169,5.81,17.9,531300.0 +6.211,7.44,17.9,518700.0 +6.069,9.55,17.9,445200.0 +5.682,10.21,17.9,405300.0 +5.786,14.15,17.9,420000.0 +6.03,18.8,17.9,348600.0 +5.399,30.81,17.9,302400.0 +5.602,16.2,17.9,407400.0 +5.963,13.45,16.8,413700.0 +6.115,9.43,16.8,430500.0 +6.511,5.28,16.8,525000.0 +5.998,8.43,16.8,491400.0 +5.888,14.8,21.1,396900.0 +7.249,4.81,17.9,743400.0 +6.383,5.77,17.3,518700.0 +6.816,3.95,15.1,663600.0 +6.145,6.86,19.7,489300.0 +5.927,9.22,19.7,411600.0 +5.741,13.15,19.7,392700.0 +5.966,14.44,19.7,336000.0 +6.456,6.73,19.7,466200.0 +6.762,9.5,19.7,525000.0 +7.104,8.05,18.6,693000.0 +6.29,4.67,16.1,493500.0 +5.787,10.24,16.1,407400.0 +5.878,8.1,18.9,462000.0 +5.594,13.09,18.9,365400.0 +5.885,8.79,18.9,438900.0 +6.417,6.72,19.2,508200.0 +5.961,9.88,19.2,455700.0 +6.065,5.52,19.2,478800.0 +6.245,7.54,19.2,491400.0 +6.273,6.78,18.7,506100.0 +6.286,8.94,18.7,449400.0 +6.279,11.97,18.7,420000.0 +6.14,10.27,18.7,436800.0 +6.232,12.34,18.7,445200.0 +5.874,9.1,18.7,426300.0 +6.727,5.29,19.0,588000.0 +6.619,7.22,19.0,501900.0 +6.302,6.72,19.0,520800.0 +6.167,7.51,19.0,480900.0 +6.389,9.62,18.5,501900.0 +6.63,6.53,18.5,558600.0 +6.015,12.86,18.5,472500.0 +6.121,8.44,18.5,466200.0 +7.007,5.5,17.8,495600.0 +7.079,5.7,17.8,602700.0 +6.417,8.81,17.8,474600.0 +6.405,8.2,17.8,462000.0 +6.442,8.16,18.2,480900.0 +6.211,6.21,18.2,525000.0 +6.249,10.59,18.2,432600.0 +6.625,6.65,18.0,596400.0 +6.163,11.34,18.0,449400.0 +8.069,4.21,18.0,812700.0 +7.82,3.57,18.0,919800.0 +7.416,6.19,18.0,697200.0 +6.727,9.42,20.9,577500.0 +6.781,7.67,20.9,556500.0 +6.405,10.63,20.9,390600.0 +6.137,13.44,20.9,405300.0 +6.167,12.33,20.9,422100.0 +5.851,16.47,20.9,409500.0 +5.836,18.66,20.9,409500.0 +6.127,14.09,20.9,428400.0 +6.474,12.27,20.9,415800.0 +6.229,15.55,20.9,407400.0 +6.195,13.0,20.9,455700.0 +6.715,10.16,17.8,478800.0 +5.913,16.21,17.8,394800.0 +6.092,17.09,17.8,392700.0 +6.254,10.45,17.8,388500.0 +5.928,15.76,17.8,384300.0 +6.176,12.04,17.8,445200.0 +6.021,10.3,17.8,403200.0 +5.872,15.37,17.8,428400.0 +5.731,13.61,17.8,405300.0 +5.87,14.37,19.1,462000.0 +6.004,14.27,19.1,426300.0 +5.961,17.93,19.1,430500.0 +5.856,25.41,19.1,363300.0 +5.879,17.58,19.1,394800.0 +5.986,14.81,19.1,449400.0 +5.613,27.26,19.1,329700.0 +5.693,17.19,21.2,340200.0 +6.431,15.39,21.2,378000.0 +5.637,18.34,21.2,300300.0 +6.458,12.6,21.2,403200.0 +6.326,12.26,21.2,411600.0 +6.372,11.12,21.2,483000.0 +5.822,15.03,21.2,386400.0 +5.757,17.31,21.2,327600.0 +6.335,16.96,21.2,380100.0 +5.942,16.9,21.2,365400.0 +6.454,14.59,21.2,359100.0 +5.857,21.32,21.2,279300.0 +6.151,18.46,21.2,373800.0 +6.174,24.16,21.2,294000.0 +5.019,34.41,21.2,302400.0 +5.403,26.82,14.7,281400.0 +5.468,26.42,14.7,327600.0 +4.903,29.29,14.7,247800.0 +6.13,27.8,14.7,289800.0 +5.628,16.65,14.7,327600.0 +4.926,29.53,14.7,306600.0 +5.186,28.32,14.7,373800.0 +5.597,21.45,14.7,323400.0 +6.122,14.1,14.7,451500.0 +5.404,13.28,14.7,411600.0 +5.012,12.12,14.7,321300.0 +5.709,15.79,14.7,407400.0 +6.129,15.12,14.7,357000.0 +6.152,15.02,14.7,327600.0 +5.272,16.14,14.7,275100.0 +6.943,4.59,14.7,867300.0 +6.066,6.43,14.7,510300.0 +6.51,7.39,14.7,489300.0 +6.25,5.5,14.7,567000.0 +5.854,11.64,14.7,476700.0 +6.101,9.81,14.7,525000.0 +5.877,12.14,14.7,499800.0 +6.319,11.1,14.7,499800.0 +6.402,11.32,14.7,468300.0 +5.875,14.43,14.7,365400.0 +5.88,12.03,14.7,401100.0 +5.572,14.69,16.6,485100.0 +6.416,9.04,16.6,495600.0 +5.859,9.64,16.6,474600.0 +6.546,5.33,16.6,617400.0 +6.02,10.11,16.6,487200.0 +6.315,6.29,16.6,516600.0 +6.86,6.92,16.6,627900.0 +6.98,5.04,17.8,781200.0 +7.765,7.56,17.8,835800.0 +6.144,9.45,17.8,760200.0 +7.155,4.82,17.8,795900.0 +6.563,5.68,17.8,682500.0 +5.604,13.98,17.8,554400.0 +6.153,13.15,17.8,621600.0 +6.782,6.68,15.2,672000.0 +6.556,4.56,15.2,625800.0 +7.185,5.39,15.2,732900.0 +6.951,5.1,15.2,777000.0 +6.739,4.69,15.2,640500.0 +7.178,2.87,15.2,764400.0 +6.8,5.03,15.6,653100.0 +6.604,4.38,15.6,611100.0 +7.287,4.08,12.6,699300.0 +7.107,8.61,12.6,636300.0 +7.274,6.62,12.6,726600.0 +6.975,4.56,17.0,732900.0 +7.135,4.45,17.0,690900.0 +6.162,7.43,14.7,506100.0 +7.61,3.11,14.7,888300.0 +7.853,3.81,14.7,1018500.0 +5.891,10.87,18.6,474600.0 +6.326,10.97,18.6,512400.0 +5.783,18.06,18.6,472500.0 +6.064,14.66,18.6,512400.0 +5.344,23.09,18.6,420000.0 +5.96,17.27,18.6,455700.0 +5.404,23.98,18.6,405300.0 +5.807,16.03,18.6,470400.0 +6.375,9.38,18.6,590100.0 +5.412,29.55,18.6,497700.0 +6.182,9.47,18.6,525000.0 +5.888,13.51,16.4,489300.0 +6.642,9.69,16.4,602700.0 +5.951,17.92,16.4,451500.0 +6.373,10.5,16.4,483000.0 +6.951,9.71,17.4,560700.0 +6.164,21.46,17.4,455700.0 +6.879,9.93,17.4,577500.0 +6.618,7.6,17.4,632100.0 +8.266,4.14,17.4,940800.0 +8.04,3.13,17.4,789600.0 +7.163,6.36,17.4,663600.0 +7.686,3.92,17.4,980700.0 +6.552,3.76,17.4,661500.0 +5.981,11.65,17.4,510300.0 +7.412,5.25,17.4,665700.0 +8.337,2.47,17.4,875700.0 +8.247,3.95,17.4,1014300.0 +6.726,8.05,17.4,609000.0 +6.086,10.88,17.4,504000.0 +6.631,9.54,17.4,527100.0 +7.358,4.73,17.4,661500.0 +6.481,6.36,16.6,497700.0 +6.606,7.37,16.6,489300.0 +6.897,11.38,16.6,462000.0 +6.095,12.4,16.6,422100.0 +6.358,11.22,16.6,466200.0 +6.393,5.19,16.6,497700.0 +5.593,12.5,19.1,369600.0 +5.605,18.46,19.1,388500.0 +6.108,9.16,19.1,510300.0 +6.226,10.15,19.1,430500.0 +6.433,9.52,19.1,514500.0 +6.718,6.56,19.1,550200.0 +6.487,5.9,19.1,512400.0 +6.438,3.59,19.1,520800.0 +6.957,3.53,19.1,621600.0 +8.259,3.54,19.1,898800.0 +6.108,6.57,16.4,459900.0 +5.876,9.25,16.4,438900.0 +7.454,3.11,15.9,924000.0 +7.333,7.79,13.0,756000.0 +6.842,6.9,13.0,632100.0 +7.203,9.59,13.0,709800.0 +7.52,7.26,13.0,905100.0 +8.398,5.91,13.0,1024800.0 +7.327,11.25,13.0,651000.0 +7.206,8.1,13.0,766500.0 +5.56,10.45,13.0,478800.0 +7.014,14.79,13.0,644700.0 +7.47,3.16,13.0,913500.0 +5.92,13.65,18.6,434700.0 +5.856,13.0,18.6,443100.0 +6.24,6.59,18.6,529200.0 +6.538,7.73,18.6,512400.0 +7.691,6.58,18.6,739200.0 +6.758,3.53,17.6,680400.0 +6.854,2.98,17.6,672000.0 +7.267,6.05,17.6,697200.0 +6.826,4.16,17.6,695100.0 +6.482,7.19,17.6,611100.0 +6.812,4.85,14.9,737100.0 +7.82,3.76,14.9,953400.0 +6.968,4.59,14.9,743400.0 +7.645,3.01,14.9,966000.0 +7.088,7.85,15.3,676200.0 +6.453,8.23,15.3,462000.0 +6.23,12.93,18.2,422100.0 +6.209,7.14,16.6,487200.0 +6.315,7.6,16.6,468300.0 +6.565,9.51,16.6,520800.0 +6.861,3.33,19.2,598500.0 +7.148,3.56,19.2,783300.0 +6.63,4.7,19.2,585900.0 +6.127,8.58,16.0,501900.0 +6.009,10.4,16.0,455700.0 +6.678,6.27,16.0,600600.0 +6.549,7.39,16.0,569100.0 +5.79,15.84,16.0,426300.0 +6.345,4.97,14.8,472500.0 +7.041,4.74,14.8,609000.0 +6.871,6.07,14.8,520800.0 +6.59,9.5,16.1,462000.0 +6.495,8.67,16.1,554400.0 +6.982,4.86,16.1,695100.0 +7.236,6.93,18.4,758100.0 +6.616,8.93,18.4,596400.0 +7.42,6.47,18.4,701400.0 +6.849,7.53,18.4,592200.0 +6.635,4.54,18.4,478800.0 +5.972,9.97,18.4,426300.0 +4.973,12.64,18.4,338100.0 +6.122,5.98,18.4,464100.0 +6.023,11.72,18.4,407400.0 +6.266,7.9,18.4,453600.0 +6.567,9.28,18.4,499800.0 +5.705,11.5,18.4,340200.0 +5.914,18.33,18.4,373800.0 +5.782,15.94,18.4,415800.0 +6.382,10.36,18.4,485100.0 +6.113,12.73,18.4,441000.0 +6.426,7.2,19.6,499800.0 +6.376,6.87,19.6,485100.0 +6.041,7.7,19.6,428400.0 +5.708,11.74,19.6,388500.0 +6.415,6.12,19.6,525000.0 +6.431,5.08,19.6,516600.0 +6.312,6.15,19.6,483000.0 +6.083,12.79,19.6,466200.0 +5.868,9.97,16.9,405300.0 +6.333,7.34,16.9,474600.0 +6.144,9.09,16.9,415800.0 +5.706,12.43,16.9,359100.0 +6.031,7.83,16.9,407400.0 +6.316,5.68,20.2,466200.0 +6.31,6.75,20.2,434700.0 +6.037,8.01,20.2,443100.0 +5.869,9.8,20.2,409500.0 +5.895,10.56,20.2,388500.0 +6.059,8.51,20.2,432600.0 +5.985,9.74,20.2,399000.0 +5.968,9.29,20.2,392700.0 +7.241,5.49,15.5,686700.0 +6.54,8.65,15.9,346500.0 +6.696,7.18,17.6,501900.0 +6.874,4.61,17.6,655200.0 +6.014,10.53,18.8,367500.0 +5.898,12.67,18.8,361200.0 +6.516,6.36,17.9,485100.0 +6.635,5.99,17.0,514500.0 +6.939,5.89,19.7,558600.0 +6.49,5.98,19.7,480900.0 +6.579,5.49,18.3,506100.0 +5.884,7.79,18.3,390600.0 +6.728,4.5,17.0,632100.0 +5.663,8.05,22.0,382200.0 +5.936,5.57,22.0,432600.0 +6.212,17.6,20.2,373800.0 +6.395,13.27,20.2,455700.0 +6.127,11.48,20.2,476700.0 +6.112,12.67,20.2,474600.0 +6.398,7.79,20.2,525000.0 +6.251,14.19,20.2,417900.0 +5.362,10.19,20.2,436800.0 +5.803,14.64,20.2,352800.0 +3.561,7.12,20.2,577500.0 +4.963,14.0,20.2,459900.0 +3.863,13.33,20.2,485100.0 +4.906,34.77,20.2,289800.0 +4.138,37.97,20.2,289800.0 +7.313,13.44,20.2,315000.0 +6.649,23.24,20.2,291900.0 +6.794,21.24,20.2,279300.0 +6.38,23.69,20.2,275100.0 +6.223,21.78,20.2,214200.0 +6.968,17.21,20.2,218400.0 +6.545,21.08,20.2,228900.0 +5.536,23.6,20.2,237300.0 +5.52,24.56,20.2,258300.0 +4.368,30.63,20.2,184800.0 +5.277,30.81,20.2,151200.0 +4.652,28.28,20.2,220500.0 +5.0,31.99,20.2,155400.0 +4.88,30.62,20.2,214200.0 +5.39,20.85,20.2,241500.0 +5.713,17.11,20.2,317100.0 +6.051,18.76,20.2,487200.0 +5.036,25.68,20.2,203700.0 +6.193,15.17,20.2,289800.0 +5.887,16.35,20.2,266700.0 +6.471,17.12,20.2,275100.0 +6.405,19.37,20.2,262500.0 +5.747,19.92,20.2,178500.0 +5.453,30.59,20.2,105000.0 +5.852,29.97,20.2,132300.0 +5.987,26.77,20.2,117600.0 +6.343,20.32,20.2,151200.0 +6.404,20.31,20.2,254100.0 +5.349,19.77,20.2,174300.0 +5.531,27.38,20.2,178500.0 +5.683,22.98,20.2,105000.0 +4.138,23.34,20.2,249900.0 +5.608,12.13,20.2,585900.0 +5.617,26.4,20.2,361200.0 +6.852,19.78,20.2,577500.0 +5.757,10.11,20.2,315000.0 +6.657,21.22,20.2,361200.0 +4.628,34.37,20.2,375900.0 +5.155,20.08,20.2,342300.0 +4.519,36.98,20.2,147000.0 +6.434,29.05,20.2,151200.0 +6.782,25.79,20.2,157500.0 +5.304,26.64,20.2,218400.0 +5.957,20.62,20.2,184800.0 +6.824,22.74,20.2,176400.0 +6.411,15.02,20.2,350700.0 +6.006,15.7,20.2,298200.0 +5.648,14.1,20.2,436800.0 +6.103,23.29,20.2,281400.0 +5.565,17.16,20.2,245700.0 +5.896,24.39,20.2,174300.0 +5.837,15.69,20.2,214200.0 +6.202,14.52,20.2,228900.0 +6.193,21.52,20.2,231000.0 +6.38,24.08,20.2,199500.0 +6.348,17.64,20.2,304500.0 +6.833,19.69,20.2,296100.0 +6.425,12.03,20.2,338100.0 +6.436,16.22,20.2,300300.0 +6.208,15.17,20.2,245700.0 +6.629,23.27,20.2,281400.0 +6.461,18.05,20.2,201600.0 +6.152,26.45,20.2,182700.0 +5.935,34.02,20.2,176400.0 +5.627,22.88,20.2,268800.0 +5.818,22.11,20.2,220500.0 +6.406,19.52,20.2,359100.0 +6.219,16.59,20.2,386400.0 +6.485,18.85,20.2,323400.0 +5.854,23.79,20.2,226800.0 +6.459,23.98,20.2,247800.0 +6.341,17.79,20.2,312900.0 +6.251,16.44,20.2,264600.0 +6.185,18.13,20.2,296100.0 +6.417,19.31,20.2,273000.0 +6.749,17.44,20.2,281400.0 +6.655,17.73,20.2,319200.0 +6.297,17.27,20.2,338100.0 +7.393,16.74,20.2,373800.0 +6.728,18.71,20.2,312900.0 +6.525,18.13,20.2,296100.0 +5.976,19.01,20.2,266700.0 +5.936,16.94,20.2,283500.0 +6.301,16.23,20.2,312900.0 +6.081,14.7,20.2,420000.0 +6.701,16.42,20.2,344400.0 +6.376,14.65,20.2,371700.0 +6.317,13.99,20.2,409500.0 +6.513,10.29,20.2,424200.0 +6.209,13.22,20.2,449400.0 +5.759,14.13,20.2,417900.0 +5.952,17.15,20.2,399000.0 +6.003,21.32,20.2,401100.0 +5.926,18.13,20.2,401100.0 +5.713,14.76,20.2,422100.0 +6.167,16.29,20.2,417900.0 +6.229,12.87,20.2,411600.0 +6.437,14.36,20.2,487200.0 +6.98,11.66,20.2,625800.0 +5.427,18.14,20.2,289800.0 +6.162,24.1,20.2,279300.0 +6.484,18.68,20.2,350700.0 +5.304,24.91,20.2,252000.0 +6.185,18.03,20.2,306600.0 +6.229,13.11,20.2,449400.0 +6.242,10.74,20.2,483000.0 +6.75,7.74,20.2,497700.0 +7.061,7.01,20.2,525000.0 +5.762,10.42,20.2,457800.0 +5.871,13.34,20.2,432600.0 +6.312,10.58,20.2,445200.0 +6.114,14.98,20.2,401100.0 +5.905,11.45,20.2,432600.0 +5.454,18.06,20.1,319200.0 +5.414,23.97,20.1,147000.0 +5.093,29.68,20.1,170100.0 +5.983,18.07,20.1,285600.0 +5.983,13.35,20.1,422100.0 +5.707,12.01,19.2,457800.0 +5.926,13.59,19.2,514500.0 +5.67,17.6,19.2,485100.0 +5.39,21.14,19.2,413700.0 +5.794,14.1,19.2,384300.0 +6.019,12.92,19.2,445200.0 +5.569,15.1,19.2,367500.0 +6.027,14.33,19.2,352800.0 +6.593,9.67,21.0,470400.0 +6.12,9.08,21.0,432600.0 +6.976,5.64,21.0,501900.0 +6.794,6.48,21.0,462000.0 +6.03,7.88,21.0,249900.0 diff --git a/data/winequality-red.csv b/data/winequality-red.csv new file mode 100644 index 0000000..62e674c --- /dev/null +++ b/data/winequality-red.csv @@ -0,0 +1,1600 @@ +fixed acidity,volatile acidity,citric acid,residual sugar,chlorides,free sulfur dioxide,total sulfur dioxide,density,pH,sulphates,alcohol,quality +7.4,0.7,0.0,1.9,0.076,11.0,34.0,0.9978,3.51,0.56,9.4,5 +7.8,0.88,0.0,2.6,0.098,25.0,67.0,0.9968,3.2,0.68,9.8,5 +7.8,0.76,0.04,2.3,0.092,15.0,54.0,0.997,3.26,0.65,9.8,5 +11.2,0.28,0.56,1.9,0.075,17.0,60.0,0.998,3.16,0.58,9.8,6 +7.4,0.7,0.0,1.9,0.076,11.0,34.0,0.9978,3.51,0.56,9.4,5 +7.4,0.66,0.0,1.8,0.075,13.0,40.0,0.9978,3.51,0.56,9.4,5 +7.9,0.6,0.06,1.6,0.069,15.0,59.0,0.9964,3.3,0.46,9.4,5 +7.3,0.65,0.0,1.2,0.065,15.0,21.0,0.9946,3.39,0.47,10.0,7 +7.8,0.58,0.02,2.0,0.073,9.0,18.0,0.9968,3.36,0.57,9.5,7 +7.5,0.5,0.36,6.1,0.071,17.0,102.0,0.9978,3.35,0.8,10.5,5 +6.7,0.58,0.08,1.8,0.09699999999999999,15.0,65.0,0.9959,3.28,0.54,9.2,5 +7.5,0.5,0.36,6.1,0.071,17.0,102.0,0.9978,3.35,0.8,10.5,5 +5.6,0.615,0.0,1.6,0.08900000000000001,16.0,59.0,0.9943,3.58,0.52,9.9,5 +7.8,0.61,0.29,1.6,0.114,9.0,29.0,0.9974,3.26,1.56,9.1,5 +8.9,0.62,0.18,3.8,0.17600000000000002,52.0,145.0,0.9986,3.16,0.88,9.2,5 +8.9,0.62,0.19,3.9,0.17,51.0,148.0,0.9986,3.17,0.93,9.2,5 +8.5,0.28,0.56,1.8,0.092,35.0,103.0,0.9969,3.3,0.75,10.5,7 +8.1,0.56,0.28,1.7,0.368,16.0,56.0,0.9968,3.11,1.28,9.3,5 +7.4,0.59,0.08,4.4,0.086,6.0,29.0,0.9974,3.38,0.5,9.0,4 +7.9,0.32,0.51,1.8,0.341,17.0,56.0,0.9969,3.04,1.08,9.2,6 +8.9,0.22,0.48,1.8,0.077,29.0,60.0,0.9968,3.39,0.53,9.4,6 +7.6,0.39,0.31,2.3,0.08199999999999999,23.0,71.0,0.9982,3.52,0.65,9.7,5 +7.9,0.43,0.21,1.6,0.106,10.0,37.0,0.9966,3.17,0.91,9.5,5 +8.5,0.49,0.11,2.3,0.084,9.0,67.0,0.9968,3.17,0.53,9.4,5 +6.9,0.4,0.14,2.4,0.085,21.0,40.0,0.9968,3.43,0.63,9.7,6 +6.3,0.39,0.16,1.4,0.08,11.0,23.0,0.9955,3.34,0.56,9.3,5 +7.6,0.41,0.24,1.8,0.08,4.0,11.0,0.9962,3.28,0.59,9.5,5 +7.9,0.43,0.21,1.6,0.106,10.0,37.0,0.9966,3.17,0.91,9.5,5 +7.1,0.71,0.0,1.9,0.08,14.0,35.0,0.9972,3.47,0.55,9.4,5 +7.8,0.645,0.0,2.0,0.08199999999999999,8.0,16.0,0.9964,3.38,0.59,9.8,6 +6.7,0.675,0.07,2.4,0.08900000000000001,17.0,82.0,0.9958,3.35,0.54,10.1,5 +6.9,0.685,0.0,2.5,0.105,22.0,37.0,0.9966,3.46,0.57,10.6,6 +8.3,0.655,0.12,2.3,0.083,15.0,113.0,0.9966,3.17,0.66,9.8,5 +6.9,0.605,0.12,10.7,0.073,40.0,83.0,0.9993,3.45,0.52,9.4,6 +5.2,0.32,0.25,1.8,0.10300000000000001,13.0,50.0,0.9957,3.38,0.55,9.2,5 +7.8,0.645,0.0,5.5,0.086,5.0,18.0,0.9986,3.4,0.55,9.6,6 +7.8,0.6,0.14,2.4,0.086,3.0,15.0,0.9975,3.42,0.6,10.8,6 +8.1,0.38,0.28,2.1,0.066,13.0,30.0,0.9968,3.23,0.73,9.7,7 +5.7,1.13,0.09,1.5,0.172,7.0,19.0,0.9940000000000001,3.5,0.48,9.8,4 +7.3,0.45,0.36,5.9,0.07400000000000001,12.0,87.0,0.9978,3.33,0.83,10.5,5 +7.3,0.45,0.36,5.9,0.07400000000000001,12.0,87.0,0.9978,3.33,0.83,10.5,5 +8.8,0.61,0.3,2.8,0.08800000000000001,17.0,46.0,0.9976,3.26,0.51,9.3,4 +7.5,0.49,0.2,2.6,0.332,8.0,14.0,0.9968,3.21,0.9,10.5,6 +8.1,0.66,0.22,2.2,0.069,9.0,23.0,0.9968,3.3,1.2,10.3,5 +6.8,0.67,0.02,1.8,0.05,5.0,11.0,0.9962,3.48,0.52,9.5,5 +4.6,0.52,0.15,2.1,0.054000000000000006,8.0,65.0,0.9934,3.9,0.56,13.1,4 +7.7,0.935,0.43,2.2,0.114,22.0,114.0,0.997,3.25,0.73,9.2,5 +8.7,0.29,0.52,1.6,0.113,12.0,37.0,0.9969,3.25,0.58,9.5,5 +6.4,0.4,0.23,1.6,0.066,5.0,12.0,0.9958,3.34,0.56,9.2,5 +5.6,0.31,0.37,1.4,0.07400000000000001,12.0,96.0,0.9954,3.32,0.58,9.2,5 +8.8,0.66,0.26,1.7,0.07400000000000001,4.0,23.0,0.9971,3.15,0.74,9.2,5 +6.6,0.52,0.04,2.2,0.069,8.0,15.0,0.9956,3.4,0.63,9.4,6 +6.6,0.5,0.04,2.1,0.068,6.0,14.0,0.9955,3.39,0.64,9.4,6 +8.6,0.38,0.36,3.0,0.081,30.0,119.0,0.997,3.2,0.56,9.4,5 +7.6,0.51,0.15,2.8,0.11,33.0,73.0,0.9955,3.17,0.63,10.2,6 +7.7,0.62,0.04,3.8,0.084,25.0,45.0,0.9978,3.34,0.53,9.5,5 +10.2,0.42,0.57,3.4,0.07,4.0,10.0,0.9971,3.04,0.63,9.6,5 +7.5,0.63,0.12,5.1,0.111,50.0,110.0,0.9983,3.26,0.77,9.4,5 +7.8,0.59,0.18,2.3,0.076,17.0,54.0,0.9975,3.43,0.59,10.0,5 +7.3,0.39,0.31,2.4,0.07400000000000001,9.0,46.0,0.9962,3.41,0.54,9.4,6 +8.8,0.4,0.4,2.2,0.079,19.0,52.0,0.998,3.44,0.64,9.2,5 +7.7,0.69,0.49,1.8,0.115,20.0,112.0,0.9968,3.21,0.71,9.3,5 +7.5,0.52,0.16,1.9,0.085,12.0,35.0,0.9968,3.38,0.62,9.5,7 +7.0,0.735,0.05,2.0,0.081,13.0,54.0,0.9966,3.39,0.57,9.8,5 +7.2,0.725,0.05,4.65,0.086,4.0,11.0,0.9962,3.41,0.39,10.9,5 +7.2,0.725,0.05,4.65,0.086,4.0,11.0,0.9962,3.41,0.39,10.9,5 +7.5,0.52,0.11,1.5,0.079,11.0,39.0,0.9968,3.42,0.58,9.6,5 +6.6,0.705,0.07,1.6,0.076,6.0,15.0,0.9962,3.44,0.58,10.7,5 +9.3,0.32,0.57,2.0,0.07400000000000001,27.0,65.0,0.9969,3.28,0.79,10.7,5 +8.0,0.705,0.05,1.9,0.07400000000000001,8.0,19.0,0.9962,3.34,0.95,10.5,6 +7.7,0.63,0.08,1.9,0.076,15.0,27.0,0.9967,3.32,0.54,9.5,6 +7.7,0.67,0.23,2.1,0.08800000000000001,17.0,96.0,0.9962,3.32,0.48,9.5,5 +7.7,0.69,0.22,1.9,0.084,18.0,94.0,0.9961,3.31,0.48,9.5,5 +8.3,0.675,0.26,2.1,0.084,11.0,43.0,0.9976,3.31,0.53,9.2,4 +9.7,0.32,0.54,2.5,0.094,28.0,83.0,0.9984,3.28,0.82,9.6,5 +8.8,0.41,0.64,2.2,0.09300000000000001,9.0,42.0,0.9986,3.54,0.66,10.5,5 +8.8,0.41,0.64,2.2,0.09300000000000001,9.0,42.0,0.9986,3.54,0.66,10.5,5 +6.8,0.785,0.0,2.4,0.10400000000000001,14.0,30.0,0.9966,3.52,0.55,10.7,6 +6.7,0.75,0.12,2.0,0.086,12.0,80.0,0.9958,3.38,0.52,10.1,5 +8.3,0.625,0.2,1.5,0.08,27.0,119.0,0.9972,3.16,1.12,9.1,4 +6.2,0.45,0.2,1.6,0.069,3.0,15.0,0.9958,3.41,0.56,9.2,5 +7.8,0.43,0.7,1.9,0.46399999999999997,22.0,67.0,0.9974,3.13,1.28,9.4,5 +7.4,0.5,0.47,2.0,0.086,21.0,73.0,0.997,3.36,0.57,9.1,5 +7.3,0.67,0.26,1.8,0.401,16.0,51.0,0.9969,3.16,1.14,9.4,5 +6.3,0.3,0.48,1.8,0.069,18.0,61.0,0.9959,3.44,0.78,10.3,6 +6.9,0.55,0.15,2.2,0.076,19.0,40.0,0.9961,3.41,0.59,10.1,5 +8.6,0.49,0.28,1.9,0.11,20.0,136.0,0.9972,2.93,1.95,9.9,6 +7.7,0.49,0.26,1.9,0.062,9.0,31.0,0.9966,3.39,0.64,9.6,5 +9.3,0.39,0.44,2.1,0.107,34.0,125.0,0.9978,3.14,1.22,9.5,5 +7.0,0.62,0.08,1.8,0.076,8.0,24.0,0.9978,3.48,0.53,9.0,5 +7.9,0.52,0.26,1.9,0.079,42.0,140.0,0.9964,3.23,0.54,9.5,5 +8.6,0.49,0.28,1.9,0.11,20.0,136.0,0.9972,2.93,1.95,9.9,6 +8.6,0.49,0.29,2.0,0.11,19.0,133.0,0.9972,2.93,1.98,9.8,5 +7.7,0.49,0.26,1.9,0.062,9.0,31.0,0.9966,3.39,0.64,9.6,5 +5.0,1.02,0.04,1.4,0.045,41.0,85.0,0.9938,3.75,0.48,10.5,4 +4.7,0.6,0.17,2.3,0.057999999999999996,17.0,106.0,0.9932,3.85,0.6,12.9,6 +6.8,0.775,0.0,3.0,0.102,8.0,23.0,0.9965,3.45,0.56,10.7,5 +7.0,0.5,0.25,2.0,0.07,3.0,22.0,0.9963,3.25,0.63,9.2,5 +7.6,0.9,0.06,2.5,0.079,5.0,10.0,0.9967,3.39,0.56,9.8,5 +8.1,0.545,0.18,1.9,0.08,13.0,35.0,0.9972,3.3,0.59,9.0,6 +8.3,0.61,0.3,2.1,0.084,11.0,50.0,0.9972,3.4,0.61,10.2,6 +7.8,0.5,0.3,1.9,0.075,8.0,22.0,0.9959,3.31,0.56,10.4,6 +8.1,0.545,0.18,1.9,0.08,13.0,35.0,0.9972,3.3,0.59,9.0,6 +8.1,0.575,0.22,2.1,0.077,12.0,65.0,0.9967,3.29,0.51,9.2,5 +7.2,0.49,0.24,2.2,0.07,5.0,36.0,0.996,3.33,0.48,9.4,5 +8.1,0.575,0.22,2.1,0.077,12.0,65.0,0.9967,3.29,0.51,9.2,5 +7.8,0.41,0.68,1.7,0.467,18.0,69.0,0.9973,3.08,1.31,9.3,5 +6.2,0.63,0.31,1.7,0.08800000000000001,15.0,64.0,0.9969,3.46,0.79,9.3,5 +8.0,0.33,0.53,2.5,0.091,18.0,80.0,0.9976,3.37,0.8,9.6,6 +8.1,0.785,0.52,2.0,0.122,37.0,153.0,0.9969,3.21,0.69,9.3,5 +7.8,0.56,0.19,1.8,0.10400000000000001,12.0,47.0,0.9964,3.19,0.93,9.5,5 +8.4,0.62,0.09,2.2,0.084,11.0,108.0,0.9964,3.15,0.66,9.8,5 +8.4,0.6,0.1,2.2,0.085,14.0,111.0,0.9964,3.15,0.66,9.8,5 +10.1,0.31,0.44,2.3,0.08,22.0,46.0,0.9988,3.32,0.67,9.7,6 +7.8,0.56,0.19,1.8,0.10400000000000001,12.0,47.0,0.9964,3.19,0.93,9.5,5 +9.4,0.4,0.31,2.2,0.09,13.0,62.0,0.9966,3.07,0.63,10.5,6 +8.3,0.54,0.28,1.9,0.077,11.0,40.0,0.9978,3.39,0.61,10.0,6 +7.8,0.56,0.12,2.0,0.08199999999999999,7.0,28.0,0.997,3.37,0.5,9.4,6 +8.8,0.55,0.04,2.2,0.11900000000000001,14.0,56.0,0.9962,3.21,0.6,10.9,6 +7.0,0.69,0.08,1.8,0.09699999999999999,22.0,89.0,0.9959,3.34,0.54,9.2,6 +7.3,1.07,0.09,1.7,0.17800000000000002,10.0,89.0,0.9962,3.3,0.57,9.0,5 +8.8,0.55,0.04,2.2,0.11900000000000001,14.0,56.0,0.9962,3.21,0.6,10.9,6 +7.3,0.695,0.0,2.5,0.075,3.0,13.0,0.998,3.49,0.52,9.2,5 +8.0,0.71,0.0,2.6,0.08,11.0,34.0,0.9976,3.44,0.53,9.5,5 +7.8,0.5,0.17,1.6,0.08199999999999999,21.0,102.0,0.996,3.39,0.48,9.5,5 +9.0,0.62,0.04,1.9,0.146,27.0,90.0,0.9984,3.16,0.7,9.4,5 +8.2,1.33,0.0,1.7,0.081,3.0,12.0,0.9964,3.53,0.49,10.9,5 +8.1,1.33,0.0,1.8,0.08199999999999999,3.0,12.0,0.9964,3.54,0.48,10.9,5 +8.0,0.59,0.16,1.8,0.065,3.0,16.0,0.9962,3.42,0.92,10.5,7 +6.1,0.38,0.15,1.8,0.07200000000000001,6.0,19.0,0.9955,3.42,0.57,9.4,5 +8.0,0.745,0.56,2.0,0.11800000000000001,30.0,134.0,0.9968,3.24,0.66,9.4,5 +5.6,0.5,0.09,2.3,0.049,17.0,99.0,0.9937,3.63,0.63,13.0,5 +5.6,0.5,0.09,2.3,0.049,17.0,99.0,0.9937,3.63,0.63,13.0,5 +6.6,0.5,0.01,1.5,0.06,17.0,26.0,0.9952,3.4,0.58,9.8,6 +7.9,1.04,0.05,2.2,0.084,13.0,29.0,0.9959,3.22,0.55,9.9,6 +8.4,0.745,0.11,1.9,0.09,16.0,63.0,0.9965,3.19,0.82,9.6,5 +8.3,0.715,0.15,1.8,0.08900000000000001,10.0,52.0,0.9968,3.23,0.77,9.5,5 +7.2,0.415,0.36,2.0,0.081,13.0,45.0,0.9972,3.48,0.64,9.2,5 +7.8,0.56,0.19,2.1,0.081,15.0,105.0,0.9962,3.33,0.54,9.5,5 +7.8,0.56,0.19,2.0,0.081,17.0,108.0,0.9962,3.32,0.54,9.5,5 +8.4,0.745,0.11,1.9,0.09,16.0,63.0,0.9965,3.19,0.82,9.6,5 +8.3,0.715,0.15,1.8,0.08900000000000001,10.0,52.0,0.9968,3.23,0.77,9.5,5 +5.2,0.34,0.0,1.8,0.05,27.0,63.0,0.9916,3.68,0.79,14.0,6 +6.3,0.39,0.08,1.7,0.066,3.0,20.0,0.9954,3.34,0.58,9.4,5 +5.2,0.34,0.0,1.8,0.05,27.0,63.0,0.9916,3.68,0.79,14.0,6 +8.1,0.67,0.55,1.8,0.11699999999999999,32.0,141.0,0.9968,3.17,0.62,9.4,5 +5.8,0.68,0.02,1.8,0.087,21.0,94.0,0.9944,3.54,0.52,10.0,5 +7.6,0.49,0.26,1.6,0.23600000000000002,10.0,88.0,0.9968,3.11,0.8,9.3,5 +6.9,0.49,0.1,2.3,0.07400000000000001,12.0,30.0,0.9959,3.42,0.58,10.2,6 +8.2,0.4,0.44,2.8,0.08900000000000001,11.0,43.0,0.9975,3.53,0.61,10.5,6 +7.3,0.33,0.47,2.1,0.077,5.0,11.0,0.9958,3.33,0.53,10.3,6 +9.2,0.52,1.0,3.4,0.61,32.0,69.0,0.9996,2.74,2.0,9.4,4 +7.5,0.6,0.03,1.8,0.095,25.0,99.0,0.995,3.35,0.54,10.1,5 +7.5,0.6,0.03,1.8,0.095,25.0,99.0,0.995,3.35,0.54,10.1,5 +7.1,0.43,0.42,5.5,0.07,29.0,129.0,0.9973,3.42,0.72,10.5,5 +7.1,0.43,0.42,5.5,0.071,28.0,128.0,0.9973,3.42,0.71,10.5,5 +7.1,0.43,0.42,5.5,0.07,29.0,129.0,0.9973,3.42,0.72,10.5,5 +7.1,0.43,0.42,5.5,0.071,28.0,128.0,0.9973,3.42,0.71,10.5,5 +7.1,0.68,0.0,2.2,0.073,12.0,22.0,0.9969,3.48,0.5,9.3,5 +6.8,0.6,0.18,1.9,0.079,18.0,86.0,0.9968,3.59,0.57,9.3,6 +7.6,0.95,0.03,2.0,0.09,7.0,20.0,0.9959,3.2,0.56,9.6,5 +7.6,0.68,0.02,1.3,0.07200000000000001,9.0,20.0,0.9965,3.17,1.08,9.2,4 +7.8,0.53,0.04,1.7,0.076,17.0,31.0,0.9964,3.33,0.56,10.0,6 +7.4,0.6,0.26,7.3,0.07,36.0,121.0,0.9982,3.37,0.49,9.4,5 +7.3,0.59,0.26,7.2,0.07,35.0,121.0,0.9981,3.37,0.49,9.4,5 +7.8,0.63,0.48,1.7,0.1,14.0,96.0,0.9961,3.19,0.62,9.5,5 +6.8,0.64,0.1,2.1,0.085,18.0,101.0,0.9956,3.34,0.52,10.2,5 +7.3,0.55,0.03,1.6,0.07200000000000001,17.0,42.0,0.9956,3.37,0.48,9.0,4 +6.8,0.63,0.07,2.1,0.08900000000000001,11.0,44.0,0.9953,3.47,0.55,10.4,6 +7.5,0.705,0.24,1.8,0.36,15.0,63.0,0.9964,3.0,1.59,9.5,5 +7.9,0.885,0.03,1.8,0.057999999999999996,4.0,8.0,0.9972,3.36,0.33,9.1,4 +8.0,0.42,0.17,2.0,0.073,6.0,18.0,0.9972,3.29,0.61,9.2,6 +8.0,0.42,0.17,2.0,0.073,6.0,18.0,0.9972,3.29,0.61,9.2,6 +7.4,0.62,0.05,1.9,0.068,24.0,42.0,0.9961,3.42,0.57,11.5,6 +7.3,0.38,0.21,2.0,0.08,7.0,35.0,0.9961,3.33,0.47,9.5,5 +6.9,0.5,0.04,1.5,0.085,19.0,49.0,0.9958,3.35,0.78,9.5,5 +7.3,0.38,0.21,2.0,0.08,7.0,35.0,0.9961,3.33,0.47,9.5,5 +7.5,0.52,0.42,2.3,0.087,8.0,38.0,0.9972,3.58,0.61,10.5,6 +7.0,0.805,0.0,2.5,0.068,7.0,20.0,0.9969,3.48,0.56,9.6,5 +8.8,0.61,0.14,2.4,0.067,10.0,42.0,0.9969,3.19,0.59,9.5,5 +8.8,0.61,0.14,2.4,0.067,10.0,42.0,0.9969,3.19,0.59,9.5,5 +8.9,0.61,0.49,2.0,0.27,23.0,110.0,0.9972,3.12,1.02,9.3,5 +7.2,0.73,0.02,2.5,0.076,16.0,42.0,0.9972,3.44,0.52,9.3,5 +6.8,0.61,0.2,1.8,0.077,11.0,65.0,0.9971,3.54,0.58,9.3,5 +6.7,0.62,0.21,1.9,0.079,8.0,62.0,0.997,3.52,0.58,9.3,6 +8.9,0.31,0.57,2.0,0.111,26.0,85.0,0.9971,3.26,0.53,9.7,5 +7.4,0.39,0.48,2.0,0.08199999999999999,14.0,67.0,0.9972,3.34,0.55,9.2,5 +7.7,0.705,0.1,2.6,0.084,9.0,26.0,0.9976,3.39,0.49,9.7,5 +7.9,0.5,0.33,2.0,0.084,15.0,143.0,0.9968,3.2,0.55,9.5,5 +7.9,0.49,0.32,1.9,0.08199999999999999,17.0,144.0,0.9968,3.2,0.55,9.5,5 +8.2,0.5,0.35,2.9,0.077,21.0,127.0,0.9976,3.23,0.62,9.4,5 +6.4,0.37,0.25,1.9,0.07400000000000001,21.0,49.0,0.9974,3.57,0.62,9.8,6 +6.8,0.63,0.12,3.8,0.099,16.0,126.0,0.9969,3.28,0.61,9.5,5 +7.6,0.55,0.21,2.2,0.071,7.0,28.0,0.9964,3.28,0.55,9.7,5 +7.6,0.55,0.21,2.2,0.071,7.0,28.0,0.9964,3.28,0.55,9.7,5 +7.8,0.59,0.33,2.0,0.07400000000000001,24.0,120.0,0.9968,3.25,0.54,9.4,5 +7.3,0.58,0.3,2.4,0.07400000000000001,15.0,55.0,0.9968,3.46,0.59,10.2,5 +11.5,0.3,0.6,2.0,0.067,12.0,27.0,0.9981,3.11,0.97,10.1,6 +5.4,0.835,0.08,1.2,0.046,13.0,93.0,0.9924,3.57,0.85,13.0,7 +6.9,1.09,0.06,2.1,0.061,12.0,31.0,0.9948,3.51,0.43,11.4,4 +9.6,0.32,0.47,1.4,0.055999999999999994,9.0,24.0,0.99695,3.22,0.82,10.3,7 +8.8,0.37,0.48,2.1,0.09699999999999999,39.0,145.0,0.9975,3.04,1.03,9.3,5 +6.8,0.5,0.11,1.5,0.075,16.0,49.0,0.99545,3.36,0.79,9.5,5 +7.0,0.42,0.35,1.6,0.08800000000000001,16.0,39.0,0.9961,3.34,0.55,9.2,5 +7.0,0.43,0.36,1.6,0.08900000000000001,14.0,37.0,0.99615,3.34,0.56,9.2,6 +12.8,0.3,0.74,2.6,0.095,9.0,28.0,0.9994,3.2,0.77,10.8,7 +12.8,0.3,0.74,2.6,0.095,9.0,28.0,0.9994,3.2,0.77,10.8,7 +7.8,0.57,0.31,1.8,0.069,26.0,120.0,0.99625,3.29,0.53,9.3,5 +7.8,0.44,0.28,2.7,0.1,18.0,95.0,0.9966,3.22,0.67,9.4,5 +11.0,0.3,0.58,2.1,0.054000000000000006,7.0,19.0,0.998,3.31,0.88,10.5,7 +9.7,0.53,0.6,2.0,0.039,5.0,19.0,0.99585,3.3,0.86,12.4,6 +8.0,0.725,0.24,2.8,0.083,10.0,62.0,0.99685,3.35,0.56,10.0,6 +11.6,0.44,0.64,2.1,0.059000000000000004,5.0,15.0,0.998,3.21,0.67,10.2,6 +8.2,0.57,0.26,2.2,0.06,28.0,65.0,0.9959,3.3,0.43,10.1,5 +7.8,0.735,0.08,2.4,0.092,10.0,41.0,0.9974,3.24,0.71,9.8,6 +7.0,0.49,0.49,5.6,0.06,26.0,121.0,0.9974,3.34,0.76,10.5,5 +8.7,0.625,0.16,2.0,0.10099999999999999,13.0,49.0,0.9962,3.14,0.57,11.0,5 +8.1,0.725,0.22,2.2,0.07200000000000001,11.0,41.0,0.9967,3.36,0.55,9.1,5 +7.5,0.49,0.19,1.9,0.076,10.0,44.0,0.9957,3.39,0.54,9.7,5 +7.8,0.53,0.33,2.4,0.08,24.0,144.0,0.99655,3.3,0.6,9.5,5 +7.8,0.34,0.37,2.0,0.08199999999999999,24.0,58.0,0.9964,3.34,0.59,9.4,6 +7.4,0.53,0.26,2.0,0.10099999999999999,16.0,72.0,0.9957,3.15,0.57,9.4,5 +6.8,0.61,0.04,1.5,0.057,5.0,10.0,0.99525,3.42,0.6,9.5,5 +8.6,0.645,0.25,2.0,0.083,8.0,28.0,0.99815,3.28,0.6,10.0,6 +8.4,0.635,0.36,2.0,0.08900000000000001,15.0,55.0,0.99745,3.31,0.57,10.4,4 +7.7,0.43,0.25,2.6,0.073,29.0,63.0,0.99615,3.37,0.58,10.5,6 +8.9,0.59,0.5,2.0,0.337,27.0,81.0,0.9964,3.04,1.61,9.5,6 +9.0,0.82,0.14,2.6,0.08900000000000001,9.0,23.0,0.9984,3.39,0.63,9.8,5 +7.7,0.43,0.25,2.6,0.073,29.0,63.0,0.99615,3.37,0.58,10.5,6 +6.9,0.52,0.25,2.6,0.081,10.0,37.0,0.99685,3.46,0.5,11.0,5 +5.2,0.48,0.04,1.6,0.054000000000000006,19.0,106.0,0.9927,3.54,0.62,12.2,7 +8.0,0.38,0.06,1.8,0.078,12.0,49.0,0.99625,3.37,0.52,9.9,6 +8.5,0.37,0.2,2.8,0.09,18.0,58.0,0.998,3.34,0.7,9.6,6 +6.9,0.52,0.25,2.6,0.081,10.0,37.0,0.99685,3.46,0.5,11.0,5 +8.2,1.0,0.09,2.3,0.065,7.0,37.0,0.99685,3.32,0.55,9.0,6 +7.2,0.63,0.0,1.9,0.09699999999999999,14.0,38.0,0.99675,3.37,0.58,9.0,6 +7.2,0.63,0.0,1.9,0.09699999999999999,14.0,38.0,0.99675,3.37,0.58,9.0,6 +7.2,0.645,0.0,1.9,0.09699999999999999,15.0,39.0,0.99675,3.37,0.58,9.2,6 +7.2,0.63,0.0,1.9,0.09699999999999999,14.0,38.0,0.99675,3.37,0.58,9.0,6 +8.2,1.0,0.09,2.3,0.065,7.0,37.0,0.99685,3.32,0.55,9.0,6 +8.9,0.635,0.37,1.7,0.263,5.0,62.0,0.9971,3.0,1.09,9.3,5 +12.0,0.38,0.56,2.1,0.09300000000000001,6.0,24.0,0.99925,3.14,0.71,10.9,6 +7.7,0.58,0.1,1.8,0.102,28.0,109.0,0.99565,3.08,0.49,9.8,6 +15.0,0.21,0.44,2.2,0.075,10.0,24.0,1.00005,3.07,0.84,9.2,7 +15.0,0.21,0.44,2.2,0.075,10.0,24.0,1.00005,3.07,0.84,9.2,7 +7.3,0.66,0.0,2.0,0.084,6.0,23.0,0.9983,3.61,0.96,9.9,6 +7.1,0.68,0.07,1.9,0.075,16.0,51.0,0.99685,3.38,0.52,9.5,5 +8.2,0.6,0.17,2.3,0.07200000000000001,11.0,73.0,0.9963,3.2,0.45,9.3,5 +7.7,0.53,0.06,1.7,0.07400000000000001,9.0,39.0,0.99615,3.35,0.48,9.8,6 +7.3,0.66,0.0,2.0,0.084,6.0,23.0,0.9983,3.61,0.96,9.9,6 +10.8,0.32,0.44,1.6,0.063,16.0,37.0,0.9985,3.22,0.78,10.0,6 +7.1,0.6,0.0,1.8,0.07400000000000001,16.0,34.0,0.9972,3.47,0.7,9.9,6 +11.1,0.35,0.48,3.1,0.09,5.0,21.0,0.9986,3.17,0.53,10.5,5 +7.7,0.775,0.42,1.9,0.092,8.0,86.0,0.9959,3.23,0.59,9.5,5 +7.1,0.6,0.0,1.8,0.07400000000000001,16.0,34.0,0.9972,3.47,0.7,9.9,6 +8.0,0.57,0.23,3.2,0.073,17.0,119.0,0.99675,3.26,0.57,9.3,5 +9.4,0.34,0.37,2.2,0.075,5.0,13.0,0.998,3.22,0.62,9.2,5 +6.6,0.695,0.0,2.1,0.075,12.0,56.0,0.9968,3.49,0.67,9.2,5 +7.7,0.41,0.76,1.8,0.611,8.0,45.0,0.9968,3.06,1.26,9.4,5 +10.0,0.31,0.47,2.6,0.085,14.0,33.0,0.99965,3.36,0.8,10.5,7 +7.9,0.33,0.23,1.7,0.077,18.0,45.0,0.99625,3.29,0.65,9.3,5 +7.0,0.975,0.04,2.0,0.087,12.0,67.0,0.99565,3.35,0.6,9.4,4 +8.0,0.52,0.03,1.7,0.07,10.0,35.0,0.99575,3.34,0.57,10.0,5 +7.9,0.37,0.23,1.8,0.077,23.0,49.0,0.9963,3.28,0.67,9.3,5 +12.5,0.56,0.49,2.4,0.064,5.0,27.0,0.9999,3.08,0.87,10.9,5 +11.8,0.26,0.52,1.8,0.071,6.0,10.0,0.9968,3.2,0.72,10.2,7 +8.1,0.87,0.0,3.3,0.096,26.0,61.0,1.00025,3.6,0.72,9.8,4 +7.9,0.35,0.46,3.6,0.078,15.0,37.0,0.9973,3.35,0.86,12.8,8 +6.9,0.54,0.04,3.0,0.077,7.0,27.0,0.9987,3.69,0.91,9.4,6 +11.5,0.18,0.51,4.0,0.10400000000000001,4.0,23.0,0.9996,3.28,0.97,10.1,6 +7.9,0.545,0.06,4.0,0.087,27.0,61.0,0.9965,3.36,0.67,10.7,6 +11.5,0.18,0.51,4.0,0.10400000000000001,4.0,23.0,0.9996,3.28,0.97,10.1,6 +10.9,0.37,0.58,4.0,0.071,17.0,65.0,0.99935,3.22,0.78,10.1,5 +8.4,0.715,0.2,2.4,0.076,10.0,38.0,0.99735,3.31,0.64,9.4,5 +7.5,0.65,0.18,7.0,0.08800000000000001,27.0,94.0,0.99915,3.38,0.77,9.4,5 +7.9,0.545,0.06,4.0,0.087,27.0,61.0,0.9965,3.36,0.67,10.7,6 +6.9,0.54,0.04,3.0,0.077,7.0,27.0,0.9987,3.69,0.91,9.4,6 +11.5,0.18,0.51,4.0,0.10400000000000001,4.0,23.0,0.9996,3.28,0.97,10.1,6 +10.3,0.32,0.45,6.4,0.073,5.0,13.0,0.9976,3.23,0.82,12.6,8 +8.9,0.4,0.32,5.6,0.087,10.0,47.0,0.9991,3.38,0.77,10.5,7 +11.4,0.26,0.44,3.6,0.071,6.0,19.0,0.9986,3.12,0.82,9.3,6 +7.7,0.27,0.68,3.5,0.358,5.0,10.0,0.9972,3.25,1.08,9.9,7 +7.6,0.52,0.12,3.0,0.067,12.0,53.0,0.9971,3.36,0.57,9.1,5 +8.9,0.4,0.32,5.6,0.087,10.0,47.0,0.9991,3.38,0.77,10.5,7 +9.9,0.59,0.07,3.4,0.102,32.0,71.0,1.00015,3.31,0.71,9.8,5 +9.9,0.59,0.07,3.4,0.102,32.0,71.0,1.00015,3.31,0.71,9.8,5 +12.0,0.45,0.55,2.0,0.073,25.0,49.0,0.9997,3.1,0.76,10.3,6 +7.5,0.4,0.12,3.0,0.092,29.0,53.0,0.9967,3.37,0.7,10.3,6 +8.7,0.52,0.09,2.5,0.091,20.0,49.0,0.9976,3.34,0.86,10.6,7 +11.6,0.42,0.53,3.3,0.105,33.0,98.0,1.001,3.2,0.95,9.2,5 +8.7,0.52,0.09,2.5,0.091,20.0,49.0,0.9976,3.34,0.86,10.6,7 +11.0,0.2,0.48,2.0,0.34299999999999997,6.0,18.0,0.9979,3.3,0.71,10.5,5 +10.4,0.55,0.23,2.7,0.091,18.0,48.0,0.9994,3.22,0.64,10.3,6 +6.9,0.36,0.25,2.4,0.098,5.0,16.0,0.9964,3.41,0.6,10.1,6 +13.3,0.34,0.52,3.2,0.094,17.0,53.0,1.0014,3.05,0.81,9.5,6 +10.8,0.5,0.46,2.5,0.073,5.0,27.0,1.0001,3.05,0.64,9.5,5 +10.6,0.83,0.37,2.6,0.086,26.0,70.0,0.9981,3.16,0.52,9.9,5 +7.1,0.63,0.06,2.0,0.083,8.0,29.0,0.99855,3.67,0.73,9.6,5 +7.2,0.65,0.02,2.3,0.094,5.0,31.0,0.9993,3.67,0.8,9.7,5 +6.9,0.67,0.06,2.1,0.08,8.0,33.0,0.99845,3.68,0.71,9.6,5 +7.5,0.53,0.06,2.6,0.086,20.0,44.0,0.9965,3.38,0.59,10.7,6 +11.1,0.18,0.48,1.5,0.068,7.0,15.0,0.9973,3.22,0.64,10.1,6 +8.3,0.705,0.12,2.6,0.092,12.0,28.0,0.9994,3.51,0.72,10.0,5 +7.4,0.67,0.12,1.6,0.18600000000000003,5.0,21.0,0.996,3.39,0.54,9.5,5 +8.4,0.65,0.6,2.1,0.11199999999999999,12.0,90.0,0.9973,3.2,0.52,9.2,5 +10.3,0.53,0.48,2.5,0.063,6.0,25.0,0.9998,3.12,0.59,9.3,6 +7.6,0.62,0.32,2.2,0.08199999999999999,7.0,54.0,0.9966,3.36,0.52,9.4,5 +10.3,0.41,0.42,2.4,0.213,6.0,14.0,0.9994,3.19,0.62,9.5,6 +10.3,0.43,0.44,2.4,0.214,5.0,12.0,0.9994,3.19,0.63,9.5,6 +7.4,0.29,0.38,1.7,0.062,9.0,30.0,0.9968,3.41,0.53,9.5,6 +10.3,0.53,0.48,2.5,0.063,6.0,25.0,0.9998,3.12,0.59,9.3,6 +7.9,0.53,0.24,2.0,0.07200000000000001,15.0,105.0,0.996,3.27,0.54,9.4,6 +9.0,0.46,0.31,2.8,0.09300000000000001,19.0,98.0,0.99815,3.32,0.63,9.5,6 +8.6,0.47,0.3,3.0,0.076,30.0,135.0,0.9976,3.3,0.53,9.4,5 +7.4,0.36,0.29,2.6,0.087,26.0,72.0,0.99645,3.39,0.68,11.0,5 +7.1,0.35,0.29,2.5,0.096,20.0,53.0,0.9962,3.42,0.65,11.0,6 +9.6,0.56,0.23,3.4,0.102,37.0,92.0,0.9996,3.3,0.65,10.1,5 +9.6,0.77,0.12,2.9,0.08199999999999999,30.0,74.0,0.99865,3.3,0.64,10.4,6 +9.8,0.66,0.39,3.2,0.083,21.0,59.0,0.9989,3.37,0.71,11.5,7 +9.6,0.77,0.12,2.9,0.08199999999999999,30.0,74.0,0.99865,3.3,0.64,10.4,6 +9.8,0.66,0.39,3.2,0.083,21.0,59.0,0.9989,3.37,0.71,11.5,7 +9.3,0.61,0.26,3.4,0.09,25.0,87.0,0.99975,3.24,0.62,9.7,5 +7.8,0.62,0.05,2.3,0.079,6.0,18.0,0.99735,3.29,0.63,9.3,5 +10.3,0.59,0.42,2.8,0.09,35.0,73.0,0.9990000000000001,3.28,0.7,9.5,6 +10.0,0.49,0.2,11.0,0.071,13.0,50.0,1.0015,3.16,0.69,9.2,6 +10.0,0.49,0.2,11.0,0.071,13.0,50.0,1.0015,3.16,0.69,9.2,6 +11.6,0.53,0.66,3.65,0.121,6.0,14.0,0.9978,3.05,0.74,11.5,7 +10.3,0.44,0.5,4.5,0.107,5.0,13.0,0.998,3.28,0.83,11.5,5 +13.4,0.27,0.62,2.6,0.08199999999999999,6.0,21.0,1.0002,3.16,0.67,9.7,6 +10.7,0.46,0.39,2.0,0.061,7.0,15.0,0.9981,3.18,0.62,9.5,5 +10.2,0.36,0.64,2.9,0.122,10.0,41.0,0.998,3.23,0.66,12.5,6 +10.2,0.36,0.64,2.9,0.122,10.0,41.0,0.998,3.23,0.66,12.5,6 +8.0,0.58,0.28,3.2,0.066,21.0,114.0,0.9973,3.22,0.54,9.4,6 +8.4,0.56,0.08,2.1,0.105,16.0,44.0,0.9958,3.13,0.52,11.0,5 +7.9,0.65,0.01,2.5,0.078,17.0,38.0,0.9963,3.34,0.74,11.7,7 +11.9,0.695,0.53,3.4,0.128,7.0,21.0,0.9992,3.17,0.84,12.2,7 +8.9,0.43,0.45,1.9,0.052000000000000005,6.0,16.0,0.9948,3.35,0.7,12.5,6 +7.8,0.43,0.32,2.8,0.08,29.0,58.0,0.9974,3.31,0.64,10.3,5 +12.4,0.49,0.58,3.0,0.10300000000000001,28.0,99.0,1.0008,3.16,1.0,11.5,6 +12.5,0.28,0.54,2.3,0.08199999999999999,12.0,29.0,0.9997,3.11,1.36,9.8,7 +12.2,0.34,0.5,2.4,0.066,10.0,21.0,1.0,3.12,1.18,9.2,6 +10.6,0.42,0.48,2.7,0.065,5.0,18.0,0.9972,3.21,0.87,11.3,6 +10.9,0.39,0.47,1.8,0.11800000000000001,6.0,14.0,0.9982,3.3,0.75,9.8,6 +10.9,0.39,0.47,1.8,0.11800000000000001,6.0,14.0,0.9982,3.3,0.75,9.8,6 +11.9,0.57,0.5,2.6,0.08199999999999999,6.0,32.0,1.0006,3.12,0.78,10.7,6 +7.0,0.685,0.0,1.9,0.067,40.0,63.0,0.9979,3.6,0.81,9.9,5 +6.6,0.815,0.02,2.7,0.07200000000000001,17.0,34.0,0.9955,3.58,0.89,12.3,7 +13.8,0.49,0.67,3.0,0.09300000000000001,6.0,15.0,0.9986,3.02,0.93,12.0,6 +9.6,0.56,0.31,2.8,0.08900000000000001,15.0,46.0,0.9979,3.11,0.92,10.0,6 +9.1,0.785,0.0,2.6,0.09300000000000001,11.0,28.0,0.9994,3.36,0.86,9.4,6 +10.7,0.67,0.22,2.7,0.107,17.0,34.0,1.0004,3.28,0.98,9.9,6 +9.1,0.795,0.0,2.6,0.096,11.0,26.0,0.9994,3.35,0.83,9.4,6 +7.7,0.665,0.0,2.4,0.09,8.0,19.0,0.9974,3.27,0.73,9.3,5 +13.5,0.53,0.79,4.8,0.12,23.0,77.0,1.0018,3.18,0.77,13.0,5 +6.1,0.21,0.4,1.4,0.066,40.5,165.0,0.9912,3.25,0.59,11.9,6 +6.7,0.75,0.01,2.4,0.078,17.0,32.0,0.9955,3.55,0.61,12.8,6 +11.5,0.41,0.52,3.0,0.08,29.0,55.0,1.0001,3.26,0.88,11.0,5 +10.5,0.42,0.66,2.95,0.11599999999999999,12.0,29.0,0.997,3.24,0.75,11.7,7 +11.9,0.43,0.66,3.1,0.109,10.0,23.0,1.0,3.15,0.85,10.4,7 +12.6,0.38,0.66,2.6,0.08800000000000001,10.0,41.0,1.001,3.17,0.68,9.8,6 +8.2,0.7,0.23,2.0,0.099,14.0,81.0,0.9973,3.19,0.7,9.4,5 +8.6,0.45,0.31,2.6,0.086,21.0,50.0,0.9982,3.37,0.91,9.9,6 +11.9,0.58,0.66,2.5,0.07200000000000001,6.0,37.0,0.9992,3.05,0.56,10.0,5 +12.5,0.46,0.63,2.0,0.071,6.0,15.0,0.9988,2.99,0.87,10.2,5 +12.8,0.615,0.66,5.8,0.083,7.0,42.0,1.0022,3.07,0.73,10.0,7 +10.0,0.42,0.5,3.4,0.107,7.0,21.0,0.9979,3.26,0.93,11.8,6 +12.8,0.615,0.66,5.8,0.083,7.0,42.0,1.0022,3.07,0.73,10.0,7 +10.4,0.575,0.61,2.6,0.076,11.0,24.0,1.0,3.16,0.69,9.0,5 +10.3,0.34,0.52,2.8,0.159,15.0,75.0,0.9998,3.18,0.64,9.4,5 +9.4,0.27,0.53,2.4,0.07400000000000001,6.0,18.0,0.9962,3.2,1.13,12.0,7 +6.9,0.765,0.02,2.3,0.063,35.0,63.0,0.9975,3.57,0.78,9.9,5 +7.9,0.24,0.4,1.6,0.055999999999999994,11.0,25.0,0.9967,3.32,0.87,8.7,6 +9.1,0.28,0.48,1.8,0.067,26.0,46.0,0.9967,3.32,1.04,10.6,6 +7.4,0.55,0.22,2.2,0.106,12.0,72.0,0.9959,3.05,0.63,9.2,5 +14.0,0.41,0.63,3.8,0.08900000000000001,6.0,47.0,1.0014,3.01,0.81,10.8,6 +11.5,0.54,0.71,4.4,0.124,6.0,15.0,0.9984,3.01,0.83,11.8,7 +11.5,0.45,0.5,3.0,0.078,19.0,47.0,1.0003,3.26,1.11,11.0,6 +9.4,0.27,0.53,2.4,0.07400000000000001,6.0,18.0,0.9962,3.2,1.13,12.0,7 +11.4,0.625,0.66,6.2,0.08800000000000001,6.0,24.0,0.9988,3.11,0.99,13.3,6 +8.3,0.42,0.38,2.5,0.094,24.0,60.0,0.9979,3.31,0.7,10.8,6 +8.3,0.26,0.42,2.0,0.08,11.0,27.0,0.9974,3.21,0.8,9.4,6 +13.7,0.415,0.68,2.9,0.085,17.0,43.0,1.0014,3.06,0.8,10.0,6 +8.3,0.26,0.42,2.0,0.08,11.0,27.0,0.9974,3.21,0.8,9.4,6 +8.3,0.26,0.42,2.0,0.08,11.0,27.0,0.9974,3.21,0.8,9.4,6 +7.7,0.51,0.28,2.1,0.087,23.0,54.0,0.998,3.42,0.74,9.2,5 +7.4,0.63,0.07,2.4,0.09,11.0,37.0,0.9979,3.43,0.76,9.7,6 +7.8,0.54,0.26,2.0,0.08800000000000001,23.0,48.0,0.9981,3.41,0.74,9.2,6 +8.3,0.66,0.15,1.9,0.079,17.0,42.0,0.9972,3.31,0.54,9.6,6 +7.8,0.46,0.26,1.9,0.08800000000000001,23.0,53.0,0.9981,3.43,0.74,9.2,6 +9.6,0.38,0.31,2.5,0.096,16.0,49.0,0.9982,3.19,0.7,10.0,7 +5.6,0.85,0.05,1.4,0.045,12.0,88.0,0.9924,3.56,0.82,12.9,8 +13.7,0.415,0.68,2.9,0.085,17.0,43.0,1.0014,3.06,0.8,10.0,6 +9.5,0.37,0.52,2.0,0.08199999999999999,6.0,26.0,0.998,3.18,0.51,9.5,5 +8.4,0.665,0.61,2.0,0.11199999999999999,13.0,95.0,0.997,3.16,0.54,9.1,5 +12.7,0.6,0.65,2.3,0.063,6.0,25.0,0.9997,3.03,0.57,9.9,5 +12.0,0.37,0.76,4.2,0.066,7.0,38.0,1.0004,3.22,0.6,13.0,7 +6.6,0.735,0.02,7.9,0.122,68.0,124.0,0.9994,3.47,0.53,9.9,5 +11.5,0.59,0.59,2.6,0.087,13.0,49.0,0.9988,3.18,0.65,11.0,6 +11.5,0.59,0.59,2.6,0.087,13.0,49.0,0.9988,3.18,0.65,11.0,6 +8.7,0.765,0.22,2.3,0.064,9.0,42.0,0.9963,3.1,0.55,9.4,5 +6.6,0.735,0.02,7.9,0.122,68.0,124.0,0.9994,3.47,0.53,9.9,5 +7.7,0.26,0.3,1.7,0.059000000000000004,20.0,38.0,0.9949,3.29,0.47,10.8,6 +12.2,0.48,0.54,2.6,0.085,19.0,64.0,1.0,3.1,0.61,10.5,6 +11.4,0.6,0.49,2.7,0.085,10.0,41.0,0.9994,3.15,0.63,10.5,6 +7.7,0.69,0.05,2.7,0.075,15.0,27.0,0.9974,3.26,0.61,9.1,5 +8.7,0.31,0.46,1.4,0.059000000000000004,11.0,25.0,0.9966,3.36,0.76,10.1,6 +9.8,0.44,0.47,2.5,0.063,9.0,28.0,0.9981,3.24,0.65,10.8,6 +12.0,0.39,0.66,3.0,0.09300000000000001,12.0,30.0,0.9996,3.18,0.63,10.8,7 +10.4,0.34,0.58,3.7,0.174,6.0,16.0,0.997,3.19,0.7,11.3,6 +12.5,0.46,0.49,4.5,0.07,26.0,49.0,0.9981,3.05,0.57,9.6,4 +9.0,0.43,0.34,2.5,0.08,26.0,86.0,0.9987,3.38,0.62,9.5,6 +9.1,0.45,0.35,2.4,0.08,23.0,78.0,0.9987,3.38,0.62,9.5,5 +7.1,0.735,0.16,1.9,0.1,15.0,77.0,0.9966,3.27,0.64,9.3,5 +9.9,0.4,0.53,6.7,0.09699999999999999,6.0,19.0,0.9986,3.27,0.82,11.7,7 +8.8,0.52,0.34,2.7,0.087,24.0,122.0,0.9982,3.26,0.61,9.5,5 +8.6,0.725,0.24,6.6,0.11699999999999999,31.0,134.0,1.0014,3.32,1.07,9.3,5 +10.6,0.48,0.64,2.2,0.111,6.0,20.0,0.997,3.26,0.66,11.7,6 +7.0,0.58,0.12,1.9,0.091,34.0,124.0,0.9956,3.44,0.48,10.5,5 +11.9,0.38,0.51,2.0,0.121,7.0,20.0,0.9996,3.24,0.76,10.4,6 +6.8,0.77,0.0,1.8,0.066,34.0,52.0,0.9976,3.62,0.68,9.9,5 +9.5,0.56,0.33,2.4,0.08900000000000001,35.0,67.0,0.9972,3.28,0.73,11.8,7 +6.6,0.84,0.03,2.3,0.059000000000000004,32.0,48.0,0.9952,3.52,0.56,12.3,7 +7.7,0.96,0.2,2.0,0.047,15.0,60.0,0.9955,3.36,0.44,10.9,5 +10.5,0.24,0.47,2.1,0.066,6.0,24.0,0.9978,3.15,0.9,11.0,7 +7.7,0.96,0.2,2.0,0.047,15.0,60.0,0.9955,3.36,0.44,10.9,5 +6.6,0.84,0.03,2.3,0.059000000000000004,32.0,48.0,0.9952,3.52,0.56,12.3,7 +6.4,0.67,0.08,2.1,0.045,19.0,48.0,0.9949,3.49,0.49,11.4,6 +9.5,0.78,0.22,1.9,0.077,6.0,32.0,0.9988,3.26,0.56,10.6,6 +9.1,0.52,0.33,1.3,0.07,9.0,30.0,0.9978,3.24,0.6,9.3,5 +12.8,0.84,0.63,2.4,0.08800000000000001,13.0,35.0,0.9997,3.1,0.6,10.4,6 +10.5,0.24,0.47,2.1,0.066,6.0,24.0,0.9978,3.15,0.9,11.0,7 +7.8,0.55,0.35,2.2,0.07400000000000001,21.0,66.0,0.9974,3.25,0.56,9.2,5 +11.9,0.37,0.69,2.3,0.078,12.0,24.0,0.9958,3.0,0.65,12.8,6 +12.3,0.39,0.63,2.3,0.091,6.0,18.0,1.0004,3.16,0.49,9.5,5 +10.4,0.41,0.55,3.2,0.076,22.0,54.0,0.9996,3.15,0.89,9.9,6 +12.3,0.39,0.63,2.3,0.091,6.0,18.0,1.0004,3.16,0.49,9.5,5 +8.0,0.67,0.3,2.0,0.06,38.0,62.0,0.9958,3.26,0.56,10.2,6 +11.1,0.45,0.73,3.2,0.066,6.0,22.0,0.9986,3.17,0.66,11.2,6 +10.4,0.41,0.55,3.2,0.076,22.0,54.0,0.9996,3.15,0.89,9.9,6 +7.0,0.62,0.18,1.5,0.062,7.0,50.0,0.9951,3.08,0.6,9.3,5 +12.6,0.31,0.72,2.2,0.07200000000000001,6.0,29.0,0.9987,2.88,0.82,9.8,8 +11.9,0.4,0.65,2.15,0.068,7.0,27.0,0.9988,3.06,0.68,11.3,6 +15.6,0.685,0.76,3.7,0.1,6.0,43.0,1.0032,2.95,0.68,11.2,7 +10.0,0.44,0.49,2.7,0.077,11.0,19.0,0.9963,3.23,0.63,11.6,7 +5.3,0.57,0.01,1.7,0.054000000000000006,5.0,27.0,0.9934,3.57,0.84,12.5,7 +9.5,0.735,0.1,2.1,0.079,6.0,31.0,0.9986,3.23,0.56,10.1,6 +12.5,0.38,0.6,2.6,0.081,31.0,72.0,0.9996,3.1,0.73,10.5,5 +9.3,0.48,0.29,2.1,0.127,6.0,16.0,0.9968,3.22,0.72,11.2,5 +8.6,0.53,0.22,2.0,0.1,7.0,27.0,0.9967,3.2,0.56,10.2,6 +11.9,0.39,0.69,2.8,0.095,17.0,35.0,0.9994,3.1,0.61,10.8,6 +11.9,0.39,0.69,2.8,0.095,17.0,35.0,0.9994,3.1,0.61,10.8,6 +8.4,0.37,0.53,1.8,0.413,9.0,26.0,0.9979,3.06,1.06,9.1,6 +6.8,0.56,0.03,1.7,0.084,18.0,35.0,0.9968,3.44,0.63,10.0,6 +10.4,0.33,0.63,2.8,0.084,5.0,22.0,0.9998,3.26,0.74,11.2,7 +7.0,0.23,0.4,1.6,0.063,21.0,67.0,0.9952,3.5,0.63,11.1,5 +11.3,0.62,0.67,5.2,0.086,6.0,19.0,0.9988,3.22,0.69,13.4,8 +8.9,0.59,0.39,2.3,0.095,5.0,22.0,0.9986,3.37,0.58,10.3,5 +9.2,0.63,0.21,2.7,0.09699999999999999,29.0,65.0,0.9988,3.28,0.58,9.6,5 +10.4,0.33,0.63,2.8,0.084,5.0,22.0,0.9998,3.26,0.74,11.2,7 +11.6,0.58,0.66,2.2,0.07400000000000001,10.0,47.0,1.0008,3.25,0.57,9.0,3 +9.2,0.43,0.52,2.3,0.083,14.0,23.0,0.9976,3.35,0.61,11.3,6 +8.3,0.615,0.22,2.6,0.087,6.0,19.0,0.9982,3.26,0.61,9.3,5 +11.0,0.26,0.68,2.55,0.085,10.0,25.0,0.997,3.18,0.61,11.8,5 +8.1,0.66,0.7,2.2,0.098,25.0,129.0,0.9972,3.08,0.53,9.0,5 +11.5,0.315,0.54,2.1,0.084,5.0,15.0,0.9987,2.98,0.7,9.2,6 +10.0,0.29,0.4,2.9,0.098,10.0,26.0,1.0006,3.48,0.91,9.7,5 +10.3,0.5,0.42,2.0,0.069,21.0,51.0,0.9982,3.16,0.72,11.5,6 +8.8,0.46,0.45,2.6,0.065,7.0,18.0,0.9947,3.32,0.79,14.0,6 +11.4,0.36,0.69,2.1,0.09,6.0,21.0,1.0,3.17,0.62,9.2,6 +8.7,0.82,0.02,1.2,0.07,36.0,48.0,0.9952,3.2,0.58,9.8,5 +13.0,0.32,0.65,2.6,0.09300000000000001,15.0,47.0,0.9996,3.05,0.61,10.6,5 +9.6,0.54,0.42,2.4,0.081,25.0,52.0,0.997,3.2,0.71,11.4,6 +12.5,0.37,0.55,2.6,0.083,25.0,68.0,0.9995,3.15,0.82,10.4,6 +9.9,0.35,0.55,2.1,0.062,5.0,14.0,0.9971,3.26,0.79,10.6,5 +10.5,0.28,0.51,1.7,0.08,10.0,24.0,0.9982,3.2,0.89,9.4,6 +9.6,0.68,0.24,2.2,0.087,5.0,28.0,0.9988,3.14,0.6,10.2,5 +9.3,0.27,0.41,2.0,0.091,6.0,16.0,0.998,3.28,0.7,9.7,5 +10.4,0.24,0.49,1.8,0.075,6.0,20.0,0.9977,3.18,1.06,11.0,6 +9.6,0.68,0.24,2.2,0.087,5.0,28.0,0.9988,3.14,0.6,10.2,5 +9.4,0.685,0.11,2.7,0.077,6.0,31.0,0.9984,3.19,0.7,10.1,6 +10.6,0.28,0.39,15.5,0.069,6.0,23.0,1.0026,3.12,0.66,9.2,5 +9.4,0.3,0.56,2.8,0.08,6.0,17.0,0.9964,3.15,0.92,11.7,8 +10.6,0.36,0.59,2.2,0.152,6.0,18.0,0.9986,3.04,1.05,9.4,5 +10.6,0.36,0.6,2.2,0.152,7.0,18.0,0.9986,3.04,1.06,9.4,5 +10.6,0.44,0.68,4.1,0.114,6.0,24.0,0.997,3.06,0.66,13.4,6 +10.2,0.67,0.39,1.9,0.054000000000000006,6.0,17.0,0.9976,3.17,0.47,10.0,5 +10.2,0.67,0.39,1.9,0.054000000000000006,6.0,17.0,0.9976,3.17,0.47,10.0,5 +10.2,0.645,0.36,1.8,0.053,5.0,14.0,0.9982,3.17,0.42,10.0,6 +11.6,0.32,0.55,2.8,0.081,35.0,67.0,1.0002,3.32,0.92,10.8,7 +9.3,0.39,0.4,2.6,0.073,10.0,26.0,0.9984,3.34,0.75,10.2,6 +9.3,0.775,0.27,2.8,0.078,24.0,56.0,0.9984,3.31,0.67,10.6,6 +9.2,0.41,0.5,2.5,0.055,12.0,25.0,0.9952,3.34,0.79,13.3,7 +8.9,0.4,0.51,2.6,0.052000000000000005,13.0,27.0,0.995,3.32,0.9,13.4,7 +8.7,0.69,0.31,3.0,0.086,23.0,81.0,1.0002,3.48,0.74,11.6,6 +6.5,0.39,0.23,8.3,0.051,28.0,91.0,0.9952,3.44,0.55,12.1,6 +10.7,0.35,0.53,2.6,0.07,5.0,16.0,0.9972,3.15,0.65,11.0,8 +7.8,0.52,0.25,1.9,0.081,14.0,38.0,0.9984,3.43,0.65,9.0,6 +7.2,0.34,0.32,2.5,0.09,43.0,113.0,0.9966,3.32,0.79,11.1,5 +10.7,0.35,0.53,2.6,0.07,5.0,16.0,0.9972,3.15,0.65,11.0,8 +8.7,0.69,0.31,3.0,0.086,23.0,81.0,1.0002,3.48,0.74,11.6,6 +7.8,0.52,0.25,1.9,0.081,14.0,38.0,0.9984,3.43,0.65,9.0,6 +10.4,0.44,0.73,6.55,0.07400000000000001,38.0,76.0,0.9990000000000001,3.17,0.85,12.0,7 +10.4,0.44,0.73,6.55,0.07400000000000001,38.0,76.0,0.9990000000000001,3.17,0.85,12.0,7 +10.5,0.26,0.47,1.9,0.078,6.0,24.0,0.9976,3.18,1.04,10.9,7 +10.5,0.24,0.42,1.8,0.077,6.0,22.0,0.9976,3.21,1.05,10.8,7 +10.2,0.49,0.63,2.9,0.07200000000000001,10.0,26.0,0.9968,3.16,0.78,12.5,7 +10.4,0.24,0.46,1.8,0.075,6.0,21.0,0.9976,3.25,1.02,10.8,7 +11.2,0.67,0.55,2.3,0.084,6.0,13.0,1.0,3.17,0.71,9.5,6 +10.0,0.59,0.31,2.2,0.09,26.0,62.0,0.9994,3.18,0.63,10.2,6 +13.3,0.29,0.75,2.8,0.084,23.0,43.0,0.9986,3.04,0.68,11.4,7 +12.4,0.42,0.49,4.6,0.073,19.0,43.0,0.9978,3.02,0.61,9.5,5 +10.0,0.59,0.31,2.2,0.09,26.0,62.0,0.9994,3.18,0.63,10.2,6 +10.7,0.4,0.48,2.1,0.125,15.0,49.0,0.998,3.03,0.81,9.7,6 +10.5,0.51,0.64,2.4,0.107,6.0,15.0,0.9973,3.09,0.66,11.8,7 +10.5,0.51,0.64,2.4,0.107,6.0,15.0,0.9973,3.09,0.66,11.8,7 +8.5,0.655,0.49,6.1,0.122,34.0,151.0,1.001,3.31,1.14,9.3,5 +12.5,0.6,0.49,4.3,0.1,5.0,14.0,1.001,3.25,0.74,11.9,6 +10.4,0.61,0.49,2.1,0.2,5.0,16.0,0.9994,3.16,0.63,8.4,3 +10.9,0.21,0.49,2.8,0.08800000000000001,11.0,32.0,0.9972,3.22,0.68,11.7,6 +7.3,0.365,0.49,2.5,0.08800000000000001,39.0,106.0,0.9966,3.36,0.78,11.0,5 +9.8,0.25,0.49,2.7,0.08800000000000001,15.0,33.0,0.9982,3.42,0.9,10.0,6 +7.6,0.41,0.49,2.0,0.08800000000000001,16.0,43.0,0.998,3.48,0.64,9.1,5 +8.2,0.39,0.49,2.3,0.099,47.0,133.0,0.9979,3.38,0.99,9.8,5 +9.3,0.4,0.49,2.5,0.085,38.0,142.0,0.9978,3.22,0.55,9.4,5 +9.2,0.43,0.49,2.4,0.086,23.0,116.0,0.9976,3.23,0.64,9.5,5 +10.4,0.64,0.24,2.8,0.105,29.0,53.0,0.9998,3.24,0.67,9.9,5 +7.3,0.365,0.49,2.5,0.08800000000000001,39.0,106.0,0.9966,3.36,0.78,11.0,5 +7.0,0.38,0.49,2.5,0.09699999999999999,33.0,85.0,0.9962,3.39,0.77,11.4,6 +8.2,0.42,0.49,2.6,0.084,32.0,55.0,0.9988,3.34,0.75,8.7,6 +9.9,0.63,0.24,2.4,0.077,6.0,33.0,0.9974,3.09,0.57,9.4,5 +9.1,0.22,0.24,2.1,0.078,1.0,28.0,0.9990000000000001,3.41,0.87,10.3,6 +11.9,0.38,0.49,2.7,0.098,12.0,42.0,1.0004,3.16,0.61,10.3,5 +11.9,0.38,0.49,2.7,0.098,12.0,42.0,1.0004,3.16,0.61,10.3,5 +10.3,0.27,0.24,2.1,0.07200000000000001,15.0,33.0,0.9956,3.22,0.66,12.8,6 +10.0,0.48,0.24,2.7,0.102,13.0,32.0,1.0,3.28,0.56,10.0,6 +9.1,0.22,0.24,2.1,0.078,1.0,28.0,0.9990000000000001,3.41,0.87,10.3,6 +9.9,0.63,0.24,2.4,0.077,6.0,33.0,0.9974,3.09,0.57,9.4,5 +8.1,0.825,0.24,2.1,0.084,5.0,13.0,0.9972,3.37,0.77,10.7,6 +12.9,0.35,0.49,5.8,0.066,5.0,35.0,1.0014,3.2,0.66,12.0,7 +11.2,0.5,0.74,5.15,0.1,5.0,17.0,0.9996,3.22,0.62,11.2,5 +9.2,0.59,0.24,3.3,0.10099999999999999,20.0,47.0,0.9988,3.26,0.67,9.6,5 +9.5,0.46,0.49,6.3,0.064,5.0,17.0,0.9988,3.21,0.73,11.0,6 +9.3,0.715,0.24,2.1,0.07,5.0,20.0,0.9966,3.12,0.59,9.9,5 +11.2,0.66,0.24,2.5,0.085,16.0,53.0,0.9993,3.06,0.72,11.0,6 +14.3,0.31,0.74,1.8,0.075,6.0,15.0,1.0008,2.86,0.79,8.4,6 +9.1,0.47,0.49,2.6,0.094,38.0,106.0,0.9982,3.08,0.59,9.1,5 +7.5,0.55,0.24,2.0,0.078,10.0,28.0,0.9983,3.45,0.78,9.5,6 +10.6,0.31,0.49,2.5,0.067,6.0,21.0,0.9987,3.26,0.86,10.7,6 +12.4,0.35,0.49,2.6,0.079,27.0,69.0,0.9994,3.12,0.75,10.4,6 +9.0,0.53,0.49,1.9,0.171,6.0,25.0,0.9975,3.27,0.61,9.4,6 +6.8,0.51,0.01,2.1,0.07400000000000001,9.0,25.0,0.9958,3.33,0.56,9.5,6 +9.4,0.43,0.24,2.8,0.092,14.0,45.0,0.998,3.19,0.73,10.0,6 +9.5,0.46,0.24,2.7,0.092,14.0,44.0,0.998,3.12,0.74,10.0,6 +5.0,1.04,0.24,1.6,0.05,32.0,96.0,0.9934,3.74,0.62,11.5,5 +15.5,0.645,0.49,4.2,0.095,10.0,23.0,1.00315,2.92,0.74,11.1,5 +15.5,0.645,0.49,4.2,0.095,10.0,23.0,1.00315,2.92,0.74,11.1,5 +10.9,0.53,0.49,4.6,0.11800000000000001,10.0,17.0,1.0002,3.07,0.56,11.7,6 +15.6,0.645,0.49,4.2,0.095,10.0,23.0,1.00315,2.92,0.74,11.1,5 +10.9,0.53,0.49,4.6,0.11800000000000001,10.0,17.0,1.0002,3.07,0.56,11.7,6 +13.0,0.47,0.49,4.3,0.085,6.0,47.0,1.0021,3.3,0.68,12.7,6 +12.7,0.6,0.49,2.8,0.075,5.0,19.0,0.9994,3.14,0.57,11.4,5 +9.0,0.44,0.49,2.4,0.078,26.0,121.0,0.9978,3.23,0.58,9.2,5 +9.0,0.54,0.49,2.9,0.094,41.0,110.0,0.9982,3.08,0.61,9.2,5 +7.6,0.29,0.49,2.7,0.092,25.0,60.0,0.9971,3.31,0.61,10.1,6 +13.0,0.47,0.49,4.3,0.085,6.0,47.0,1.0021,3.3,0.68,12.7,6 +12.7,0.6,0.49,2.8,0.075,5.0,19.0,0.9994,3.14,0.57,11.4,5 +8.7,0.7,0.24,2.5,0.226,5.0,15.0,0.9991,3.32,0.6,9.0,6 +8.7,0.7,0.24,2.5,0.226,5.0,15.0,0.9991,3.32,0.6,9.0,6 +9.8,0.5,0.49,2.6,0.25,5.0,20.0,0.9990000000000001,3.31,0.79,10.7,6 +6.2,0.36,0.24,2.2,0.095,19.0,42.0,0.9946,3.57,0.57,11.7,6 +11.5,0.35,0.49,3.3,0.07,10.0,37.0,1.0003,3.32,0.91,11.0,6 +6.2,0.36,0.24,2.2,0.095,19.0,42.0,0.9946,3.57,0.57,11.7,6 +10.2,0.24,0.49,2.4,0.075,10.0,28.0,0.9978,3.14,0.61,10.4,5 +10.5,0.59,0.49,2.1,0.07,14.0,47.0,0.9991,3.3,0.56,9.6,4 +10.6,0.34,0.49,3.2,0.078,20.0,78.0,0.9992,3.19,0.7,10.0,6 +12.3,0.27,0.49,3.1,0.079,28.0,46.0,0.9993,3.2,0.8,10.2,6 +9.9,0.5,0.24,2.3,0.10300000000000001,6.0,14.0,0.9978,3.34,0.52,10.0,4 +8.8,0.44,0.49,2.8,0.083,18.0,111.0,0.9982,3.3,0.6,9.5,5 +8.8,0.47,0.49,2.9,0.085,17.0,110.0,0.9982,3.29,0.6,9.8,5 +10.6,0.31,0.49,2.2,0.063,18.0,40.0,0.9976,3.14,0.51,9.8,6 +12.3,0.5,0.49,2.2,0.08900000000000001,5.0,14.0,1.0002,3.19,0.44,9.6,5 +12.3,0.5,0.49,2.2,0.08900000000000001,5.0,14.0,1.0002,3.19,0.44,9.6,5 +11.7,0.49,0.49,2.2,0.083,5.0,15.0,1.0,3.19,0.43,9.2,5 +12.0,0.28,0.49,1.9,0.07400000000000001,10.0,21.0,0.9976,2.98,0.66,9.9,7 +11.8,0.33,0.49,3.4,0.09300000000000001,54.0,80.0,1.0002,3.3,0.76,10.7,7 +7.6,0.51,0.24,2.4,0.091,8.0,38.0,0.998,3.47,0.66,9.6,6 +11.1,0.31,0.49,2.7,0.094,16.0,47.0,0.9986,3.12,1.02,10.6,7 +7.3,0.73,0.24,1.9,0.10800000000000001,18.0,102.0,0.9967,3.26,0.59,9.3,5 +5.0,0.42,0.24,2.0,0.06,19.0,50.0,0.9917,3.72,0.74,14.0,8 +10.2,0.29,0.49,2.6,0.059000000000000004,5.0,13.0,0.9976,3.05,0.74,10.5,7 +9.0,0.45,0.49,2.6,0.084,21.0,75.0,0.9987,3.35,0.57,9.7,5 +6.6,0.39,0.49,1.7,0.07,23.0,149.0,0.9922,3.12,0.5,11.5,6 +9.0,0.45,0.49,2.6,0.084,21.0,75.0,0.9987,3.35,0.57,9.7,5 +9.9,0.49,0.58,3.5,0.094,9.0,43.0,1.0004,3.29,0.58,9.0,5 +7.9,0.72,0.17,2.6,0.096,20.0,38.0,0.9978,3.4,0.53,9.5,5 +8.9,0.595,0.41,7.9,0.086,30.0,109.0,0.9998,3.27,0.57,9.3,5 +12.4,0.4,0.51,2.0,0.059000000000000004,6.0,24.0,0.9994,3.04,0.6,9.3,6 +11.9,0.58,0.58,1.9,0.071,5.0,18.0,0.998,3.09,0.63,10.0,6 +8.5,0.585,0.18,2.1,0.078,5.0,30.0,0.9967,3.2,0.48,9.8,6 +12.7,0.59,0.45,2.3,0.08199999999999999,11.0,22.0,1.0,3.0,0.7,9.3,6 +8.2,0.915,0.27,2.1,0.08800000000000001,7.0,23.0,0.9962,3.26,0.47,10.0,4 +13.2,0.46,0.52,2.2,0.071,12.0,35.0,1.0006,3.1,0.56,9.0,6 +7.7,0.835,0.0,2.6,0.081,6.0,14.0,0.9975,3.3,0.52,9.3,5 +13.2,0.46,0.52,2.2,0.071,12.0,35.0,1.0006,3.1,0.56,9.0,6 +8.3,0.58,0.13,2.9,0.096,14.0,63.0,0.9984,3.17,0.62,9.1,6 +8.3,0.6,0.13,2.6,0.085,6.0,24.0,0.9984,3.31,0.59,9.2,6 +9.4,0.41,0.48,4.6,0.07200000000000001,10.0,20.0,0.9973,3.34,0.79,12.2,7 +8.8,0.48,0.41,3.3,0.092,26.0,52.0,0.9982,3.31,0.53,10.5,6 +10.1,0.65,0.37,5.1,0.11,11.0,65.0,1.0026,3.32,0.64,10.4,6 +6.3,0.36,0.19,3.2,0.075,15.0,39.0,0.9956,3.56,0.52,12.7,6 +8.8,0.24,0.54,2.5,0.083,25.0,57.0,0.9983,3.39,0.54,9.2,5 +13.2,0.38,0.55,2.7,0.081,5.0,16.0,1.0006,2.98,0.54,9.4,5 +7.5,0.64,0.0,2.4,0.077,18.0,29.0,0.9965,3.32,0.6,10.0,6 +8.2,0.39,0.38,1.5,0.057999999999999996,10.0,29.0,0.9962,3.26,0.74,9.8,5 +9.2,0.755,0.18,2.2,0.14800000000000002,10.0,103.0,0.9969,2.87,1.36,10.2,6 +9.6,0.6,0.5,2.3,0.079,28.0,71.0,0.9997,3.5,0.57,9.7,5 +9.6,0.6,0.5,2.3,0.079,28.0,71.0,0.9997,3.5,0.57,9.7,5 +11.5,0.31,0.51,2.2,0.079,14.0,28.0,0.9982,3.03,0.93,9.8,6 +11.4,0.46,0.5,2.7,0.122,4.0,17.0,1.0006,3.13,0.7,10.2,5 +11.3,0.37,0.41,2.3,0.08800000000000001,6.0,16.0,0.9988,3.09,0.8,9.3,5 +8.3,0.54,0.24,3.4,0.076,16.0,112.0,0.9976,3.27,0.61,9.4,5 +8.2,0.56,0.23,3.4,0.078,14.0,104.0,0.9976,3.28,0.62,9.4,5 +10.0,0.58,0.22,1.9,0.08,9.0,32.0,0.9974,3.13,0.55,9.5,5 +7.9,0.51,0.25,2.9,0.077,21.0,45.0,0.9974,3.49,0.96,12.1,6 +6.8,0.69,0.0,5.6,0.124,21.0,58.0,0.9997,3.46,0.72,10.2,5 +6.8,0.69,0.0,5.6,0.124,21.0,58.0,0.9997,3.46,0.72,10.2,5 +8.8,0.6,0.29,2.2,0.098,5.0,15.0,0.9988,3.36,0.49,9.1,5 +8.8,0.6,0.29,2.2,0.098,5.0,15.0,0.9988,3.36,0.49,9.1,5 +8.7,0.54,0.26,2.5,0.09699999999999999,7.0,31.0,0.9976,3.27,0.6,9.3,6 +7.6,0.685,0.23,2.3,0.111,20.0,84.0,0.9964,3.21,0.61,9.3,5 +8.7,0.54,0.26,2.5,0.09699999999999999,7.0,31.0,0.9976,3.27,0.6,9.3,6 +10.4,0.28,0.54,2.7,0.105,5.0,19.0,0.9988,3.25,0.63,9.5,5 +7.6,0.41,0.14,3.0,0.087,21.0,43.0,0.9964,3.32,0.57,10.5,6 +10.1,0.935,0.22,3.4,0.105,11.0,86.0,1.001,3.43,0.64,11.3,4 +7.9,0.35,0.21,1.9,0.073,46.0,102.0,0.9964,3.27,0.58,9.5,5 +8.7,0.84,0.0,1.4,0.065,24.0,33.0,0.9954,3.27,0.55,9.7,5 +9.6,0.88,0.28,2.4,0.086,30.0,147.0,0.9979,3.24,0.53,9.4,5 +9.5,0.885,0.27,2.3,0.084,31.0,145.0,0.9978,3.24,0.53,9.4,5 +7.7,0.915,0.12,2.2,0.14300000000000002,7.0,23.0,0.9964,3.35,0.65,10.2,7 +8.9,0.29,0.35,1.9,0.067,25.0,57.0,0.997,3.18,1.36,10.3,6 +9.9,0.54,0.45,2.3,0.071,16.0,40.0,0.9991,3.39,0.62,9.4,5 +9.5,0.59,0.44,2.3,0.071,21.0,68.0,0.9992,3.46,0.63,9.5,5 +9.9,0.54,0.45,2.3,0.071,16.0,40.0,0.9991,3.39,0.62,9.4,5 +9.5,0.59,0.44,2.3,0.071,21.0,68.0,0.9992,3.46,0.63,9.5,5 +9.9,0.54,0.45,2.3,0.071,16.0,40.0,0.9991,3.39,0.62,9.4,5 +7.8,0.64,0.1,6.0,0.115,5.0,11.0,0.9984,3.37,0.69,10.1,7 +7.3,0.67,0.05,3.6,0.107,6.0,20.0,0.9972,3.4,0.63,10.1,5 +8.3,0.845,0.01,2.2,0.07,5.0,14.0,0.9967,3.32,0.58,11.0,4 +8.7,0.48,0.3,2.8,0.066,10.0,28.0,0.9964,3.33,0.67,11.2,7 +6.7,0.42,0.27,8.6,0.068,24.0,148.0,0.9948,3.16,0.57,11.3,6 +10.7,0.43,0.39,2.2,0.106,8.0,32.0,0.9986,2.89,0.5,9.6,5 +9.8,0.88,0.25,2.5,0.10400000000000001,35.0,155.0,1.001,3.41,0.67,11.2,5 +15.9,0.36,0.65,7.5,0.096,22.0,71.0,0.9976,2.98,0.84,14.9,5 +9.4,0.33,0.59,2.8,0.079,9.0,30.0,0.9976,3.12,0.54,12.0,6 +8.6,0.47,0.47,2.4,0.07400000000000001,7.0,29.0,0.9979,3.08,0.46,9.5,5 +9.7,0.55,0.17,2.9,0.087,20.0,53.0,1.0004,3.14,0.61,9.4,5 +10.7,0.43,0.39,2.2,0.106,8.0,32.0,0.9986,2.89,0.5,9.6,5 +12.0,0.5,0.59,1.4,0.073,23.0,42.0,0.998,2.92,0.68,10.5,7 +7.2,0.52,0.07,1.4,0.07400000000000001,5.0,20.0,0.9973,3.32,0.81,9.6,6 +7.1,0.84,0.02,4.4,0.096,5.0,13.0,0.997,3.41,0.57,11.0,4 +7.2,0.52,0.07,1.4,0.07400000000000001,5.0,20.0,0.9973,3.32,0.81,9.6,6 +7.5,0.42,0.31,1.6,0.08,15.0,42.0,0.9978,3.31,0.64,9.0,5 +7.2,0.57,0.06,1.6,0.076,9.0,27.0,0.9972,3.36,0.7,9.6,6 +10.1,0.28,0.46,1.8,0.05,5.0,13.0,0.9974,3.04,0.79,10.2,6 +12.1,0.4,0.52,2.0,0.092,15.0,54.0,1.0,3.03,0.66,10.2,5 +9.4,0.59,0.14,2.0,0.084,25.0,48.0,0.9981,3.14,0.56,9.7,5 +8.3,0.49,0.36,1.8,0.222,6.0,16.0,0.998,3.18,0.6,9.5,6 +11.3,0.34,0.45,2.0,0.08199999999999999,6.0,15.0,0.9988,2.94,0.66,9.2,6 +10.0,0.73,0.43,2.3,0.059000000000000004,15.0,31.0,0.9966,3.15,0.57,11.0,5 +11.3,0.34,0.45,2.0,0.08199999999999999,6.0,15.0,0.9988,2.94,0.66,9.2,6 +6.9,0.4,0.24,2.5,0.083,30.0,45.0,0.9959,3.26,0.58,10.0,5 +8.2,0.73,0.21,1.7,0.07400000000000001,5.0,13.0,0.9968,3.2,0.52,9.5,5 +9.8,1.24,0.34,2.0,0.079,32.0,151.0,0.998,3.15,0.53,9.5,5 +8.2,0.73,0.21,1.7,0.07400000000000001,5.0,13.0,0.9968,3.2,0.52,9.5,5 +10.8,0.4,0.41,2.2,0.084,7.0,17.0,0.9984,3.08,0.67,9.3,6 +9.3,0.41,0.39,2.2,0.064,12.0,31.0,0.9984,3.26,0.65,10.2,5 +10.8,0.4,0.41,2.2,0.084,7.0,17.0,0.9984,3.08,0.67,9.3,6 +8.6,0.8,0.11,2.3,0.084,12.0,31.0,0.9979,3.4,0.48,9.9,5 +8.3,0.78,0.1,2.6,0.081,45.0,87.0,0.9983,3.48,0.53,10.0,5 +10.8,0.26,0.45,3.3,0.06,20.0,49.0,0.9972,3.13,0.54,9.6,5 +13.3,0.43,0.58,1.9,0.07,15.0,40.0,1.0004,3.06,0.49,9.0,5 +8.0,0.45,0.23,2.2,0.094,16.0,29.0,0.9962,3.21,0.49,10.2,6 +8.5,0.46,0.31,2.25,0.078,32.0,58.0,0.998,3.33,0.54,9.8,5 +8.1,0.78,0.23,2.6,0.059000000000000004,5.0,15.0,0.997,3.37,0.56,11.3,5 +9.8,0.98,0.32,2.3,0.078,35.0,152.0,0.998,3.25,0.48,9.4,5 +8.1,0.78,0.23,2.6,0.059000000000000004,5.0,15.0,0.997,3.37,0.56,11.3,5 +7.1,0.65,0.18,1.8,0.07,13.0,40.0,0.997,3.44,0.6,9.1,5 +9.1,0.64,0.23,3.1,0.095,13.0,38.0,0.9998,3.28,0.59,9.7,5 +7.7,0.66,0.04,1.6,0.039,4.0,9.0,0.9962,3.4,0.47,9.4,5 +8.1,0.38,0.48,1.8,0.157,5.0,17.0,0.9976,3.3,1.05,9.4,5 +7.4,1.185,0.0,4.25,0.09699999999999999,5.0,14.0,0.9966,3.63,0.54,10.7,3 +9.2,0.92,0.24,2.6,0.087,12.0,93.0,0.9998,3.48,0.54,9.8,5 +8.6,0.49,0.51,2.0,0.42200000000000004,16.0,62.0,0.9979,3.03,1.17,9.0,5 +9.0,0.48,0.32,2.8,0.084,21.0,122.0,0.9984,3.32,0.62,9.4,5 +9.0,0.47,0.31,2.7,0.084,24.0,125.0,0.9984,3.31,0.61,9.4,5 +5.1,0.47,0.02,1.3,0.034,18.0,44.0,0.9921,3.9,0.62,12.8,6 +7.0,0.65,0.02,2.1,0.066,8.0,25.0,0.9972,3.47,0.67,9.5,6 +7.0,0.65,0.02,2.1,0.066,8.0,25.0,0.9972,3.47,0.67,9.5,6 +9.4,0.615,0.28,3.2,0.087,18.0,72.0,1.0001,3.31,0.53,9.7,5 +11.8,0.38,0.55,2.1,0.071,5.0,19.0,0.9986,3.11,0.62,10.8,6 +10.6,1.02,0.43,2.9,0.076,26.0,88.0,0.9984,3.08,0.57,10.1,6 +7.0,0.65,0.02,2.1,0.066,8.0,25.0,0.9972,3.47,0.67,9.5,6 +7.0,0.64,0.02,2.1,0.067,9.0,23.0,0.997,3.47,0.67,9.4,6 +7.5,0.38,0.48,2.6,0.073,22.0,84.0,0.9972,3.32,0.7,9.6,4 +9.1,0.765,0.04,1.6,0.078,4.0,14.0,0.998,3.29,0.54,9.7,4 +8.4,1.035,0.15,6.0,0.073,11.0,54.0,0.9990000000000001,3.37,0.49,9.9,5 +7.0,0.78,0.08,2.0,0.09300000000000001,10.0,19.0,0.9956,3.4,0.47,10.0,5 +7.4,0.49,0.19,3.0,0.077,16.0,37.0,0.9966,3.37,0.51,10.5,5 +7.8,0.545,0.12,2.5,0.068,11.0,35.0,0.996,3.34,0.61,11.6,6 +9.7,0.31,0.47,1.6,0.062,13.0,33.0,0.9983,3.27,0.66,10.0,6 +10.6,1.025,0.43,2.8,0.08,21.0,84.0,0.9985,3.06,0.57,10.1,5 +8.9,0.565,0.34,3.0,0.09300000000000001,16.0,112.0,0.9998,3.38,0.61,9.5,5 +8.7,0.69,0.0,3.2,0.084,13.0,33.0,0.9992,3.36,0.45,9.4,5 +8.0,0.43,0.36,2.3,0.075,10.0,48.0,0.9976,3.34,0.46,9.4,5 +9.9,0.74,0.28,2.6,0.078,21.0,77.0,0.998,3.28,0.51,9.8,5 +7.2,0.49,0.18,2.7,0.069,13.0,34.0,0.9967,3.29,0.48,9.2,6 +8.0,0.43,0.36,2.3,0.075,10.0,48.0,0.9976,3.34,0.46,9.4,5 +7.6,0.46,0.11,2.6,0.079,12.0,49.0,0.9968,3.21,0.57,10.0,5 +8.4,0.56,0.04,2.0,0.08199999999999999,10.0,22.0,0.9976,3.22,0.44,9.6,5 +7.1,0.66,0.0,3.9,0.086,17.0,45.0,0.9976,3.46,0.54,9.5,5 +8.4,0.56,0.04,2.0,0.08199999999999999,10.0,22.0,0.9976,3.22,0.44,9.6,5 +8.9,0.48,0.24,2.85,0.094,35.0,106.0,0.9982,3.1,0.53,9.2,5 +7.6,0.42,0.08,2.7,0.084,15.0,48.0,0.9968,3.21,0.59,10.0,5 +7.1,0.31,0.3,2.2,0.053,36.0,127.0,0.9965,2.94,1.62,9.5,5 +7.5,1.115,0.1,3.1,0.086,5.0,12.0,0.9958,3.54,0.6,11.2,4 +9.0,0.66,0.17,3.0,0.077,5.0,13.0,0.9976,3.29,0.55,10.4,5 +8.1,0.72,0.09,2.8,0.084,18.0,49.0,0.9994,3.43,0.72,11.1,6 +6.4,0.57,0.02,1.8,0.067,4.0,11.0,0.997,3.46,0.68,9.5,5 +6.4,0.57,0.02,1.8,0.067,4.0,11.0,0.997,3.46,0.68,9.5,5 +6.4,0.865,0.03,3.2,0.071,27.0,58.0,0.995,3.61,0.49,12.7,6 +9.5,0.55,0.66,2.3,0.387,12.0,37.0,0.9982,3.17,0.67,9.6,5 +8.9,0.875,0.13,3.45,0.08800000000000001,4.0,14.0,0.9994,3.44,0.52,11.5,5 +7.3,0.835,0.03,2.1,0.092,10.0,19.0,0.9966,3.39,0.47,9.6,5 +7.0,0.45,0.34,2.7,0.08199999999999999,16.0,72.0,0.998,3.55,0.6,9.5,5 +7.7,0.56,0.2,2.0,0.075,9.0,39.0,0.9987,3.48,0.62,9.3,5 +7.7,0.965,0.1,2.1,0.11199999999999999,11.0,22.0,0.9963,3.26,0.5,9.5,5 +7.7,0.965,0.1,2.1,0.11199999999999999,11.0,22.0,0.9963,3.26,0.5,9.5,5 +8.2,0.59,0.0,2.5,0.09300000000000001,19.0,58.0,1.0002,3.5,0.65,9.3,6 +9.0,0.46,0.23,2.8,0.092,28.0,104.0,0.9983,3.1,0.56,9.2,5 +9.0,0.69,0.0,2.4,0.08800000000000001,19.0,38.0,0.9990000000000001,3.35,0.6,9.3,5 +8.3,0.76,0.29,4.2,0.075,12.0,16.0,0.9965,3.45,0.68,11.5,6 +9.2,0.53,0.24,2.6,0.078,28.0,139.0,0.9978799999999999,3.21,0.57,9.5,5 +6.5,0.615,0.0,1.9,0.065,9.0,18.0,0.9972,3.46,0.65,9.2,5 +11.6,0.41,0.58,2.8,0.096,25.0,101.0,1.00024,3.13,0.53,10.0,5 +11.1,0.39,0.54,2.7,0.095,21.0,101.0,1.0001,3.13,0.51,9.5,5 +7.3,0.51,0.18,2.1,0.07,12.0,28.0,0.9976799999999999,3.52,0.73,9.5,6 +8.2,0.34,0.38,2.5,0.08,12.0,57.0,0.9978,3.3,0.47,9.0,6 +8.6,0.33,0.4,2.6,0.083,16.0,68.0,0.99782,3.3,0.48,9.4,5 +7.2,0.5,0.18,2.1,0.071,12.0,31.0,0.99761,3.52,0.72,9.6,6 +7.3,0.51,0.18,2.1,0.07,12.0,28.0,0.9976799999999999,3.52,0.73,9.5,6 +8.3,0.65,0.1,2.9,0.08900000000000001,17.0,40.0,0.99803,3.29,0.55,9.5,5 +8.3,0.65,0.1,2.9,0.08900000000000001,17.0,40.0,0.99803,3.29,0.55,9.5,5 +7.6,0.54,0.13,2.5,0.09699999999999999,24.0,66.0,0.99785,3.39,0.61,9.4,5 +8.3,0.65,0.1,2.9,0.08900000000000001,17.0,40.0,0.99803,3.29,0.55,9.5,5 +7.8,0.48,0.68,1.7,0.415,14.0,32.0,0.99656,3.09,1.06,9.1,6 +7.8,0.91,0.07,1.9,0.057999999999999996,22.0,47.0,0.99525,3.51,0.43,10.7,6 +6.3,0.98,0.01,2.0,0.057,15.0,33.0,0.9948799999999999,3.6,0.46,11.2,6 +8.1,0.87,0.0,2.2,0.084,10.0,31.0,0.99656,3.25,0.5,9.8,5 +8.1,0.87,0.0,2.2,0.084,10.0,31.0,0.99656,3.25,0.5,9.8,5 +8.8,0.42,0.21,2.5,0.092,33.0,88.0,0.99823,3.19,0.52,9.2,5 +9.0,0.58,0.25,2.8,0.075,9.0,104.0,0.99779,3.23,0.57,9.7,5 +9.3,0.655,0.26,2.0,0.096,5.0,35.0,0.9973799999999999,3.25,0.42,9.6,5 +8.8,0.7,0.0,1.7,0.069,8.0,19.0,0.9970100000000001,3.31,0.53,10.0,6 +9.3,0.655,0.26,2.0,0.096,5.0,35.0,0.9973799999999999,3.25,0.42,9.6,5 +9.1,0.68,0.11,2.8,0.09300000000000001,11.0,44.0,0.9988799999999999,3.31,0.55,9.5,6 +9.2,0.67,0.1,3.0,0.091,12.0,48.0,0.9988799999999999,3.31,0.54,9.5,6 +8.8,0.59,0.18,2.9,0.08900000000000001,12.0,74.0,0.9973799999999999,3.14,0.54,9.4,5 +7.5,0.6,0.32,2.7,0.10300000000000001,13.0,98.0,0.9993799999999999,3.45,0.62,9.5,5 +7.1,0.59,0.02,2.3,0.08199999999999999,24.0,94.0,0.99744,3.55,0.53,9.7,6 +7.9,0.72,0.01,1.9,0.076,7.0,32.0,0.9966799999999999,3.39,0.54,9.6,5 +7.1,0.59,0.02,2.3,0.08199999999999999,24.0,94.0,0.99744,3.55,0.53,9.7,6 +9.4,0.685,0.26,2.4,0.08199999999999999,23.0,143.0,0.9978,3.28,0.55,9.4,5 +9.5,0.57,0.27,2.3,0.08199999999999999,23.0,144.0,0.99782,3.27,0.55,9.4,5 +7.9,0.4,0.29,1.8,0.157,1.0,44.0,0.9973,3.3,0.92,9.5,6 +7.9,0.4,0.3,1.8,0.157,2.0,45.0,0.9972700000000001,3.31,0.91,9.5,6 +7.2,1.0,0.0,3.0,0.102,7.0,16.0,0.9958600000000001,3.43,0.46,10.0,5 +6.9,0.765,0.18,2.4,0.243,5.5,48.0,0.9961200000000001,3.4,0.6,10.3,6 +6.9,0.635,0.17,2.4,0.24100000000000002,6.0,18.0,0.9961,3.4,0.59,10.3,6 +8.3,0.43,0.3,3.4,0.079,7.0,34.0,0.9978799999999999,3.36,0.61,10.5,5 +7.1,0.52,0.03,2.6,0.076,21.0,92.0,0.99745,3.5,0.6,9.8,5 +7.0,0.57,0.0,2.0,0.19,12.0,45.0,0.9967600000000001,3.31,0.6,9.4,6 +6.5,0.46,0.14,2.4,0.114,9.0,37.0,0.9973200000000001,3.66,0.65,9.8,5 +9.0,0.82,0.05,2.4,0.081,26.0,96.0,0.9981399999999999,3.36,0.53,10.0,5 +6.5,0.46,0.14,2.4,0.114,9.0,37.0,0.9973200000000001,3.66,0.65,9.8,5 +7.1,0.59,0.01,2.5,0.077,20.0,85.0,0.99746,3.55,0.59,9.8,5 +9.9,0.35,0.41,2.3,0.083,11.0,61.0,0.9982,3.21,0.5,9.5,5 +9.9,0.35,0.41,2.3,0.083,11.0,61.0,0.9982,3.21,0.5,9.5,5 +10.0,0.56,0.24,2.2,0.079,19.0,58.0,0.9991,3.18,0.56,10.1,6 +10.0,0.56,0.24,2.2,0.079,19.0,58.0,0.9991,3.18,0.56,10.1,6 +8.6,0.63,0.17,2.9,0.099,21.0,119.0,0.998,3.09,0.52,9.3,5 +7.4,0.37,0.43,2.6,0.08199999999999999,18.0,82.0,0.99708,3.33,0.68,9.7,6 +8.8,0.64,0.17,2.9,0.084,25.0,130.0,0.99818,3.23,0.54,9.6,5 +7.1,0.61,0.02,2.5,0.081,17.0,87.0,0.99745,3.48,0.6,9.7,6 +7.7,0.6,0.0,2.6,0.055,7.0,13.0,0.99639,3.38,0.56,10.8,5 +10.1,0.27,0.54,2.3,0.065,7.0,26.0,0.99531,3.17,0.53,12.5,6 +10.8,0.89,0.3,2.6,0.132,7.0,60.0,0.9978600000000001,2.99,1.18,10.2,5 +8.7,0.46,0.31,2.5,0.126,24.0,64.0,0.99746,3.1,0.74,9.6,5 +9.3,0.37,0.44,1.6,0.038,21.0,42.0,0.99526,3.24,0.81,10.8,7 +9.4,0.5,0.34,3.6,0.08199999999999999,5.0,14.0,0.9987,3.29,0.52,10.7,6 +9.4,0.5,0.34,3.6,0.08199999999999999,5.0,14.0,0.9987,3.29,0.52,10.7,6 +7.2,0.61,0.08,4.0,0.08199999999999999,26.0,108.0,0.99641,3.25,0.51,9.4,5 +8.6,0.55,0.09,3.3,0.068,8.0,17.0,0.99735,3.23,0.44,10.0,5 +5.1,0.585,0.0,1.7,0.044000000000000004,14.0,86.0,0.99264,3.56,0.94,12.9,7 +7.7,0.56,0.08,2.5,0.114,14.0,46.0,0.9971,3.24,0.66,9.6,6 +8.4,0.52,0.22,2.7,0.084,4.0,18.0,0.99682,3.26,0.57,9.9,6 +8.2,0.28,0.4,2.4,0.052000000000000005,4.0,10.0,0.99356,3.33,0.7,12.8,7 +8.4,0.25,0.39,2.0,0.040999999999999995,4.0,10.0,0.9938600000000001,3.27,0.71,12.5,7 +8.2,0.28,0.4,2.4,0.052000000000000005,4.0,10.0,0.99356,3.33,0.7,12.8,7 +7.4,0.53,0.12,1.9,0.165,4.0,12.0,0.99702,3.26,0.86,9.2,5 +7.6,0.48,0.31,2.8,0.07,4.0,15.0,0.9969299999999999,3.22,0.55,10.3,6 +7.3,0.49,0.1,2.6,0.068,4.0,14.0,0.9956200000000001,3.3,0.47,10.5,5 +12.9,0.5,0.55,2.8,0.07200000000000001,7.0,24.0,1.0001200000000001,3.09,0.68,10.9,6 +10.8,0.45,0.33,2.5,0.099,20.0,38.0,0.99818,3.24,0.71,10.8,5 +6.9,0.39,0.24,2.1,0.102,4.0,7.0,0.9946200000000001,3.44,0.58,11.4,4 +12.6,0.41,0.54,2.8,0.10300000000000001,19.0,41.0,0.99939,3.21,0.76,11.3,6 +10.8,0.45,0.33,2.5,0.099,20.0,38.0,0.99818,3.24,0.71,10.8,5 +9.8,0.51,0.19,3.2,0.081,8.0,30.0,0.9984,3.23,0.58,10.5,6 +10.8,0.29,0.42,1.6,0.084,19.0,27.0,0.99545,3.28,0.73,11.9,6 +7.1,0.715,0.0,2.35,0.071,21.0,47.0,0.9963200000000001,3.29,0.45,9.4,5 +9.1,0.66,0.15,3.2,0.09699999999999999,9.0,59.0,0.99976,3.28,0.54,9.6,5 +7.0,0.685,0.0,1.9,0.099,9.0,22.0,0.9960600000000001,3.34,0.6,9.7,5 +4.9,0.42,0.0,2.1,0.048,16.0,42.0,0.99154,3.71,0.74,14.0,7 +6.7,0.54,0.13,2.0,0.076,15.0,36.0,0.9973,3.61,0.64,9.8,5 +6.7,0.54,0.13,2.0,0.076,15.0,36.0,0.9973,3.61,0.64,9.8,5 +7.1,0.48,0.28,2.8,0.068,6.0,16.0,0.99682,3.24,0.53,10.3,5 +7.1,0.46,0.14,2.8,0.076,15.0,37.0,0.99624,3.36,0.49,10.7,5 +7.5,0.27,0.34,2.3,0.05,4.0,8.0,0.9951,3.4,0.64,11.0,7 +7.1,0.46,0.14,2.8,0.076,15.0,37.0,0.99624,3.36,0.49,10.7,5 +7.8,0.57,0.09,2.3,0.065,34.0,45.0,0.9941700000000001,3.46,0.74,12.7,8 +5.9,0.61,0.08,2.1,0.071,16.0,24.0,0.9937600000000001,3.56,0.77,11.1,6 +7.5,0.685,0.07,2.5,0.057999999999999996,5.0,9.0,0.9963200000000001,3.38,0.55,10.9,4 +5.9,0.61,0.08,2.1,0.071,16.0,24.0,0.9937600000000001,3.56,0.77,11.1,6 +10.4,0.44,0.42,1.5,0.145,34.0,48.0,0.9983200000000001,3.38,0.86,9.9,3 +11.6,0.47,0.44,1.6,0.147,36.0,51.0,0.99836,3.38,0.86,9.9,4 +8.8,0.685,0.26,1.6,0.08800000000000001,16.0,23.0,0.9969399999999999,3.32,0.47,9.4,5 +7.6,0.665,0.1,1.5,0.066,27.0,55.0,0.99655,3.39,0.51,9.3,5 +6.7,0.28,0.28,2.4,0.012,36.0,100.0,0.99064,3.26,0.39,11.7,7 +6.7,0.28,0.28,2.4,0.012,36.0,100.0,0.99064,3.26,0.39,11.7,7 +10.1,0.31,0.35,1.6,0.075,9.0,28.0,0.99672,3.24,0.83,11.2,7 +6.0,0.5,0.04,2.2,0.092,13.0,26.0,0.9964700000000001,3.46,0.47,10.0,5 +11.1,0.42,0.47,2.65,0.085,9.0,34.0,0.99736,3.24,0.77,12.1,7 +6.6,0.66,0.0,3.0,0.115,21.0,31.0,0.99629,3.45,0.63,10.3,5 +10.6,0.5,0.45,2.6,0.11900000000000001,34.0,68.0,0.99708,3.23,0.72,10.9,6 +7.1,0.685,0.35,2.0,0.08800000000000001,9.0,92.0,0.9963,3.28,0.62,9.4,5 +9.9,0.25,0.46,1.7,0.062,26.0,42.0,0.9959,3.18,0.83,10.6,6 +6.4,0.64,0.21,1.8,0.081,14.0,31.0,0.9968899999999999,3.59,0.66,9.8,5 +6.4,0.64,0.21,1.8,0.081,14.0,31.0,0.9968899999999999,3.59,0.66,9.8,5 +7.4,0.68,0.16,1.8,0.078,12.0,39.0,0.9977,3.5,0.7,9.9,6 +6.4,0.64,0.21,1.8,0.081,14.0,31.0,0.9968899999999999,3.59,0.66,9.8,5 +6.4,0.63,0.21,1.6,0.08,12.0,32.0,0.9968899999999999,3.58,0.66,9.8,5 +9.3,0.43,0.44,1.9,0.085,9.0,22.0,0.99708,3.28,0.55,9.5,5 +9.3,0.43,0.44,1.9,0.085,9.0,22.0,0.99708,3.28,0.55,9.5,5 +8.0,0.42,0.32,2.5,0.08,26.0,122.0,0.9980100000000001,3.22,1.07,9.7,5 +9.3,0.36,0.39,1.5,0.08,41.0,55.0,0.9965200000000001,3.47,0.73,10.9,6 +9.3,0.36,0.39,1.5,0.08,41.0,55.0,0.9965200000000001,3.47,0.73,10.9,6 +7.6,0.735,0.02,2.5,0.071,10.0,14.0,0.9953799999999999,3.51,0.71,11.7,7 +9.3,0.36,0.39,1.5,0.08,41.0,55.0,0.9965200000000001,3.47,0.73,10.9,6 +8.2,0.26,0.34,2.5,0.073,16.0,47.0,0.9959399999999999,3.4,0.78,11.3,7 +11.7,0.28,0.47,1.7,0.054000000000000006,17.0,32.0,0.9968600000000001,3.15,0.67,10.6,7 +6.8,0.56,0.22,1.8,0.07400000000000001,15.0,24.0,0.9943799999999999,3.4,0.82,11.2,6 +7.2,0.62,0.06,2.7,0.077,15.0,85.0,0.99746,3.51,0.54,9.5,5 +5.8,1.01,0.66,2.0,0.039,15.0,88.0,0.9935700000000001,3.66,0.6,11.5,6 +7.5,0.42,0.32,2.7,0.067,7.0,25.0,0.9962799999999999,3.24,0.44,10.4,5 +7.2,0.62,0.06,2.5,0.078,17.0,84.0,0.99746,3.51,0.53,9.7,5 +7.2,0.62,0.06,2.7,0.077,15.0,85.0,0.99746,3.51,0.54,9.5,5 +7.2,0.635,0.07,2.6,0.077,16.0,86.0,0.9974799999999999,3.51,0.54,9.7,5 +6.8,0.49,0.22,2.3,0.071,13.0,24.0,0.9943799999999999,3.41,0.83,11.3,6 +6.9,0.51,0.23,2.0,0.07200000000000001,13.0,22.0,0.9943799999999999,3.4,0.84,11.2,6 +6.8,0.56,0.22,1.8,0.07400000000000001,15.0,24.0,0.9943799999999999,3.4,0.82,11.2,6 +7.6,0.63,0.03,2.0,0.08,27.0,43.0,0.9957799999999999,3.44,0.64,10.9,6 +7.7,0.715,0.01,2.1,0.064,31.0,43.0,0.99371,3.41,0.57,11.8,6 +6.9,0.56,0.03,1.5,0.086,36.0,46.0,0.9952200000000001,3.53,0.57,10.6,5 +7.3,0.35,0.24,2.0,0.067,28.0,48.0,0.9957600000000001,3.43,0.54,10.0,4 +9.1,0.21,0.37,1.6,0.067,6.0,10.0,0.9955200000000001,3.23,0.58,11.1,7 +10.4,0.38,0.46,2.1,0.10400000000000001,6.0,10.0,0.99664,3.12,0.65,11.8,7 +8.8,0.31,0.4,2.8,0.109,7.0,16.0,0.9961399999999999,3.31,0.79,11.8,7 +7.1,0.47,0.0,2.2,0.067,7.0,14.0,0.9951700000000001,3.4,0.58,10.9,4 +7.7,0.715,0.01,2.1,0.064,31.0,43.0,0.99371,3.41,0.57,11.8,6 +8.8,0.61,0.19,4.0,0.094,30.0,69.0,0.99787,3.22,0.5,10.0,6 +7.2,0.6,0.04,2.5,0.076,18.0,88.0,0.99745,3.53,0.55,9.5,5 +9.2,0.56,0.18,1.6,0.078,10.0,21.0,0.9957600000000001,3.15,0.49,9.9,5 +7.6,0.715,0.0,2.1,0.068,30.0,35.0,0.9953299999999999,3.48,0.65,11.4,6 +8.4,0.31,0.29,3.1,0.19399999999999998,14.0,26.0,0.99536,3.22,0.78,12.0,6 +7.2,0.6,0.04,2.5,0.076,18.0,88.0,0.99745,3.53,0.55,9.5,5 +8.8,0.61,0.19,4.0,0.094,30.0,69.0,0.99787,3.22,0.5,10.0,6 +8.9,0.75,0.14,2.5,0.086,9.0,30.0,0.99824,3.34,0.64,10.5,5 +9.0,0.8,0.12,2.4,0.083,8.0,28.0,0.99836,3.33,0.65,10.4,6 +10.7,0.52,0.38,2.6,0.066,29.0,56.0,0.99577,3.15,0.79,12.1,7 +6.8,0.57,0.0,2.5,0.07200000000000001,32.0,64.0,0.9949100000000001,3.43,0.56,11.2,6 +10.7,0.9,0.34,6.6,0.11199999999999999,23.0,99.0,1.00289,3.22,0.68,9.3,5 +7.2,0.34,0.24,2.0,0.071,30.0,52.0,0.9957600000000001,3.44,0.58,10.1,5 +7.2,0.66,0.03,2.3,0.078,16.0,86.0,0.9974299999999999,3.53,0.57,9.7,5 +10.1,0.45,0.23,1.9,0.08199999999999999,10.0,18.0,0.99774,3.22,0.65,9.3,6 +7.2,0.66,0.03,2.3,0.078,16.0,86.0,0.9974299999999999,3.53,0.57,9.7,5 +7.2,0.63,0.03,2.2,0.08,17.0,88.0,0.99745,3.53,0.58,9.8,6 +7.1,0.59,0.01,2.3,0.08,27.0,43.0,0.9955,3.42,0.58,10.7,6 +8.3,0.31,0.39,2.4,0.078,17.0,43.0,0.99444,3.31,0.77,12.5,7 +7.1,0.59,0.01,2.3,0.08,27.0,43.0,0.9955,3.42,0.58,10.7,6 +8.3,0.31,0.39,2.4,0.078,17.0,43.0,0.99444,3.31,0.77,12.5,7 +8.3,1.02,0.02,3.4,0.084,6.0,11.0,0.99892,3.48,0.49,11.0,3 +8.9,0.31,0.36,2.6,0.055999999999999994,10.0,39.0,0.9956200000000001,3.4,0.69,11.8,5 +7.4,0.635,0.1,2.4,0.08,16.0,33.0,0.99736,3.58,0.69,10.8,7 +7.4,0.635,0.1,2.4,0.08,16.0,33.0,0.99736,3.58,0.69,10.8,7 +6.8,0.59,0.06,6.0,0.06,11.0,18.0,0.9962,3.41,0.59,10.8,7 +6.8,0.59,0.06,6.0,0.06,11.0,18.0,0.9962,3.41,0.59,10.8,7 +9.2,0.58,0.2,3.0,0.081,15.0,115.0,0.998,3.23,0.59,9.5,5 +7.2,0.54,0.27,2.6,0.084,12.0,78.0,0.9964,3.39,0.71,11.0,5 +6.1,0.56,0.0,2.2,0.079,6.0,9.0,0.9948,3.59,0.54,11.5,6 +7.4,0.52,0.13,2.4,0.078,34.0,61.0,0.9952799999999999,3.43,0.59,10.8,6 +7.3,0.305,0.39,1.2,0.059000000000000004,7.0,11.0,0.99331,3.29,0.52,11.5,6 +9.3,0.38,0.48,3.8,0.132,3.0,11.0,0.99577,3.23,0.57,13.2,6 +9.1,0.28,0.46,9.0,0.114,3.0,9.0,0.9990100000000001,3.18,0.6,10.9,6 +10.0,0.46,0.44,2.9,0.065,4.0,8.0,0.99674,3.33,0.62,12.2,6 +9.4,0.395,0.46,4.6,0.094,3.0,10.0,0.99639,3.27,0.64,12.2,7 +7.3,0.305,0.39,1.2,0.059000000000000004,7.0,11.0,0.99331,3.29,0.52,11.5,6 +8.6,0.315,0.4,2.2,0.079,3.0,6.0,0.9951200000000001,3.27,0.67,11.9,6 +5.3,0.715,0.19,1.5,0.161,7.0,62.0,0.99395,3.62,0.61,11.0,5 +6.8,0.41,0.31,8.8,0.084,26.0,45.0,0.99824,3.38,0.64,10.1,6 +8.4,0.36,0.32,2.2,0.081,32.0,79.0,0.9964,3.3,0.72,11.0,6 +8.4,0.62,0.12,1.8,0.07200000000000001,38.0,46.0,0.9950399999999999,3.38,0.89,11.8,6 +9.6,0.41,0.37,2.3,0.091,10.0,23.0,0.9978600000000001,3.24,0.56,10.5,5 +8.4,0.36,0.32,2.2,0.081,32.0,79.0,0.9964,3.3,0.72,11.0,6 +8.4,0.62,0.12,1.8,0.07200000000000001,38.0,46.0,0.9950399999999999,3.38,0.89,11.8,6 +6.8,0.41,0.31,8.8,0.084,26.0,45.0,0.99824,3.38,0.64,10.1,6 +8.6,0.47,0.27,2.3,0.055,14.0,28.0,0.99516,3.18,0.8,11.2,5 +8.6,0.22,0.36,1.9,0.064,53.0,77.0,0.9960399999999999,3.47,0.87,11.0,7 +9.4,0.24,0.33,2.3,0.061,52.0,73.0,0.9978600000000001,3.47,0.9,10.2,6 +8.4,0.67,0.19,2.2,0.09300000000000001,11.0,75.0,0.99736,3.2,0.59,9.2,4 +8.6,0.47,0.27,2.3,0.055,14.0,28.0,0.99516,3.18,0.8,11.2,5 +8.7,0.33,0.38,3.3,0.063,10.0,19.0,0.9946799999999999,3.3,0.73,12.0,7 +6.6,0.61,0.01,1.9,0.08,8.0,25.0,0.99746,3.69,0.73,10.5,5 +7.4,0.61,0.01,2.0,0.07400000000000001,13.0,38.0,0.9974799999999999,3.48,0.65,9.8,5 +7.6,0.4,0.29,1.9,0.078,29.0,66.0,0.9971,3.45,0.59,9.5,6 +7.4,0.61,0.01,2.0,0.07400000000000001,13.0,38.0,0.9974799999999999,3.48,0.65,9.8,5 +6.6,0.61,0.01,1.9,0.08,8.0,25.0,0.99746,3.69,0.73,10.5,5 +8.8,0.3,0.38,2.3,0.06,19.0,72.0,0.9954299999999999,3.39,0.72,11.8,6 +8.8,0.3,0.38,2.3,0.06,19.0,72.0,0.9954299999999999,3.39,0.72,11.8,6 +12.0,0.63,0.5,1.4,0.071,6.0,26.0,0.9979100000000001,3.07,0.6,10.4,4 +7.2,0.38,0.38,2.8,0.068,23.0,42.0,0.99356,3.34,0.72,12.9,7 +6.2,0.46,0.17,1.6,0.073,7.0,11.0,0.99425,3.61,0.54,11.4,5 +9.6,0.33,0.52,2.2,0.07400000000000001,13.0,25.0,0.9950899999999999,3.36,0.76,12.4,7 +9.9,0.27,0.49,5.0,0.08199999999999999,9.0,17.0,0.99484,3.19,0.52,12.5,7 +10.1,0.43,0.4,2.6,0.092,13.0,52.0,0.99834,3.22,0.64,10.0,7 +9.8,0.5,0.34,2.3,0.094,10.0,45.0,0.99864,3.24,0.6,9.7,7 +8.3,0.3,0.49,3.8,0.09,11.0,24.0,0.99498,3.27,0.64,12.1,7 +10.2,0.44,0.42,2.0,0.071,7.0,20.0,0.99566,3.14,0.79,11.1,7 +10.2,0.44,0.58,4.1,0.092,11.0,24.0,0.99745,3.29,0.99,12.0,7 +8.3,0.28,0.48,2.1,0.09300000000000001,6.0,12.0,0.99408,3.26,0.62,12.4,7 +8.9,0.12,0.45,1.8,0.075,10.0,21.0,0.9955200000000001,3.41,0.76,11.9,7 +8.9,0.12,0.45,1.8,0.075,10.0,21.0,0.9955200000000001,3.41,0.76,11.9,7 +8.9,0.12,0.45,1.8,0.075,10.0,21.0,0.9955200000000001,3.41,0.76,11.9,7 +8.3,0.28,0.48,2.1,0.09300000000000001,6.0,12.0,0.99408,3.26,0.62,12.4,7 +8.2,0.31,0.4,2.2,0.057999999999999996,6.0,10.0,0.99536,3.31,0.68,11.2,7 +10.2,0.34,0.48,2.1,0.052000000000000005,5.0,9.0,0.9945799999999999,3.2,0.69,12.1,7 +7.6,0.43,0.4,2.7,0.08199999999999999,6.0,11.0,0.9953799999999999,3.44,0.54,12.2,6 +8.5,0.21,0.52,1.9,0.09,9.0,23.0,0.9964799999999999,3.36,0.67,10.4,5 +9.0,0.36,0.52,2.1,0.111,5.0,10.0,0.9956799999999999,3.31,0.62,11.3,6 +9.5,0.37,0.52,2.0,0.08800000000000001,12.0,51.0,0.99613,3.29,0.58,11.1,6 +6.4,0.57,0.12,2.3,0.12,25.0,36.0,0.99519,3.47,0.71,11.3,7 +8.0,0.59,0.05,2.0,0.08900000000000001,12.0,32.0,0.99735,3.36,0.61,10.0,5 +8.5,0.47,0.27,1.9,0.057999999999999996,18.0,38.0,0.99518,3.16,0.85,11.1,6 +7.1,0.56,0.14,1.6,0.078,7.0,18.0,0.99592,3.27,0.62,9.3,5 +6.6,0.57,0.02,2.1,0.115,6.0,16.0,0.99654,3.38,0.69,9.5,5 +8.8,0.27,0.39,2.0,0.1,20.0,27.0,0.99546,3.15,0.69,11.2,6 +8.5,0.47,0.27,1.9,0.057999999999999996,18.0,38.0,0.99518,3.16,0.85,11.1,6 +8.3,0.34,0.4,2.4,0.065,24.0,48.0,0.99554,3.34,0.86,11.0,6 +9.0,0.38,0.41,2.4,0.10300000000000001,6.0,10.0,0.9960399999999999,3.13,0.58,11.9,7 +8.5,0.66,0.2,2.1,0.09699999999999999,23.0,113.0,0.9973299999999999,3.13,0.48,9.2,5 +9.0,0.4,0.43,2.4,0.068,29.0,46.0,0.9943,3.2,0.6,12.2,6 +6.7,0.56,0.09,2.9,0.079,7.0,22.0,0.99669,3.46,0.61,10.2,5 +10.4,0.26,0.48,1.9,0.066,6.0,10.0,0.99724,3.33,0.87,10.9,6 +10.4,0.26,0.48,1.9,0.066,6.0,10.0,0.99724,3.33,0.87,10.9,6 +10.1,0.38,0.5,2.4,0.10400000000000001,6.0,13.0,0.9964299999999999,3.22,0.65,11.6,7 +8.5,0.34,0.44,1.7,0.079,6.0,12.0,0.99605,3.52,0.63,10.7,5 +8.8,0.33,0.41,5.9,0.073,7.0,13.0,0.9965799999999999,3.3,0.62,12.1,7 +7.2,0.41,0.3,2.1,0.083,35.0,72.0,0.997,3.44,0.52,9.4,5 +7.2,0.41,0.3,2.1,0.083,35.0,72.0,0.997,3.44,0.52,9.4,5 +8.4,0.59,0.29,2.6,0.109,31.0,119.0,0.9980100000000001,3.15,0.5,9.1,5 +7.0,0.4,0.32,3.6,0.061,9.0,29.0,0.99416,3.28,0.49,11.3,7 +12.2,0.45,0.49,1.4,0.075,3.0,6.0,0.9969,3.13,0.63,10.4,5 +9.1,0.5,0.3,1.9,0.065,8.0,17.0,0.99774,3.32,0.71,10.5,6 +9.5,0.86,0.26,1.9,0.079,13.0,28.0,0.9971200000000001,3.25,0.62,10.0,5 +7.3,0.52,0.32,2.1,0.07,51.0,70.0,0.99418,3.34,0.82,12.9,6 +9.1,0.5,0.3,1.9,0.065,8.0,17.0,0.99774,3.32,0.71,10.5,6 +12.2,0.45,0.49,1.4,0.075,3.0,6.0,0.9969,3.13,0.63,10.4,5 +7.4,0.58,0.0,2.0,0.064,7.0,11.0,0.9956200000000001,3.45,0.58,11.3,6 +9.8,0.34,0.39,1.4,0.066,3.0,7.0,0.9947,3.19,0.55,11.4,7 +7.1,0.36,0.3,1.6,0.08,35.0,70.0,0.9969299999999999,3.44,0.5,9.4,5 +7.7,0.39,0.12,1.7,0.09699999999999999,19.0,27.0,0.9959600000000001,3.16,0.49,9.4,5 +9.7,0.295,0.4,1.5,0.073,14.0,21.0,0.99556,3.14,0.51,10.9,6 +7.7,0.39,0.12,1.7,0.09699999999999999,19.0,27.0,0.9959600000000001,3.16,0.49,9.4,5 +7.1,0.34,0.28,2.0,0.08199999999999999,31.0,68.0,0.9969399999999999,3.45,0.48,9.4,5 +6.5,0.4,0.1,2.0,0.076,30.0,47.0,0.99554,3.36,0.48,9.4,6 +7.1,0.34,0.28,2.0,0.08199999999999999,31.0,68.0,0.9969399999999999,3.45,0.48,9.4,5 +10.0,0.35,0.45,2.5,0.092,20.0,88.0,0.99918,3.15,0.43,9.4,5 +7.7,0.6,0.06,2.0,0.079,19.0,41.0,0.99697,3.39,0.62,10.1,6 +5.6,0.66,0.0,2.2,0.087,3.0,11.0,0.9937799999999999,3.71,0.63,12.8,7 +5.6,0.66,0.0,2.2,0.087,3.0,11.0,0.9937799999999999,3.71,0.63,12.8,7 +8.9,0.84,0.34,1.4,0.05,4.0,10.0,0.99554,3.12,0.48,9.1,6 +6.4,0.69,0.0,1.65,0.055,7.0,12.0,0.9916200000000001,3.47,0.53,12.9,6 +7.5,0.43,0.3,2.2,0.062,6.0,12.0,0.99495,3.44,0.72,11.5,7 +9.9,0.35,0.38,1.5,0.057999999999999996,31.0,47.0,0.9967600000000001,3.26,0.82,10.6,7 +9.1,0.29,0.33,2.05,0.063,13.0,27.0,0.99516,3.26,0.84,11.7,7 +6.8,0.36,0.32,1.8,0.067,4.0,8.0,0.9928,3.36,0.55,12.8,7 +8.2,0.43,0.29,1.6,0.081,27.0,45.0,0.99603,3.25,0.54,10.3,5 +6.8,0.36,0.32,1.8,0.067,4.0,8.0,0.9928,3.36,0.55,12.8,7 +9.1,0.29,0.33,2.05,0.063,13.0,27.0,0.99516,3.26,0.84,11.7,7 +9.1,0.3,0.34,2.0,0.064,12.0,25.0,0.99516,3.26,0.84,11.7,7 +8.9,0.35,0.4,3.6,0.11,12.0,24.0,0.99549,3.23,0.7,12.0,7 +9.6,0.5,0.36,2.8,0.11599999999999999,26.0,55.0,0.9972200000000001,3.18,0.68,10.9,5 +8.9,0.28,0.45,1.7,0.067,7.0,12.0,0.99354,3.25,0.55,12.3,7 +8.9,0.32,0.31,2.0,0.08800000000000001,12.0,19.0,0.9957,3.17,0.55,10.4,6 +7.7,1.005,0.15,2.1,0.102,11.0,32.0,0.9960399999999999,3.23,0.48,10.0,5 +7.5,0.71,0.0,1.6,0.092,22.0,31.0,0.99635,3.38,0.58,10.0,6 +8.0,0.58,0.16,2.0,0.12,3.0,7.0,0.99454,3.22,0.58,11.2,6 +10.5,0.39,0.46,2.2,0.075,14.0,27.0,0.99598,3.06,0.84,11.4,6 +8.9,0.38,0.4,2.2,0.068,12.0,28.0,0.9948600000000001,3.27,0.75,12.6,7 +8.0,0.18,0.37,0.9,0.049,36.0,109.0,0.9900700000000001,2.89,0.44,12.7,6 +8.0,0.18,0.37,0.9,0.049,36.0,109.0,0.9900700000000001,2.89,0.44,12.7,6 +7.0,0.5,0.14,1.8,0.078,10.0,23.0,0.99636,3.53,0.61,10.4,5 +11.3,0.36,0.66,2.4,0.12300000000000001,3.0,8.0,0.9964200000000001,3.2,0.53,11.9,6 +11.3,0.36,0.66,2.4,0.12300000000000001,3.0,8.0,0.9964200000000001,3.2,0.53,11.9,6 +7.0,0.51,0.09,2.1,0.062,4.0,9.0,0.99584,3.35,0.54,10.5,5 +8.2,0.32,0.42,2.3,0.098,3.0,9.0,0.9950600000000001,3.27,0.55,12.3,6 +7.7,0.58,0.01,1.8,0.08800000000000001,12.0,18.0,0.9956799999999999,3.32,0.56,10.5,7 +8.6,0.83,0.0,2.8,0.095,17.0,43.0,0.9982200000000001,3.33,0.6,10.4,6 +7.9,0.31,0.32,1.9,0.066,14.0,36.0,0.99364,3.41,0.56,12.6,6 +6.4,0.795,0.0,2.2,0.065,28.0,52.0,0.9937799999999999,3.49,0.52,11.6,5 +7.2,0.34,0.21,2.5,0.075,41.0,68.0,0.9958600000000001,3.37,0.54,10.1,6 +7.7,0.58,0.01,1.8,0.08800000000000001,12.0,18.0,0.9956799999999999,3.32,0.56,10.5,7 +7.1,0.59,0.0,2.1,0.091,9.0,14.0,0.9948799999999999,3.42,0.55,11.5,7 +7.3,0.55,0.01,1.8,0.09300000000000001,9.0,15.0,0.9951399999999999,3.35,0.58,11.0,7 +8.1,0.82,0.0,4.1,0.095,5.0,14.0,0.99854,3.36,0.53,9.6,5 +7.5,0.57,0.08,2.6,0.08900000000000001,14.0,27.0,0.99592,3.3,0.59,10.4,6 +8.9,0.745,0.18,2.5,0.077,15.0,48.0,0.99739,3.2,0.47,9.7,6 +10.1,0.37,0.34,2.4,0.085,5.0,17.0,0.9968299999999999,3.17,0.65,10.6,7 +7.6,0.31,0.34,2.5,0.08199999999999999,26.0,35.0,0.99356,3.22,0.59,12.5,7 +7.3,0.91,0.1,1.8,0.07400000000000001,20.0,56.0,0.99672,3.35,0.56,9.2,5 +8.7,0.41,0.41,6.2,0.078,25.0,42.0,0.9953,3.24,0.77,12.6,7 +8.9,0.5,0.21,2.2,0.08800000000000001,21.0,39.0,0.99692,3.33,0.83,11.1,6 +7.4,0.965,0.0,2.2,0.08800000000000001,16.0,32.0,0.99756,3.58,0.67,10.2,5 +6.9,0.49,0.19,1.7,0.079,13.0,26.0,0.9954700000000001,3.38,0.64,9.8,6 +8.9,0.5,0.21,2.2,0.08800000000000001,21.0,39.0,0.99692,3.33,0.83,11.1,6 +9.5,0.39,0.41,8.9,0.069,18.0,39.0,0.99859,3.29,0.81,10.9,7 +6.4,0.39,0.33,3.3,0.046,12.0,53.0,0.9929399999999999,3.36,0.62,12.2,6 +6.9,0.44,0.0,1.4,0.07,32.0,38.0,0.9943799999999999,3.32,0.58,11.4,6 +7.6,0.78,0.0,1.7,0.076,33.0,45.0,0.9961200000000001,3.31,0.62,10.7,6 +7.1,0.43,0.17,1.8,0.08199999999999999,27.0,51.0,0.99634,3.49,0.64,10.4,5 +9.3,0.49,0.36,1.7,0.081,3.0,14.0,0.99702,3.27,0.78,10.9,6 +9.3,0.5,0.36,1.8,0.084,6.0,17.0,0.9970399999999999,3.27,0.77,10.8,6 +7.1,0.43,0.17,1.8,0.08199999999999999,27.0,51.0,0.99634,3.49,0.64,10.4,5 +8.5,0.46,0.59,1.4,0.414,16.0,45.0,0.99702,3.03,1.34,9.2,5 +5.6,0.605,0.05,2.4,0.073,19.0,25.0,0.9925799999999999,3.56,0.55,12.9,5 +8.3,0.33,0.42,2.3,0.07,9.0,20.0,0.99426,3.38,0.77,12.7,7 +8.2,0.64,0.27,2.0,0.095,5.0,77.0,0.9974700000000001,3.13,0.62,9.1,6 +8.2,0.64,0.27,2.0,0.095,5.0,77.0,0.9974700000000001,3.13,0.62,9.1,6 +8.9,0.48,0.53,4.0,0.10099999999999999,3.0,10.0,0.9958600000000001,3.21,0.59,12.1,7 +7.6,0.42,0.25,3.9,0.10400000000000001,28.0,90.0,0.99784,3.15,0.57,9.1,5 +9.9,0.53,0.57,2.4,0.09300000000000001,30.0,52.0,0.9971,3.19,0.76,11.6,7 +8.9,0.48,0.53,4.0,0.10099999999999999,3.0,10.0,0.9958600000000001,3.21,0.59,12.1,7 +11.6,0.23,0.57,1.8,0.07400000000000001,3.0,8.0,0.9981,3.14,0.7,9.9,6 +9.1,0.4,0.5,1.8,0.071,7.0,16.0,0.9946200000000001,3.21,0.69,12.5,8 +8.0,0.38,0.44,1.9,0.098,6.0,15.0,0.9956,3.3,0.64,11.4,6 +10.2,0.29,0.65,2.4,0.075,6.0,17.0,0.99565,3.22,0.63,11.8,6 +8.2,0.74,0.09,2.0,0.067,5.0,10.0,0.99418,3.28,0.57,11.8,6 +7.7,0.61,0.18,2.4,0.083,6.0,20.0,0.9963,3.29,0.6,10.2,6 +6.6,0.52,0.08,2.4,0.07,13.0,26.0,0.9935799999999999,3.4,0.72,12.5,7 +11.1,0.31,0.53,2.2,0.06,3.0,10.0,0.99572,3.02,0.83,10.9,7 +11.1,0.31,0.53,2.2,0.06,3.0,10.0,0.99572,3.02,0.83,10.9,7 +8.0,0.62,0.35,2.8,0.086,28.0,52.0,0.997,3.31,0.62,10.8,5 +9.3,0.33,0.45,1.5,0.057,19.0,37.0,0.99498,3.18,0.89,11.1,7 +7.5,0.77,0.2,8.1,0.098,30.0,92.0,0.99892,3.2,0.58,9.2,5 +7.2,0.35,0.26,1.8,0.083,33.0,75.0,0.9968,3.4,0.58,9.5,6 +8.0,0.62,0.33,2.7,0.08800000000000001,16.0,37.0,0.9972,3.31,0.58,10.7,6 +7.5,0.77,0.2,8.1,0.098,30.0,92.0,0.99892,3.2,0.58,9.2,5 +9.1,0.25,0.34,2.0,0.071,45.0,67.0,0.99769,3.44,0.86,10.2,7 +9.9,0.32,0.56,2.0,0.073,3.0,8.0,0.99534,3.15,0.73,11.4,6 +8.6,0.37,0.65,6.4,0.08,3.0,8.0,0.9981700000000001,3.27,0.58,11.0,5 +8.6,0.37,0.65,6.4,0.08,3.0,8.0,0.9981700000000001,3.27,0.58,11.0,5 +7.9,0.3,0.68,8.3,0.05,37.5,278.0,0.99316,3.01,0.51,12.3,7 +10.3,0.27,0.56,1.4,0.047,3.0,8.0,0.99471,3.16,0.51,11.8,6 +7.9,0.3,0.68,8.3,0.05,37.5,289.0,0.99316,3.01,0.51,12.3,7 +7.2,0.38,0.3,1.8,0.073,31.0,70.0,0.99685,3.42,0.59,9.5,6 +8.7,0.42,0.45,2.4,0.07200000000000001,32.0,59.0,0.9961700000000001,3.33,0.77,12.0,6 +7.2,0.38,0.3,1.8,0.073,31.0,70.0,0.99685,3.42,0.59,9.5,6 +6.8,0.48,0.08,1.8,0.07400000000000001,40.0,64.0,0.99529,3.12,0.49,9.6,5 +8.5,0.34,0.4,4.7,0.055,3.0,9.0,0.9973799999999999,3.38,0.66,11.6,7 +7.9,0.19,0.42,1.6,0.057,18.0,30.0,0.9940000000000001,3.29,0.69,11.2,6 +11.6,0.41,0.54,1.5,0.095,22.0,41.0,0.99735,3.02,0.76,9.9,7 +11.6,0.41,0.54,1.5,0.095,22.0,41.0,0.99735,3.02,0.76,9.9,7 +10.0,0.26,0.54,1.9,0.083,42.0,74.0,0.99451,2.98,0.63,11.8,8 +7.9,0.34,0.42,2.0,0.086,8.0,19.0,0.99546,3.35,0.6,11.4,6 +7.0,0.54,0.09,2.0,0.081,10.0,16.0,0.99479,3.43,0.59,11.5,6 +9.2,0.31,0.36,2.2,0.079,11.0,31.0,0.99615,3.33,0.86,12.0,7 +6.6,0.725,0.09,5.5,0.11699999999999999,9.0,17.0,0.99655,3.35,0.49,10.8,6 +9.4,0.4,0.47,2.5,0.087,6.0,20.0,0.99772,3.15,0.5,10.5,5 +6.6,0.725,0.09,5.5,0.11699999999999999,9.0,17.0,0.99655,3.35,0.49,10.8,6 +8.6,0.52,0.38,1.5,0.096,5.0,18.0,0.99666,3.2,0.52,9.4,5 +8.0,0.31,0.45,2.1,0.21600000000000003,5.0,16.0,0.9935799999999999,3.15,0.81,12.5,7 +8.6,0.52,0.38,1.5,0.096,5.0,18.0,0.99666,3.2,0.52,9.4,5 +8.4,0.34,0.42,2.1,0.07200000000000001,23.0,36.0,0.99392,3.11,0.78,12.4,6 +7.4,0.49,0.27,2.1,0.071,14.0,25.0,0.9938799999999999,3.35,0.63,12.0,6 +6.1,0.48,0.09,1.7,0.078,18.0,30.0,0.9940200000000001,3.45,0.54,11.2,6 +7.4,0.49,0.27,2.1,0.071,14.0,25.0,0.9938799999999999,3.35,0.63,12.0,6 +8.0,0.48,0.34,2.2,0.073,16.0,25.0,0.9936,3.28,0.66,12.4,6 +6.3,0.57,0.28,2.1,0.048,13.0,49.0,0.99374,3.41,0.6,12.8,5 +8.2,0.23,0.42,1.9,0.069,9.0,17.0,0.9937600000000001,3.21,0.54,12.3,6 +9.1,0.3,0.41,2.0,0.068,10.0,24.0,0.99523,3.27,0.85,11.7,7 +8.1,0.78,0.1,3.3,0.09,4.0,13.0,0.99855,3.36,0.49,9.5,5 +10.8,0.47,0.43,2.1,0.171,27.0,66.0,0.9982,3.17,0.76,10.8,6 +8.3,0.53,0.0,1.4,0.07,6.0,14.0,0.99593,3.25,0.64,10.0,6 +5.4,0.42,0.27,2.0,0.092,23.0,55.0,0.99471,3.78,0.64,12.3,7 +7.9,0.33,0.41,1.5,0.055999999999999994,6.0,35.0,0.9939600000000001,3.29,0.71,11.0,6 +8.9,0.24,0.39,1.6,0.07400000000000001,3.0,10.0,0.99698,3.12,0.59,9.5,6 +5.0,0.4,0.5,4.3,0.046,29.0,80.0,0.9902,3.49,0.66,13.6,6 +7.0,0.69,0.07,2.5,0.091,15.0,21.0,0.99572,3.38,0.6,11.3,6 +7.0,0.69,0.07,2.5,0.091,15.0,21.0,0.99572,3.38,0.6,11.3,6 +7.0,0.69,0.07,2.5,0.091,15.0,21.0,0.99572,3.38,0.6,11.3,6 +7.1,0.39,0.12,2.1,0.065,14.0,24.0,0.9925200000000001,3.3,0.53,13.3,6 +5.6,0.66,0.0,2.5,0.066,7.0,15.0,0.99256,3.52,0.58,12.9,5 +7.9,0.54,0.34,2.5,0.076,8.0,17.0,0.99235,3.2,0.72,13.1,8 +6.6,0.5,0.0,1.8,0.062,21.0,28.0,0.9935200000000001,3.44,0.55,12.3,6 +6.3,0.47,0.0,1.4,0.055,27.0,33.0,0.9922,3.45,0.48,12.3,6 +10.7,0.4,0.37,1.9,0.081,17.0,29.0,0.99674,3.12,0.65,11.2,6 +6.5,0.58,0.0,2.2,0.096,3.0,13.0,0.9955700000000001,3.62,0.62,11.5,4 +8.8,0.24,0.35,1.7,0.055,13.0,27.0,0.9939399999999999,3.14,0.59,11.3,7 +5.8,0.29,0.26,1.7,0.063,3.0,11.0,0.9915,3.39,0.54,13.5,6 +6.3,0.76,0.0,2.9,0.07200000000000001,26.0,52.0,0.99379,3.51,0.6,11.5,6 +10.0,0.43,0.33,2.7,0.095,28.0,89.0,0.9984,3.22,0.68,10.0,5 +10.5,0.43,0.35,3.3,0.092,24.0,70.0,0.99798,3.21,0.69,10.5,6 +9.1,0.6,0.0,1.9,0.057999999999999996,5.0,10.0,0.9977,3.18,0.63,10.4,6 +5.9,0.19,0.21,1.7,0.045,57.0,135.0,0.99341,3.32,0.44,9.5,5 +7.4,0.36,0.34,1.8,0.075,18.0,38.0,0.9933,3.38,0.88,13.6,7 +7.2,0.48,0.07,5.5,0.08900000000000001,10.0,18.0,0.99684,3.37,0.68,11.2,7 +8.5,0.28,0.35,1.7,0.061,6.0,15.0,0.99524,3.3,0.74,11.8,7 +8.0,0.25,0.43,1.7,0.067,22.0,50.0,0.9946,3.38,0.6,11.9,6 +10.4,0.52,0.45,2.0,0.08,6.0,13.0,0.99774,3.22,0.76,11.4,6 +10.4,0.52,0.45,2.0,0.08,6.0,13.0,0.99774,3.22,0.76,11.4,6 +7.5,0.41,0.15,3.7,0.10400000000000001,29.0,94.0,0.9978600000000001,3.14,0.58,9.1,5 +8.2,0.51,0.24,2.0,0.079,16.0,86.0,0.99764,3.34,0.64,9.5,6 +7.3,0.4,0.3,1.7,0.08,33.0,79.0,0.9969,3.41,0.65,9.5,6 +8.2,0.38,0.32,2.5,0.08,24.0,71.0,0.99624,3.27,0.85,11.0,6 +6.9,0.45,0.11,2.4,0.043,6.0,12.0,0.99354,3.3,0.65,11.4,6 +7.0,0.22,0.3,1.8,0.065,16.0,20.0,0.99672,3.61,0.82,10.0,6 +7.3,0.32,0.23,2.3,0.066,35.0,70.0,0.9958799999999999,3.43,0.62,10.1,5 +8.2,0.2,0.43,2.5,0.076,31.0,51.0,0.99672,3.53,0.81,10.4,6 +7.8,0.5,0.12,1.8,0.17800000000000002,6.0,21.0,0.996,3.28,0.87,9.8,6 +10.0,0.41,0.45,6.2,0.071,6.0,14.0,0.99702,3.21,0.49,11.8,7 +7.8,0.39,0.42,2.0,0.086,9.0,21.0,0.99526,3.39,0.66,11.6,6 +10.0,0.35,0.47,2.0,0.061,6.0,11.0,0.99585,3.23,0.52,12.0,6 +8.2,0.33,0.32,2.8,0.067,4.0,12.0,0.9947299999999999,3.3,0.76,12.8,7 +6.1,0.58,0.23,2.5,0.044000000000000004,16.0,70.0,0.9935200000000001,3.46,0.65,12.5,6 +8.3,0.6,0.25,2.2,0.11800000000000001,9.0,38.0,0.99616,3.15,0.53,9.8,5 +9.6,0.42,0.35,2.1,0.083,17.0,38.0,0.9962200000000001,3.23,0.66,11.1,6 +6.6,0.58,0.0,2.2,0.1,50.0,63.0,0.99544,3.59,0.68,11.4,6 +8.3,0.6,0.25,2.2,0.11800000000000001,9.0,38.0,0.99616,3.15,0.53,9.8,5 +8.5,0.18,0.51,1.75,0.071,45.0,88.0,0.99524,3.33,0.76,11.8,7 +5.1,0.51,0.18,2.1,0.042,16.0,101.0,0.9924,3.46,0.87,12.9,7 +6.7,0.41,0.43,2.8,0.076,22.0,54.0,0.99572,3.42,1.16,10.6,6 +10.2,0.41,0.43,2.2,0.11,11.0,37.0,0.9972799999999999,3.16,0.67,10.8,5 +10.6,0.36,0.57,2.3,0.087,6.0,20.0,0.9967600000000001,3.14,0.72,11.1,7 +8.8,0.45,0.43,1.4,0.076,12.0,21.0,0.99551,3.21,0.75,10.2,6 +8.5,0.32,0.42,2.3,0.075,12.0,19.0,0.99434,3.14,0.71,11.8,7 +9.0,0.785,0.24,1.7,0.078,10.0,21.0,0.99692,3.29,0.67,10.0,5 +9.0,0.785,0.24,1.7,0.078,10.0,21.0,0.99692,3.29,0.67,10.0,5 +8.5,0.44,0.5,1.9,0.369,15.0,38.0,0.99634,3.01,1.1,9.4,5 +9.9,0.54,0.26,2.0,0.111,7.0,60.0,0.9970899999999999,2.94,0.98,10.2,5 +8.2,0.33,0.39,2.5,0.07400000000000001,29.0,48.0,0.9952799999999999,3.32,0.88,12.4,7 +6.5,0.34,0.27,2.8,0.067,8.0,44.0,0.99384,3.21,0.56,12.0,6 +7.6,0.5,0.29,2.3,0.086,5.0,14.0,0.9950200000000001,3.32,0.62,11.5,6 +9.2,0.36,0.34,1.6,0.062,5.0,12.0,0.9966700000000001,3.2,0.67,10.5,6 +7.1,0.59,0.0,2.2,0.078,26.0,44.0,0.9952200000000001,3.42,0.68,10.8,6 +9.7,0.42,0.46,2.1,0.07400000000000001,5.0,16.0,0.99649,3.27,0.74,12.3,6 +7.6,0.36,0.31,1.7,0.079,26.0,65.0,0.99716,3.46,0.62,9.5,6 +7.6,0.36,0.31,1.7,0.079,26.0,65.0,0.99716,3.46,0.62,9.5,6 +6.5,0.61,0.0,2.2,0.095,48.0,59.0,0.99541,3.61,0.7,11.5,6 +6.5,0.88,0.03,5.6,0.079,23.0,47.0,0.99572,3.58,0.5,11.2,4 +7.1,0.66,0.0,2.4,0.052000000000000005,6.0,11.0,0.99318,3.35,0.66,12.7,7 +5.6,0.915,0.0,2.1,0.040999999999999995,17.0,78.0,0.99346,3.68,0.73,11.4,5 +8.2,0.35,0.33,2.4,0.076,11.0,47.0,0.9959899999999999,3.27,0.81,11.0,6 +8.2,0.35,0.33,2.4,0.076,11.0,47.0,0.9959899999999999,3.27,0.81,11.0,6 +9.8,0.39,0.43,1.65,0.068,5.0,11.0,0.9947799999999999,3.19,0.46,11.4,5 +10.2,0.4,0.4,2.5,0.068,41.0,54.0,0.99754,3.38,0.86,10.5,6 +6.8,0.66,0.07,1.6,0.07,16.0,61.0,0.99572,3.29,0.6,9.3,5 +6.7,0.64,0.23,2.1,0.08,11.0,119.0,0.9953799999999999,3.36,0.7,10.9,5 +7.0,0.43,0.3,2.0,0.085,6.0,39.0,0.99346,3.33,0.46,11.9,6 +6.6,0.8,0.03,7.8,0.079,6.0,12.0,0.9963,3.52,0.5,12.2,5 +7.0,0.43,0.3,2.0,0.085,6.0,39.0,0.99346,3.33,0.46,11.9,6 +6.7,0.64,0.23,2.1,0.08,11.0,119.0,0.9953799999999999,3.36,0.7,10.9,5 +8.8,0.955,0.05,1.8,0.075,5.0,19.0,0.99616,3.3,0.44,9.6,4 +9.1,0.4,0.57,4.6,0.08,6.0,20.0,0.9965200000000001,3.28,0.57,12.5,6 +6.5,0.885,0.0,2.3,0.166,6.0,12.0,0.99551,3.56,0.51,10.8,5 +7.2,0.25,0.37,2.5,0.063,11.0,41.0,0.99439,3.52,0.8,12.4,7 +6.4,0.885,0.0,2.3,0.166,6.0,12.0,0.99551,3.56,0.51,10.8,5 +7.0,0.745,0.12,1.8,0.114,15.0,64.0,0.9958799999999999,3.22,0.59,9.5,6 +6.2,0.43,0.22,1.8,0.078,21.0,56.0,0.9963299999999999,3.52,0.6,9.5,6 +7.9,0.58,0.23,2.3,0.076,23.0,94.0,0.9968600000000001,3.21,0.58,9.5,6 +7.7,0.57,0.21,1.5,0.069,4.0,9.0,0.9945799999999999,3.16,0.54,9.8,6 +7.7,0.26,0.26,2.0,0.052000000000000005,19.0,77.0,0.9951,3.15,0.79,10.9,6 +7.9,0.58,0.23,2.3,0.076,23.0,94.0,0.9968600000000001,3.21,0.58,9.5,6 +7.7,0.57,0.21,1.5,0.069,4.0,9.0,0.9945799999999999,3.16,0.54,9.8,6 +7.9,0.34,0.36,1.9,0.065,5.0,10.0,0.99419,3.27,0.54,11.2,7 +8.6,0.42,0.39,1.8,0.068,6.0,12.0,0.99516,3.35,0.69,11.7,8 +9.9,0.74,0.19,5.8,0.111,33.0,76.0,0.9987799999999999,3.14,0.55,9.4,5 +7.2,0.36,0.46,2.1,0.07400000000000001,24.0,44.0,0.99534,3.4,0.85,11.0,7 +7.2,0.36,0.46,2.1,0.07400000000000001,24.0,44.0,0.99534,3.4,0.85,11.0,7 +7.2,0.36,0.46,2.1,0.07400000000000001,24.0,44.0,0.99534,3.4,0.85,11.0,7 +9.9,0.72,0.55,1.7,0.136,24.0,52.0,0.9975200000000001,3.35,0.94,10.0,5 +7.2,0.36,0.46,2.1,0.07400000000000001,24.0,44.0,0.99534,3.4,0.85,11.0,7 +6.2,0.39,0.43,2.0,0.071,14.0,24.0,0.9942799999999999,3.45,0.87,11.2,7 +6.8,0.65,0.02,2.1,0.078,8.0,15.0,0.99498,3.35,0.62,10.4,6 +6.6,0.44,0.15,2.1,0.076,22.0,53.0,0.9957,3.32,0.62,9.3,5 +6.8,0.65,0.02,2.1,0.078,8.0,15.0,0.99498,3.35,0.62,10.4,6 +9.6,0.38,0.42,1.9,0.071,5.0,13.0,0.99659,3.15,0.75,10.5,6 +10.2,0.33,0.46,1.9,0.081,6.0,9.0,0.9962799999999999,3.1,0.48,10.4,6 +8.8,0.27,0.46,2.1,0.095,20.0,29.0,0.9948799999999999,3.26,0.56,11.3,6 +7.9,0.57,0.31,2.0,0.079,10.0,79.0,0.99677,3.29,0.69,9.5,6 +8.2,0.34,0.37,1.9,0.057,43.0,74.0,0.99408,3.23,0.81,12.0,6 +8.2,0.4,0.31,1.9,0.08199999999999999,8.0,24.0,0.996,3.24,0.69,10.6,6 +9.0,0.39,0.4,1.3,0.044000000000000004,25.0,50.0,0.9947799999999999,3.2,0.83,10.9,6 +10.9,0.32,0.52,1.8,0.132,17.0,44.0,0.99734,3.28,0.77,11.5,6 +10.9,0.32,0.52,1.8,0.132,17.0,44.0,0.99734,3.28,0.77,11.5,6 +8.1,0.53,0.22,2.2,0.078,33.0,89.0,0.9967799999999999,3.26,0.46,9.6,6 +10.5,0.36,0.47,2.2,0.07400000000000001,9.0,23.0,0.9963799999999999,3.23,0.76,12.0,6 +12.6,0.39,0.49,2.5,0.08,8.0,20.0,0.9992,3.07,0.82,10.3,6 +9.2,0.46,0.23,2.6,0.091,18.0,77.0,0.9992200000000001,3.15,0.51,9.4,5 +7.5,0.58,0.03,4.1,0.08,27.0,46.0,0.99592,3.02,0.47,9.2,5 +9.0,0.58,0.25,2.0,0.10400000000000001,8.0,21.0,0.99769,3.27,0.72,9.6,5 +5.1,0.42,0.0,1.8,0.044000000000000004,18.0,88.0,0.9915700000000001,3.68,0.73,13.6,7 +7.6,0.43,0.29,2.1,0.075,19.0,66.0,0.99718,3.4,0.64,9.5,5 +7.7,0.18,0.34,2.7,0.066,15.0,58.0,0.9947,3.37,0.78,11.8,6 +7.8,0.815,0.01,2.6,0.07400000000000001,48.0,90.0,0.99621,3.38,0.62,10.8,5 +7.6,0.43,0.29,2.1,0.075,19.0,66.0,0.99718,3.4,0.64,9.5,5 +10.2,0.23,0.37,2.2,0.057,14.0,36.0,0.9961399999999999,3.23,0.49,9.3,4 +7.1,0.75,0.01,2.2,0.059000000000000004,11.0,18.0,0.9924200000000001,3.39,0.4,12.8,6 +6.0,0.33,0.32,12.9,0.054000000000000006,6.0,113.0,0.99572,3.3,0.56,11.5,4 +7.8,0.55,0.0,1.7,0.07,7.0,17.0,0.99659,3.26,0.64,9.4,6 +7.1,0.75,0.01,2.2,0.059000000000000004,11.0,18.0,0.9924200000000001,3.39,0.4,12.8,6 +8.1,0.73,0.0,2.5,0.081,12.0,24.0,0.99798,3.38,0.46,9.6,4 +6.5,0.67,0.0,4.3,0.057,11.0,20.0,0.9948799999999999,3.45,0.56,11.8,4 +7.5,0.61,0.2,1.7,0.076,36.0,60.0,0.9949399999999999,3.1,0.4,9.3,5 +9.8,0.37,0.39,2.5,0.079,28.0,65.0,0.99729,3.16,0.59,9.8,5 +9.0,0.4,0.41,2.0,0.057999999999999996,15.0,40.0,0.9941399999999999,3.22,0.6,12.2,6 +8.3,0.56,0.22,2.4,0.08199999999999999,10.0,86.0,0.9983,3.37,0.62,9.5,5 +5.9,0.29,0.25,13.4,0.067,72.0,160.0,0.99721,3.33,0.54,10.3,6 +7.4,0.55,0.19,1.8,0.08199999999999999,15.0,34.0,0.99655,3.49,0.68,10.5,5 +7.4,0.74,0.07,1.7,0.086,15.0,48.0,0.9950200000000001,3.12,0.48,10.0,5 +7.4,0.55,0.19,1.8,0.08199999999999999,15.0,34.0,0.99655,3.49,0.68,10.5,5 +6.9,0.41,0.33,2.2,0.081,22.0,36.0,0.9949,3.41,0.75,11.1,6 +7.1,0.6,0.01,2.3,0.079,24.0,37.0,0.9951399999999999,3.4,0.61,10.9,6 +7.1,0.6,0.01,2.3,0.079,24.0,37.0,0.9951399999999999,3.4,0.61,10.9,6 +7.5,0.58,0.14,2.2,0.077,27.0,60.0,0.9963,3.28,0.59,9.8,5 +7.1,0.72,0.0,1.8,0.12300000000000001,6.0,14.0,0.9962700000000001,3.45,0.58,9.8,5 +7.9,0.66,0.0,1.4,0.096,6.0,13.0,0.99569,3.43,0.58,9.5,5 +7.8,0.7,0.06,1.9,0.079,20.0,35.0,0.9962799999999999,3.4,0.69,10.9,5 +6.1,0.64,0.02,2.4,0.069,26.0,46.0,0.9935799999999999,3.47,0.45,11.0,5 +7.5,0.59,0.22,1.8,0.08199999999999999,43.0,60.0,0.9949899999999999,3.1,0.42,9.2,5 +7.0,0.58,0.28,4.8,0.085,12.0,69.0,0.9963299999999999,3.32,0.7,11.0,6 +6.8,0.64,0.0,2.7,0.12300000000000001,15.0,33.0,0.9953799999999999,3.44,0.63,11.3,6 +6.8,0.64,0.0,2.7,0.12300000000000001,15.0,33.0,0.9953799999999999,3.44,0.63,11.3,6 +8.6,0.635,0.68,1.8,0.40299999999999997,19.0,56.0,0.9963200000000001,3.02,1.15,9.3,5 +6.3,1.02,0.0,2.0,0.083,17.0,24.0,0.9943700000000001,3.59,0.55,11.2,4 +9.8,0.45,0.38,2.5,0.081,34.0,66.0,0.99726,3.15,0.58,9.8,5 +8.2,0.78,0.0,2.2,0.08900000000000001,13.0,26.0,0.9978,3.37,0.46,9.6,4 +8.5,0.37,0.32,1.8,0.066,26.0,51.0,0.99456,3.38,0.72,11.8,6 +7.2,0.57,0.05,2.3,0.081,16.0,36.0,0.99564,3.38,0.6,10.3,6 +7.2,0.57,0.05,2.3,0.081,16.0,36.0,0.99564,3.38,0.6,10.3,6 +10.4,0.43,0.5,2.3,0.068,13.0,19.0,0.996,3.1,0.87,11.4,6 +6.9,0.41,0.31,2.0,0.079,21.0,51.0,0.9966799999999999,3.47,0.55,9.5,6 +5.5,0.49,0.03,1.8,0.044000000000000004,28.0,87.0,0.9908,3.5,0.82,14.0,8 +5.0,0.38,0.01,1.6,0.048,26.0,60.0,0.9908399999999999,3.7,0.75,14.0,6 +7.3,0.44,0.2,1.6,0.049,24.0,64.0,0.9935,3.38,0.57,11.7,6 +5.9,0.46,0.0,1.9,0.077,25.0,44.0,0.99385,3.5,0.53,11.2,5 +7.5,0.58,0.2,2.0,0.073,34.0,44.0,0.9949399999999999,3.1,0.43,9.3,5 +7.8,0.58,0.13,2.1,0.102,17.0,36.0,0.9944,3.24,0.53,11.2,6 +8.0,0.715,0.22,2.3,0.075,13.0,81.0,0.9968799999999999,3.24,0.54,9.5,6 +8.5,0.4,0.4,6.3,0.05,3.0,10.0,0.99566,3.28,0.56,12.0,4 +7.0,0.69,0.0,1.9,0.114,3.0,10.0,0.99636,3.35,0.6,9.7,6 +8.0,0.715,0.22,2.3,0.075,13.0,81.0,0.9968799999999999,3.24,0.54,9.5,6 +9.8,0.3,0.39,1.7,0.062,3.0,9.0,0.9948,3.14,0.57,11.5,7 +7.1,0.46,0.2,1.9,0.077,28.0,54.0,0.9956,3.37,0.64,10.4,6 +7.1,0.46,0.2,1.9,0.077,28.0,54.0,0.9956,3.37,0.64,10.4,6 +7.9,0.765,0.0,2.0,0.084,9.0,22.0,0.9961899999999999,3.33,0.68,10.9,6 +8.7,0.63,0.28,2.7,0.096,17.0,69.0,0.99734,3.26,0.63,10.2,6 +7.0,0.42,0.19,2.3,0.071,18.0,36.0,0.9947600000000001,3.39,0.56,10.9,5 +11.3,0.37,0.5,1.8,0.09,20.0,47.0,0.99734,3.15,0.57,10.5,5 +7.1,0.16,0.44,2.5,0.068,17.0,31.0,0.9932799999999999,3.35,0.54,12.4,6 +8.0,0.6,0.08,2.6,0.055999999999999994,3.0,7.0,0.9928600000000001,3.22,0.37,13.0,5 +7.0,0.6,0.3,4.5,0.068,20.0,110.0,0.9991399999999999,3.3,1.17,10.2,5 +7.0,0.6,0.3,4.5,0.068,20.0,110.0,0.9991399999999999,3.3,1.17,10.2,5 +7.6,0.74,0.0,1.9,0.1,6.0,12.0,0.99521,3.36,0.59,11.0,5 +8.2,0.635,0.1,2.1,0.073,25.0,60.0,0.9963799999999999,3.29,0.75,10.9,6 +5.9,0.395,0.13,2.4,0.055999999999999994,14.0,28.0,0.9936200000000001,3.62,0.67,12.4,6 +7.5,0.755,0.0,1.9,0.084,6.0,12.0,0.99672,3.34,0.49,9.7,4 +8.2,0.635,0.1,2.1,0.073,25.0,60.0,0.9963799999999999,3.29,0.75,10.9,6 +6.6,0.63,0.0,4.3,0.09300000000000001,51.0,77.5,0.9955799999999999,3.2,0.45,9.5,5 +6.6,0.63,0.0,4.3,0.09300000000000001,51.0,77.5,0.9955799999999999,3.2,0.45,9.5,5 +7.2,0.53,0.14,2.1,0.064,15.0,29.0,0.99323,3.35,0.61,12.1,6 +5.7,0.6,0.0,1.4,0.063,11.0,18.0,0.9919100000000001,3.45,0.56,12.2,6 +7.6,1.58,0.0,2.1,0.13699999999999998,5.0,9.0,0.9947600000000001,3.5,0.4,10.9,3 +5.2,0.645,0.0,2.15,0.08,15.0,28.0,0.99444,3.78,0.61,12.5,6 +6.7,0.86,0.07,2.0,0.1,20.0,57.0,0.99598,3.6,0.74,11.7,6 +9.1,0.37,0.32,2.1,0.064,4.0,15.0,0.9957600000000001,3.3,0.8,11.2,6 +8.0,0.28,0.44,1.8,0.081,28.0,68.0,0.9950100000000001,3.36,0.66,11.2,5 +7.6,0.79,0.21,2.3,0.087,21.0,68.0,0.9955,3.12,0.44,9.2,5 +7.5,0.61,0.26,1.9,0.073,24.0,88.0,0.9961200000000001,3.3,0.53,9.8,5 +9.7,0.69,0.32,2.5,0.08800000000000001,22.0,91.0,0.9979,3.29,0.62,10.1,5 +6.8,0.68,0.09,3.9,0.068,15.0,29.0,0.99524,3.41,0.52,11.1,4 +9.7,0.69,0.32,2.5,0.08800000000000001,22.0,91.0,0.9979,3.29,0.62,10.1,5 +7.0,0.62,0.1,1.4,0.071,27.0,63.0,0.996,3.28,0.61,9.2,5 +7.5,0.61,0.26,1.9,0.073,24.0,88.0,0.9961200000000001,3.3,0.53,9.8,5 +6.5,0.51,0.15,3.0,0.064,12.0,27.0,0.9929,3.33,0.59,12.8,6 +8.0,1.18,0.21,1.9,0.083,14.0,41.0,0.9953200000000001,3.34,0.47,10.5,5 +7.0,0.36,0.21,2.3,0.086,20.0,65.0,0.9955799999999999,3.4,0.54,10.1,6 +7.0,0.36,0.21,2.4,0.086,24.0,69.0,0.99556,3.4,0.53,10.1,6 +7.5,0.63,0.27,2.0,0.083,17.0,91.0,0.99616,3.26,0.58,9.8,6 +5.4,0.74,0.0,1.2,0.040999999999999995,16.0,46.0,0.9925799999999999,4.01,0.59,12.5,6 +9.9,0.44,0.46,2.2,0.091,10.0,41.0,0.9963799999999999,3.18,0.69,11.9,6 +7.5,0.63,0.27,2.0,0.083,17.0,91.0,0.99616,3.26,0.58,9.8,6 +9.1,0.76,0.68,1.7,0.414,18.0,64.0,0.9965200000000001,2.9,1.33,9.1,6 +9.7,0.66,0.34,2.6,0.094,12.0,88.0,0.9979600000000001,3.26,0.66,10.1,5 +5.0,0.74,0.0,1.2,0.040999999999999995,16.0,46.0,0.9925799999999999,4.01,0.59,12.5,6 +9.1,0.34,0.42,1.8,0.057999999999999996,9.0,18.0,0.99392,3.18,0.55,11.4,5 +9.1,0.36,0.39,1.8,0.06,21.0,55.0,0.99495,3.18,0.82,11.0,7 +6.7,0.46,0.24,1.7,0.077,18.0,34.0,0.9948,3.39,0.6,10.6,6 +6.7,0.46,0.24,1.7,0.077,18.0,34.0,0.9948,3.39,0.6,10.6,6 +6.7,0.46,0.24,1.7,0.077,18.0,34.0,0.9948,3.39,0.6,10.6,6 +6.7,0.46,0.24,1.7,0.077,18.0,34.0,0.9948,3.39,0.6,10.6,6 +6.5,0.52,0.11,1.8,0.073,13.0,38.0,0.9955,3.34,0.52,9.3,5 +7.4,0.6,0.26,2.1,0.083,17.0,91.0,0.99616,3.29,0.56,9.8,6 +7.4,0.6,0.26,2.1,0.083,17.0,91.0,0.99616,3.29,0.56,9.8,6 +7.8,0.87,0.26,3.8,0.107,31.0,67.0,0.9966799999999999,3.26,0.46,9.2,5 +8.4,0.39,0.1,1.7,0.075,6.0,25.0,0.9958100000000001,3.09,0.43,9.7,6 +9.1,0.775,0.22,2.2,0.079,12.0,48.0,0.9976,3.18,0.51,9.6,5 +7.2,0.835,0.0,2.0,0.166,4.0,11.0,0.99608,3.39,0.52,10.0,5 +6.6,0.58,0.02,2.4,0.069,19.0,40.0,0.99387,3.38,0.66,12.6,6 +6.0,0.5,0.0,1.4,0.057,15.0,26.0,0.9944799999999999,3.36,0.45,9.5,5 +6.0,0.5,0.0,1.4,0.057,15.0,26.0,0.9944799999999999,3.36,0.45,9.5,5 +6.0,0.5,0.0,1.4,0.057,15.0,26.0,0.9944799999999999,3.36,0.45,9.5,5 +7.5,0.51,0.02,1.7,0.084,13.0,31.0,0.9953799999999999,3.36,0.54,10.5,6 +7.5,0.51,0.02,1.7,0.084,13.0,31.0,0.9953799999999999,3.36,0.54,10.5,6 +7.5,0.51,0.02,1.7,0.084,13.0,31.0,0.9953799999999999,3.36,0.54,10.5,6 +7.6,0.54,0.02,1.7,0.085,17.0,31.0,0.9958899999999999,3.37,0.51,10.4,6 +7.5,0.51,0.02,1.7,0.084,13.0,31.0,0.9953799999999999,3.36,0.54,10.5,6 +11.5,0.42,0.48,2.6,0.077,8.0,20.0,0.9985200000000001,3.09,0.53,11.0,5 +8.2,0.44,0.24,2.3,0.063,10.0,28.0,0.99613,3.25,0.53,10.2,6 +6.1,0.59,0.01,2.1,0.055999999999999994,5.0,13.0,0.99472,3.52,0.56,11.4,5 +7.2,0.655,0.03,1.8,0.078,7.0,12.0,0.99587,3.34,0.39,9.5,5 +7.2,0.655,0.03,1.8,0.078,7.0,12.0,0.99587,3.34,0.39,9.5,5 +6.9,0.57,0.0,2.8,0.081,21.0,41.0,0.99518,3.41,0.52,10.8,5 +9.0,0.6,0.29,2.0,0.069,32.0,73.0,0.99654,3.34,0.57,10.0,5 +7.2,0.62,0.01,2.3,0.065,8.0,46.0,0.9933200000000001,3.32,0.51,11.8,6 +7.6,0.645,0.03,1.9,0.086,14.0,57.0,0.9969,3.37,0.46,10.3,5 +7.6,0.645,0.03,1.9,0.086,14.0,57.0,0.9969,3.37,0.46,10.3,5 +7.2,0.58,0.03,2.3,0.077,7.0,28.0,0.9956799999999999,3.35,0.52,10.0,5 +6.1,0.32,0.25,1.8,0.086,5.0,32.0,0.99464,3.36,0.44,10.1,5 +6.1,0.34,0.25,1.8,0.084,4.0,28.0,0.99464,3.36,0.44,10.1,5 +7.3,0.43,0.24,2.5,0.078,27.0,67.0,0.9964799999999999,3.6,0.59,11.1,6 +7.4,0.64,0.17,5.4,0.168,52.0,98.0,0.99736,3.28,0.5,9.5,5 +11.6,0.475,0.4,1.4,0.091,6.0,28.0,0.9970399999999999,3.07,0.65,10.0333333333333,6 +9.2,0.54,0.31,2.3,0.11199999999999999,11.0,38.0,0.9969899999999999,3.24,0.56,10.9,5 +8.3,0.85,0.14,2.5,0.09300000000000001,13.0,54.0,0.99724,3.36,0.54,10.1,5 +11.6,0.475,0.4,1.4,0.091,6.0,28.0,0.9970399999999999,3.07,0.65,10.0333333333333,6 +8.0,0.83,0.27,2.0,0.08,11.0,63.0,0.9965200000000001,3.29,0.48,9.8,4 +7.2,0.605,0.02,1.9,0.096,10.0,31.0,0.995,3.46,0.53,11.8,6 +7.8,0.5,0.09,2.2,0.115,10.0,42.0,0.9971,3.18,0.62,9.5,5 +7.3,0.74,0.08,1.7,0.094,10.0,45.0,0.9957600000000001,3.24,0.5,9.8,5 +6.9,0.54,0.3,2.2,0.08800000000000001,9.0,105.0,0.99725,3.25,1.18,10.5,6 +8.0,0.77,0.32,2.1,0.079,16.0,74.0,0.99656,3.27,0.5,9.8,6 +6.6,0.61,0.0,1.6,0.069,4.0,8.0,0.9939600000000001,3.33,0.37,10.4,4 +8.7,0.78,0.51,1.7,0.415,12.0,66.0,0.99623,3.0,1.17,9.2,5 +7.5,0.58,0.56,3.1,0.153,5.0,14.0,0.9947600000000001,3.21,1.03,11.6,6 +8.7,0.78,0.51,1.7,0.415,12.0,66.0,0.99623,3.0,1.17,9.2,5 +7.7,0.75,0.27,3.8,0.11,34.0,89.0,0.99664,3.24,0.45,9.3,5 +6.8,0.815,0.0,1.2,0.267,16.0,29.0,0.99471,3.32,0.51,9.8,3 +7.2,0.56,0.26,2.0,0.083,13.0,100.0,0.9958600000000001,3.26,0.52,9.9,5 +8.2,0.885,0.2,1.4,0.086,7.0,31.0,0.9946,3.11,0.46,10.0,5 +5.2,0.49,0.26,2.3,0.09,23.0,74.0,0.9953,3.71,0.62,12.2,6 +7.2,0.45,0.15,2.0,0.078,10.0,28.0,0.9960899999999999,3.29,0.51,9.9,6 +7.5,0.57,0.02,2.6,0.077,11.0,35.0,0.9955700000000001,3.36,0.62,10.8,6 +7.5,0.57,0.02,2.6,0.077,11.0,35.0,0.9955700000000001,3.36,0.62,10.8,6 +6.8,0.83,0.09,1.8,0.07400000000000001,4.0,25.0,0.99534,3.38,0.45,9.6,5 +8.0,0.6,0.22,2.1,0.08,25.0,105.0,0.99613,3.3,0.49,9.9,5 +8.0,0.6,0.22,2.1,0.08,25.0,105.0,0.99613,3.3,0.49,9.9,5 +7.1,0.755,0.15,1.8,0.107,20.0,84.0,0.99593,3.19,0.5,9.5,5 +8.0,0.81,0.25,3.4,0.076,34.0,85.0,0.9966799999999999,3.19,0.42,9.2,5 +7.4,0.64,0.07,1.8,0.1,8.0,23.0,0.9961,3.3,0.58,9.6,5 +7.4,0.64,0.07,1.8,0.1,8.0,23.0,0.9961,3.3,0.58,9.6,5 +6.6,0.64,0.31,6.1,0.083,7.0,49.0,0.99718,3.35,0.68,10.3,5 +6.7,0.48,0.02,2.2,0.08,36.0,111.0,0.99524,3.1,0.53,9.7,5 +6.0,0.49,0.0,2.3,0.068,15.0,33.0,0.99292,3.58,0.59,12.5,6 +8.0,0.64,0.22,2.4,0.094,5.0,33.0,0.9961200000000001,3.37,0.58,11.0,5 +7.1,0.62,0.06,1.3,0.07,5.0,12.0,0.9942,3.17,0.48,9.8,5 +8.0,0.52,0.25,2.0,0.078,19.0,59.0,0.9961200000000001,3.3,0.48,10.2,5 +6.4,0.57,0.14,3.9,0.07,27.0,73.0,0.99669,3.32,0.48,9.2,5 +8.6,0.685,0.1,1.6,0.092,3.0,12.0,0.99745,3.31,0.65,9.55,6 +8.7,0.675,0.1,1.6,0.09,4.0,11.0,0.99745,3.31,0.65,9.55,5 +7.3,0.59,0.26,2.0,0.08,17.0,104.0,0.99584,3.28,0.52,9.9,5 +7.0,0.6,0.12,2.2,0.083,13.0,28.0,0.9966,3.52,0.62,10.2,7 +7.2,0.67,0.0,2.2,0.068,10.0,24.0,0.9956,3.42,0.72,11.1,6 +7.9,0.69,0.21,2.1,0.08,33.0,141.0,0.9962,3.25,0.51,9.9,5 +7.9,0.69,0.21,2.1,0.08,33.0,141.0,0.9962,3.25,0.51,9.9,5 +7.6,0.3,0.42,2.0,0.052000000000000005,6.0,24.0,0.9963,3.44,0.82,11.9,6 +7.2,0.33,0.33,1.7,0.061,3.0,13.0,0.996,3.23,1.1,10.0,8 +8.0,0.5,0.39,2.6,0.08199999999999999,12.0,46.0,0.9985,3.43,0.62,10.7,6 +7.7,0.28,0.3,2.0,0.062,18.0,34.0,0.9952,3.28,0.9,11.3,7 +8.2,0.24,0.34,5.1,0.062,8.0,22.0,0.9974,3.22,0.94,10.9,6 +6.0,0.51,0.0,2.1,0.064,40.0,54.0,0.995,3.54,0.93,10.7,6 +8.1,0.29,0.36,2.2,0.048,35.0,53.0,0.995,3.27,1.01,12.4,7 +6.0,0.51,0.0,2.1,0.064,40.0,54.0,0.995,3.54,0.93,10.7,6 +6.6,0.96,0.0,1.8,0.08199999999999999,5.0,16.0,0.9936,3.5,0.44,11.9,6 +6.4,0.47,0.4,2.4,0.071,8.0,19.0,0.9963,3.56,0.73,10.6,6 +8.2,0.24,0.34,5.1,0.062,8.0,22.0,0.9974,3.22,0.94,10.9,6 +9.9,0.57,0.25,2.0,0.10400000000000001,12.0,89.0,0.9963,3.04,0.9,10.1,5 +10.0,0.32,0.59,2.2,0.077,3.0,15.0,0.9994,3.2,0.78,9.6,5 +6.2,0.58,0.0,1.6,0.065,8.0,18.0,0.9966,3.56,0.84,9.4,5 +10.0,0.32,0.59,2.2,0.077,3.0,15.0,0.9994,3.2,0.78,9.6,5 +7.3,0.34,0.33,2.5,0.064,21.0,37.0,0.9952,3.35,0.77,12.1,7 +7.8,0.53,0.01,1.6,0.077,3.0,19.0,0.995,3.16,0.46,9.8,5 +7.7,0.64,0.21,2.2,0.077,32.0,133.0,0.9956,3.27,0.45,9.9,5 +7.8,0.53,0.01,1.6,0.077,3.0,19.0,0.995,3.16,0.46,9.8,5 +7.5,0.4,0.18,1.6,0.079,24.0,58.0,0.9965,3.34,0.58,9.4,5 +7.0,0.54,0.0,2.1,0.079,39.0,55.0,0.9956,3.39,0.84,11.4,6 +6.4,0.53,0.09,3.9,0.12300000000000001,14.0,31.0,0.9968,3.5,0.67,11.0,4 +8.3,0.26,0.37,1.4,0.076,8.0,23.0,0.9974,3.26,0.7,9.6,6 +8.3,0.26,0.37,1.4,0.076,8.0,23.0,0.9974,3.26,0.7,9.6,6 +7.7,0.23,0.37,1.8,0.046,23.0,60.0,0.9971,3.41,0.71,12.1,6 +7.6,0.41,0.33,2.5,0.078,6.0,23.0,0.9957,3.3,0.58,11.2,5 +7.8,0.64,0.0,1.9,0.07200000000000001,27.0,55.0,0.9962,3.31,0.63,11.0,5 +7.9,0.18,0.4,2.2,0.049,38.0,67.0,0.996,3.33,0.93,11.3,5 +7.4,0.41,0.24,1.8,0.066,18.0,47.0,0.9956,3.37,0.62,10.4,5 +7.6,0.43,0.31,2.1,0.069,13.0,74.0,0.9958,3.26,0.54,9.9,6 +5.9,0.44,0.0,1.6,0.042,3.0,11.0,0.9944,3.48,0.85,11.7,6 +6.1,0.4,0.16,1.8,0.069,11.0,25.0,0.9955,3.42,0.74,10.1,7 +10.2,0.54,0.37,15.4,0.214,55.0,95.0,1.00369,3.18,0.77,9.0,6 +10.2,0.54,0.37,15.4,0.214,55.0,95.0,1.00369,3.18,0.77,9.0,6 +10.0,0.38,0.38,1.6,0.16899999999999998,27.0,90.0,0.9991399999999999,3.15,0.65,8.5,5 +6.8,0.915,0.29,4.8,0.07,15.0,39.0,0.99577,3.53,0.54,11.1,5 +7.0,0.59,0.0,1.7,0.052000000000000005,3.0,8.0,0.996,3.41,0.47,10.3,5 +7.3,0.67,0.02,2.2,0.07200000000000001,31.0,92.0,0.99566,3.32,0.68,11.066666666666698,6 +7.2,0.37,0.32,2.0,0.062,15.0,28.0,0.9947,3.23,0.73,11.3,7 +7.4,0.785,0.19,5.2,0.094,19.0,98.0,0.99713,3.16,0.52,9.56666666666667,6 +6.9,0.63,0.02,1.9,0.078,18.0,30.0,0.9971200000000001,3.4,0.75,9.8,5 +6.9,0.58,0.2,1.75,0.057999999999999996,8.0,22.0,0.9932200000000001,3.38,0.49,11.7,5 +7.3,0.67,0.02,2.2,0.07200000000000001,31.0,92.0,0.99566,3.32,0.68,11.1,6 +7.4,0.785,0.19,5.2,0.094,19.0,98.0,0.99713,3.16,0.52,9.6,6 +6.9,0.63,0.02,1.9,0.078,18.0,30.0,0.9971200000000001,3.4,0.75,9.8,5 +6.8,0.67,0.0,1.9,0.08,22.0,39.0,0.9970100000000001,3.4,0.74,9.7,5 +6.9,0.58,0.01,1.9,0.08,40.0,54.0,0.9968299999999999,3.4,0.73,9.7,5 +7.2,0.38,0.31,2.0,0.055999999999999994,15.0,29.0,0.99472,3.23,0.76,11.3,8 +7.2,0.37,0.32,2.0,0.062,15.0,28.0,0.9947,3.23,0.73,11.3,7 +7.8,0.32,0.44,2.7,0.10400000000000001,8.0,17.0,0.9973200000000001,3.33,0.78,11.0,7 +6.6,0.58,0.02,2.0,0.062,37.0,53.0,0.99374,3.35,0.76,11.6,7 +7.6,0.49,0.33,1.9,0.07400000000000001,27.0,85.0,0.9970600000000001,3.41,0.58,9.0,5 +11.7,0.45,0.63,2.2,0.073,7.0,23.0,0.99974,3.21,0.69,10.9,6 +6.5,0.9,0.0,1.6,0.052000000000000005,9.0,17.0,0.99467,3.5,0.63,10.9,6 +6.0,0.54,0.06,1.8,0.05,38.0,89.0,0.99236,3.3,0.5,10.55,6 +7.6,0.49,0.33,1.9,0.07400000000000001,27.0,85.0,0.9970600000000001,3.41,0.58,9.0,5 +8.4,0.29,0.4,1.7,0.067,8.0,20.0,0.99603,3.39,0.6,10.5,5 +7.9,0.2,0.35,1.7,0.054000000000000006,7.0,15.0,0.9945799999999999,3.32,0.8,11.9,7 +6.4,0.42,0.09,2.3,0.054000000000000006,34.0,64.0,0.99724,3.41,0.68,10.4,6 +6.2,0.785,0.0,2.1,0.06,6.0,13.0,0.99664,3.59,0.61,10.0,4 +6.8,0.64,0.03,2.3,0.075,14.0,31.0,0.99545,3.36,0.58,10.4,6 +6.9,0.63,0.01,2.4,0.076,14.0,39.0,0.9952200000000001,3.34,0.53,10.8,6 +6.8,0.59,0.1,1.7,0.063,34.0,53.0,0.9958,3.41,0.67,9.7,5 +6.8,0.59,0.1,1.7,0.063,34.0,53.0,0.9958,3.41,0.67,9.7,5 +7.3,0.48,0.32,2.1,0.062,31.0,54.0,0.9972799999999999,3.3,0.65,10.0,7 +6.7,1.04,0.08,2.3,0.067,19.0,32.0,0.9964799999999999,3.52,0.57,11.0,4 +7.3,0.48,0.32,2.1,0.062,31.0,54.0,0.9972799999999999,3.3,0.65,10.0,7 +7.3,0.98,0.05,2.1,0.061,20.0,49.0,0.99705,3.31,0.55,9.7,3 +10.0,0.69,0.11,1.4,0.084,8.0,24.0,0.9957799999999999,2.88,0.47,9.7,5 +6.7,0.7,0.08,3.75,0.067,8.0,16.0,0.99334,3.43,0.52,12.6,5 +7.6,0.35,0.6,2.6,0.073,23.0,44.0,0.99656,3.38,0.79,11.1,6 +6.1,0.6,0.08,1.8,0.071,14.0,45.0,0.99336,3.38,0.54,11.0,5 +9.9,0.5,0.5,13.8,0.205,48.0,82.0,1.00242,3.16,0.75,8.8,5 +5.3,0.47,0.11,2.2,0.048,16.0,89.0,0.99182,3.54,0.88,13.566666666666698,7 +9.9,0.5,0.5,13.8,0.205,48.0,82.0,1.00242,3.16,0.75,8.8,5 +5.3,0.47,0.11,2.2,0.048,16.0,89.0,0.99182,3.54,0.88,13.6,7 +7.1,0.875,0.05,5.7,0.08199999999999999,3.0,14.0,0.99808,3.4,0.52,10.2,3 +8.2,0.28,0.6,3.0,0.10400000000000001,10.0,22.0,0.99828,3.39,0.68,10.6,5 +5.6,0.62,0.03,1.5,0.08,6.0,13.0,0.99498,3.66,0.62,10.1,4 +8.2,0.28,0.6,3.0,0.10400000000000001,10.0,22.0,0.99828,3.39,0.68,10.6,5 +7.2,0.58,0.54,2.1,0.114,3.0,9.0,0.9971899999999999,3.33,0.57,10.3,4 +8.1,0.33,0.44,1.5,0.042,6.0,12.0,0.9954200000000001,3.35,0.61,10.7,5 +6.8,0.91,0.06,2.0,0.06,4.0,11.0,0.99592,3.53,0.64,10.9,4 +7.0,0.655,0.16,2.1,0.07400000000000001,8.0,25.0,0.9960600000000001,3.37,0.55,9.7,5 +6.8,0.68,0.21,2.1,0.07,9.0,23.0,0.99546,3.38,0.6,10.3,5 +6.0,0.64,0.05,1.9,0.066,9.0,17.0,0.9949600000000001,3.52,0.78,10.6,5 +5.6,0.54,0.04,1.7,0.049,5.0,13.0,0.9942,3.72,0.58,11.4,5 +6.2,0.57,0.1,2.1,0.048,4.0,11.0,0.9944799999999999,3.44,0.76,10.8,6 +7.1,0.22,0.49,1.8,0.039,8.0,18.0,0.99344,3.39,0.56,12.4,6 +5.6,0.54,0.04,1.7,0.049,5.0,13.0,0.9942,3.72,0.58,11.4,5 +6.2,0.65,0.06,1.6,0.05,6.0,18.0,0.9934799999999999,3.57,0.54,11.95,5 +7.7,0.54,0.26,1.9,0.08900000000000001,23.0,147.0,0.99636,3.26,0.59,9.7,5 +6.4,0.31,0.09,1.4,0.066,15.0,28.0,0.99459,3.42,0.7,10.0,7 +7.0,0.43,0.02,1.9,0.08,15.0,28.0,0.99492,3.35,0.81,10.6,6 +7.7,0.54,0.26,1.9,0.08900000000000001,23.0,147.0,0.99636,3.26,0.59,9.7,5 +6.9,0.74,0.03,2.3,0.054000000000000006,7.0,16.0,0.99508,3.45,0.63,11.5,6 +6.6,0.895,0.04,2.3,0.068,7.0,13.0,0.99582,3.53,0.58,10.8,6 +6.9,0.74,0.03,2.3,0.054000000000000006,7.0,16.0,0.99508,3.45,0.63,11.5,6 +7.5,0.725,0.04,1.5,0.076,8.0,15.0,0.99508,3.26,0.53,9.6,5 +7.8,0.82,0.29,4.3,0.083,21.0,64.0,0.9964200000000001,3.16,0.53,9.4,5 +7.3,0.585,0.18,2.4,0.078,15.0,60.0,0.9963799999999999,3.31,0.54,9.8,5 +6.2,0.44,0.39,2.5,0.077,6.0,14.0,0.99555,3.51,0.69,11.0,6 +7.5,0.38,0.57,2.3,0.106,5.0,12.0,0.99605,3.36,0.55,11.4,6 +6.7,0.76,0.02,1.8,0.078,6.0,12.0,0.996,3.55,0.63,9.95,3 +6.8,0.81,0.05,2.0,0.07,6.0,14.0,0.9956200000000001,3.51,0.66,10.8,6 +7.5,0.38,0.57,2.3,0.106,5.0,12.0,0.99605,3.36,0.55,11.4,6 +7.1,0.27,0.6,2.1,0.07400000000000001,17.0,25.0,0.9981399999999999,3.38,0.72,10.6,6 +7.9,0.18,0.4,1.8,0.062,7.0,20.0,0.9941,3.28,0.7,11.1,5 +6.4,0.36,0.21,2.2,0.047,26.0,48.0,0.99661,3.47,0.77,9.7,6 +7.1,0.69,0.04,2.1,0.068,19.0,27.0,0.9971200000000001,3.44,0.67,9.8,5 +6.4,0.79,0.04,2.2,0.061,11.0,17.0,0.9958799999999999,3.53,0.65,10.4,6 +6.4,0.56,0.15,1.8,0.078,17.0,65.0,0.9929399999999999,3.33,0.6,10.5,6 +6.9,0.84,0.21,4.1,0.07400000000000001,16.0,65.0,0.9984200000000001,3.53,0.72,9.23333333333333,6 +6.9,0.84,0.21,4.1,0.07400000000000001,16.0,65.0,0.9984200000000001,3.53,0.72,9.25,6 +6.1,0.32,0.25,2.3,0.071,23.0,58.0,0.9963299999999999,3.42,0.97,10.6,5 +6.5,0.53,0.06,2.0,0.063,29.0,44.0,0.9948899999999999,3.38,0.83,10.3,6 +7.4,0.47,0.46,2.2,0.114,7.0,20.0,0.9964700000000001,3.32,0.63,10.5,5 +6.6,0.7,0.08,2.6,0.106,14.0,27.0,0.99665,3.44,0.58,10.2,5 +6.5,0.53,0.06,2.0,0.063,29.0,44.0,0.9948899999999999,3.38,0.83,10.3,6 +6.9,0.48,0.2,1.9,0.08199999999999999,9.0,23.0,0.99585,3.39,0.43,9.05,4 +6.1,0.32,0.25,2.3,0.071,23.0,58.0,0.9963299999999999,3.42,0.97,10.6,5 +6.8,0.48,0.25,2.0,0.076,29.0,61.0,0.9953,3.34,0.6,10.4,5 +6.0,0.42,0.19,2.0,0.075,22.0,47.0,0.9952200000000001,3.39,0.78,10.0,6 +6.7,0.48,0.08,2.1,0.064,18.0,34.0,0.9955200000000001,3.33,0.64,9.7,5 +6.8,0.47,0.08,2.2,0.064,18.0,38.0,0.9955299999999999,3.3,0.65,9.6,6 +7.1,0.53,0.07,1.7,0.071,15.0,24.0,0.9951,3.29,0.66,10.8,6 +7.9,0.29,0.49,2.2,0.096,21.0,59.0,0.9971399999999999,3.31,0.67,10.1,6 +7.1,0.69,0.08,2.1,0.063,42.0,52.0,0.99608,3.42,0.6,10.2,6 +6.6,0.44,0.09,2.2,0.063,9.0,18.0,0.99444,3.42,0.69,11.3,6 +6.1,0.705,0.1,2.8,0.081,13.0,28.0,0.99631,3.6,0.66,10.2,5 +7.2,0.53,0.13,2.0,0.057999999999999996,18.0,22.0,0.9957299999999999,3.21,0.68,9.9,6 +8.0,0.39,0.3,1.9,0.07400000000000001,32.0,84.0,0.9971700000000001,3.39,0.61,9.0,5 +6.6,0.56,0.14,2.4,0.064,13.0,29.0,0.99397,3.42,0.62,11.7,7 +7.0,0.55,0.13,2.2,0.075,15.0,35.0,0.9959,3.36,0.59,9.7,6 +6.1,0.53,0.08,1.9,0.077,24.0,45.0,0.9952799999999999,3.6,0.68,10.3,6 +5.4,0.58,0.08,1.9,0.059000000000000004,20.0,31.0,0.99484,3.5,0.64,10.2,6 +6.2,0.64,0.09,2.5,0.081,15.0,26.0,0.9953799999999999,3.57,0.63,12.0,5 +7.2,0.39,0.32,1.8,0.065,34.0,60.0,0.9971399999999999,3.46,0.78,9.9,5 +6.2,0.52,0.08,4.4,0.071,11.0,32.0,0.99646,3.56,0.63,11.6,6 +7.4,0.25,0.29,2.2,0.054000000000000006,19.0,49.0,0.99666,3.4,0.76,10.9,7 +6.7,0.855,0.02,1.9,0.064,29.0,38.0,0.99472,3.3,0.56,10.75,6 +11.1,0.44,0.42,2.2,0.064,14.0,19.0,0.9975799999999999,3.25,0.57,10.4,6 +8.4,0.37,0.43,2.3,0.063,12.0,19.0,0.9955,3.17,0.81,11.2,7 +6.5,0.63,0.33,1.8,0.059000000000000004,16.0,28.0,0.99531,3.36,0.64,10.1,6 +7.0,0.57,0.02,2.0,0.07200000000000001,17.0,26.0,0.99575,3.36,0.61,10.2,5 +6.3,0.6,0.1,1.6,0.048,12.0,26.0,0.99306,3.55,0.51,12.1,5 +11.2,0.4,0.5,2.0,0.099,19.0,50.0,0.9978299999999999,3.1,0.58,10.4,5 +7.4,0.36,0.3,1.8,0.07400000000000001,17.0,24.0,0.99419,3.24,0.7,11.4,8 +7.1,0.68,0.0,2.3,0.087,17.0,26.0,0.9978299999999999,3.45,0.53,9.5,5 +7.1,0.67,0.0,2.3,0.083,18.0,27.0,0.9976799999999999,3.44,0.54,9.4,5 +6.3,0.68,0.01,3.7,0.10300000000000001,32.0,54.0,0.9958600000000001,3.51,0.66,11.3,6 +7.3,0.735,0.0,2.2,0.08,18.0,28.0,0.99765,3.41,0.6,9.4,5 +6.6,0.855,0.02,2.4,0.062,15.0,23.0,0.9962700000000001,3.54,0.6,11.0,6 +7.0,0.56,0.17,1.7,0.065,15.0,24.0,0.9951399999999999,3.44,0.68,10.55,7 +6.6,0.88,0.04,2.2,0.066,12.0,20.0,0.99636,3.53,0.56,9.9,5 +6.6,0.855,0.02,2.4,0.062,15.0,23.0,0.9962700000000001,3.54,0.6,11.0,6 +6.9,0.63,0.33,6.7,0.235,66.0,115.0,0.99787,3.22,0.56,9.5,5 +7.8,0.6,0.26,2.0,0.08,31.0,131.0,0.9962200000000001,3.21,0.52,9.9,5 +7.8,0.6,0.26,2.0,0.08,31.0,131.0,0.9962200000000001,3.21,0.52,9.9,5 +7.8,0.6,0.26,2.0,0.08,31.0,131.0,0.9962200000000001,3.21,0.52,9.9,5 +7.2,0.695,0.13,2.0,0.076,12.0,20.0,0.99546,3.29,0.54,10.1,5 +7.2,0.695,0.13,2.0,0.076,12.0,20.0,0.99546,3.29,0.54,10.1,5 +7.2,0.695,0.13,2.0,0.076,12.0,20.0,0.99546,3.29,0.54,10.1,5 +6.7,0.67,0.02,1.9,0.061,26.0,42.0,0.9948899999999999,3.39,0.82,10.9,6 +6.7,0.16,0.64,2.1,0.059000000000000004,24.0,52.0,0.9949399999999999,3.34,0.71,11.2,6 +7.2,0.695,0.13,2.0,0.076,12.0,20.0,0.99546,3.29,0.54,10.1,5 +7.0,0.56,0.13,1.6,0.077,25.0,42.0,0.99629,3.34,0.59,9.2,5 +6.2,0.51,0.14,1.9,0.055999999999999994,15.0,34.0,0.9939600000000001,3.48,0.57,11.5,6 +6.4,0.36,0.53,2.2,0.23,19.0,35.0,0.9934,3.37,0.93,12.4,6 +6.4,0.38,0.14,2.2,0.038,15.0,25.0,0.9951399999999999,3.44,0.65,11.1,6 +7.3,0.69,0.32,2.2,0.069,35.0,104.0,0.9963200000000001,3.33,0.51,9.5,5 +6.0,0.58,0.2,2.4,0.075,15.0,50.0,0.99467,3.58,0.67,12.5,6 +5.6,0.31,0.78,13.9,0.07400000000000001,23.0,92.0,0.99677,3.39,0.48,10.5,6 +7.5,0.52,0.4,2.2,0.06,12.0,20.0,0.99474,3.26,0.64,11.8,6 +8.0,0.3,0.63,1.6,0.081,16.0,29.0,0.9958799999999999,3.3,0.78,10.8,6 +6.2,0.7,0.15,5.1,0.076,13.0,27.0,0.9962200000000001,3.54,0.6,11.9,6 +6.8,0.67,0.15,1.8,0.11800000000000001,13.0,20.0,0.9954,3.42,0.67,11.3,6 +6.2,0.56,0.09,1.7,0.053,24.0,32.0,0.9940200000000001,3.54,0.6,11.3,5 +7.4,0.35,0.33,2.4,0.068,9.0,26.0,0.9947,3.36,0.6,11.9,6 +6.2,0.56,0.09,1.7,0.053,24.0,32.0,0.9940200000000001,3.54,0.6,11.3,5 +6.1,0.715,0.1,2.6,0.053,13.0,27.0,0.9936200000000001,3.57,0.5,11.9,5 +6.2,0.46,0.29,2.1,0.07400000000000001,32.0,98.0,0.9957799999999999,3.33,0.62,9.8,5 +6.7,0.32,0.44,2.4,0.061,24.0,34.0,0.99484,3.29,0.8,11.6,7 +7.2,0.39,0.44,2.6,0.066,22.0,48.0,0.9949399999999999,3.3,0.84,11.5,6 +7.5,0.31,0.41,2.4,0.065,34.0,60.0,0.99492,3.34,0.85,11.4,6 +5.8,0.61,0.11,1.8,0.066,18.0,28.0,0.9948299999999999,3.55,0.66,10.9,6 +7.2,0.66,0.33,2.5,0.068,34.0,102.0,0.9941399999999999,3.27,0.78,12.8,6 +6.6,0.725,0.2,7.8,0.073,29.0,79.0,0.9977,3.29,0.54,9.2,5 +6.3,0.55,0.15,1.8,0.077,26.0,35.0,0.9931399999999999,3.32,0.82,11.6,6 +5.4,0.74,0.09,1.7,0.08900000000000001,16.0,26.0,0.9940200000000001,3.67,0.56,11.6,6 +6.3,0.51,0.13,2.3,0.076,29.0,40.0,0.99574,3.42,0.75,11.0,6 +6.8,0.62,0.08,1.9,0.068,28.0,38.0,0.99651,3.42,0.82,9.5,6 +6.2,0.6,0.08,2.0,0.09,32.0,44.0,0.9949,3.45,0.58,10.5,5 +5.9,0.55,0.1,2.2,0.062,39.0,51.0,0.9951200000000001,3.52,0.76,11.2,6 +6.3,0.51,0.13,2.3,0.076,29.0,40.0,0.99574,3.42,0.75,11.0,6 +5.9,0.645,0.12,2.0,0.075,32.0,44.0,0.9954700000000001,3.57,0.71,10.2,5 +6.0,0.31,0.47,3.6,0.067,18.0,42.0,0.99549,3.39,0.66,11.0,6 diff --git a/lib.py b/lib.py new file mode 100644 index 0000000..08a64b9 --- /dev/null +++ b/lib.py @@ -0,0 +1,321 @@ +""" +References: + 1. AIC definition: Wikipedia - Akaike information criterion + [LINK] https://en.wikipedia.org/wiki/Akaike_information_criterion + 2. Log likelihood formula - StatLect "Log-likelihood" + [LINK] https://www.statlect.com/glossary/log-likelihood + 3. R2 score formula: Wikipedia - Coefficient of determination + [LINK] https://en.wikipedia.org/wiki/Coefficient_of_determination +""" +import csv +import json +import re +import numpy as np +import matplotlib.pyplot as plt +from sklearn.linear_model import * +from datetime import datetime + +# Collection of auxiliary functions + +""" + Parameter setting read +""" + + +def get_param(file_path: str) -> dict: + """ + get_param() + This function reads parameter settings from a JSON file. + :param file_path: Path to the JSON file containing parameter settings. + :return: A dictionary of parameters. + """ + with open(file_path, "r", encoding="utf-8") as file: + return json.load(file) + + +""" + Model selection functions +""" + + +def get_model(model_type: str): + """ + get_model() + This function returns a model object based on the given model_type. + If an invalid model_type is provided, it defaults to LinearRegression. + :param model_type: The type of model to use. Options: "LinearRegression" (default), "LogisticRegression". + :return: A model object. + """ + print(f"Model Type: {model_type}") + + if model_type == "LinearRegression": + return LinearRegression() + elif model_type == "LogisticRegression": + return LogisticRegression(max_iter=1000) + else: # Invalid type described + print(f"[Warning] Invalid model type given. Defaulting to 'LinearRegression'.") + return LinearRegression() + + +def get_metric(metric_type: str): + """ + get_metric() + This function returns the metric function corresponding to the given metric_type. + Defaults to MSE if an invalid type is provided. + :param metric_type: The type of metric to use. Options: "MSE" (default), "Accuracy score", "R2". + :return: A metric function. + """ + print(f"Metric Type: {metric_type}") + + if metric_type == "MSE": + return MSE + elif metric_type == "Accuracy score": + return accuracy_score + elif metric_type == "R2": + return R2 + else: # Invalid type described + print(f"[Warning] Invalid metric type given. Defaulting to 'MSE'.") + return MSE + + +""" + Data import and generation functions +""" + + +def read_csv(file_path: str, test_ratio: float) -> tuple: + """ + read_csv() + This function reads data from a CSV file and splits it into training and test sets. + :param file_path: The path of the CSV file to read. + :param test_ratio: The proportion of data to use for the test set. + :return: A tuple containing the full dataset (X, y) and the split datasets (train_X, train_y, test_X, test_y). + """ + data = np.loadtxt(file_path, delimiter=',', skiprows=1) # Skip the header row + + X = data[:, :-1] + y = data[:, -1] + + # Split dataset into train and test + train_X, train_y, test_X, test_y = split_dataset(X, y, test_ratio) + return X, y, train_X, train_y, test_X, test_y + + +def generate_data(size: int, dimension: int, correlation: float, noise_std: float, random_state: int, + test_ratio: float) -> tuple: + """ + generate_data() + This function generates synthetic data with multi-collinearity, designed for testing models like ElasticNet. + :param size: Number of samples to generate. + :param dimension: Number of features to generate. + :param correlation: Correlation coefficient between features (1 indicates perfect correlation). + :param noise_std: Standard deviation of noise added to the data. + :param random_state: Random seed for reproducibility. + :param test_ratio: The proportion of data to use for the test set. + :return: A tuple containing the full dataset (X, y) and the split datasets (train_X, train_y, test_X, test_y). + """ + if random_state: + np.random.seed(random_state) + + # Generate the base feature + X_base = np.random.rand(size, 1) + + # Create correlated features + X = X_base + correlation * np.random.randn(size, dimension) * noise_std + + # Increase the correlation between each feature (e.g. through linear combination) + for i in range(1, dimension): + X[:, i] = correlation * X_base[:, 0] + (1 - correlation) * np.random.randn(size) + + # Generate weights, bias, and noise + weights = np.random.randn(dimension) + bias = np.random.rand() + noise_std = np.random.normal(0, noise_std, size=size) + + # Create the target variable y + y = X.dot(weights) + bias + (bias + noise_std) + + # Split dataset into train and test + train_X, train_y, test_X, test_y = split_dataset(X, y, test_ratio) + return X, y, train_X, train_y, test_X, test_y + + +def split_dataset(X: np.ndarray, y: np.ndarray, test_ratio: float) -> tuple: + """ + split_dataset() + This function splits the dataset into training and test sets based on the given test_ratio. + :param X: Features. + :param y: Labels. + :param test_ratio: Proportion of the dataset to use as the test set. + :return: Training and test sets (train_X, train_y, test_X, test_y). + """ + # Split data into train and test + test_size = int(test_ratio * X.shape[0]) + train_X, test_X = X[:test_size], X[test_size:] + train_y, test_y = y[:test_size], y[test_size:] + return train_X, train_y, test_X, test_y + + +def get_data(data_type: str, args: dict) -> tuple: + """ + get_data() + This function loads or generates a dataset based on the data_type. + :param data_type: The type of dataset to use. Options: "file" (from CSV) or "generate" (synthetic data). + :param args: Arguments specific to the chosen data type. + :return: Dataset tuples (X, y, train_X, train_y, test_X, test_y). + """ + if data_type == 'file': + return read_csv(**args) + else: # Default to generated data + return generate_data(**args) + + +""" + Metric functions +""" + + +def MSE(y: np.ndarray, y_pred: np.ndarray) -> float: + """ + MSE() + This function calculates the Mean Squared Error (MSE) between actual and predicted values. + :param y: Actual values. + :param y_pred: Predicted values. + :return: Mean Squared Error. + """ + return float(np.mean((y - y_pred) ** 2)) + + +def accuracy_score(y: np.ndarray, y_pred: np.ndarray) -> float: + """ + accuracy_score() + This function calculates the accuracy score for classification tasks. + :param y: Actual labels. + :param y_pred: Predicted labels. + :return: Accuracy score. + """ + return float(np.sum(y == y_pred) / len(y)) + + +def AIC(y: np.ndarray, X: np.ndarray, y_pred: np.ndarray): + """ + AIC() + This function computes the Akaike Information Criterion (AIC) for the given model. + Formula used: + * Refer to above references + log-likelihood = - n/2*log(2*π) - n/2*log(MSE) - n/2 + AIC = 2*k - 2*(log-likelihood) + = - (∑((y_i - y_pred_i)²) / ∑((y_i - y_mean)²)) + :param y: Actual values. + :param X: Feature matrix. + :param y_pred: Predicted values. + :return: AIC value. + """ + # Number of samples and features + n = X.shape[0] + k = X.shape[1] + 1 # Include residual as a parameter + + # compute Log-likelihood + log_likelihood = - n / 2 * np.log(2 * np.pi) - n / 2 - n * np.log(MSE(y, y_pred)) / 2 + + # Return AIC value + return 2 * k - 2 * log_likelihood + + +def R2(y: np.ndarray, y_pred: np.ndarray) -> float: + """ + R2() + This function calculates the R² score (coefficient of determination) for regression models. + Formula used: + R² = 1 - (∑((y_i - y_pred_i)²) / ∑((y_i - y_mean)²)) + where: + y_i : actual weight of ith feature + y_pred_i : predicted weight of ith feature + y_mean : mean of the actual weight features + :param y: Actual values. + :param y_pred: Predicted values. + :return: R² score. + """ + # Average of actual weights + y_mean = np.mean(y) + r_2 = 1 - np.sum((y - y_pred) ** 2) / np.sum((y - y_mean) ** 2) # R2 = 1 - SSR/SST + return float(r_2) + + +""" + Data write & Visualization +""" + + +def visualize(data: list, target: str, feature: list): + # data: ["size", "dimension", "correlation","noise_std", "k-value","epochs","Average", "AIC"] + + # Transform into numpy array + data = np.array(data) + + # Split feature label + X = data[:, :-2] # Excluding Average, AIC + y_average = data[:, -2] # Label Average + y_AIC = data[:, -1] # Label Average + + # Pick specific feature parameter + i = feature[1] + X_i = X[:, i] + + fig, axes = plt.subplots(1, 2, figsize=(12, 6)) # 1 row, 2 columns + + # First plot: Average Score + axes[0].scatter(X_i, y_average, color='blue', label=f'Feature {feature[0]} vs Average Score') + + # Fit trend line for Average + coeffs_avg = np.polyfit(X_i, y_average, 1) # slope parameter + trend_avg = np.polyval(coeffs_avg, X_i) # trend line + + # plot graph + axes[0].plot(X_i, trend_avg, color='cyan', linestyle='--', label='Trend Line (Average)') + axes[0].set_title(f'{target} Average Score: {feature[0]}') + axes[0].set_xlabel(f'Feature {feature[0]}') + axes[0].set_ylabel('Average Score') + axes[0].legend() + axes[0].grid(True) + + # Second plot: AIC Score + axes[1].scatter(X_i, y_AIC, color='red', label=f'Feature {feature[0]} vs AIC Score') + + # Fit trend line for AIC + coeffs_aic = np.polyfit(X_i, y_AIC, 1) # slope parameter + trend_aic = np.polyval(coeffs_aic, X_i) # trend line + + # plot graph + axes[1].plot(X_i, trend_aic, color='cyan', linestyle='--', label='Trend Line (AIC)') + axes[1].set_title(f'{target} AIC Score: {feature[0]}') + axes[1].set_xlabel(f'Feature {feature[0]}') + axes[1].set_ylabel('AIC Score') + axes[1].legend() + axes[1].grid(True) + + # Adjust layout and display + plt.tight_layout() + plt.show() + + +def write(file_path: str, data: list, header: list): + """ + write() + This function writes data to a given file with a timestamped file name. + :param file_path: The original file path (string). + :param data: A list of rows to write into the CSV file. Each row is a list of values. + :param header: A list representing the header row of the given file. + """ + # Update file name - Append current time to discriminate + timestamp = datetime.now().strftime("%Y%m%d_%H%M%S") + new_path = re.sub( + r'([^/]+)\.([a-zA-Z0-9]+)$', + rf'\1_{timestamp}.\2', + file_path + ) + # Write a file to designated path + with open(new_path, "wt", newline="", encoding="utf-8") as f: + csv_writer = csv.writer(f) + csv_writer.writerow(header) + csv_writer.writerows(data) diff --git a/modelSelection.py b/modelSelection.py new file mode 100644 index 0000000..77ee7c0 --- /dev/null +++ b/modelSelection.py @@ -0,0 +1,93 @@ +from lib import * + + +def k_fold_cross_validation(model, metric, X: np.ndarray, y: np.ndarray, k: int, shuffle: bool): + """ + k_fold_cross_validation() + This function validates the model using the k-fold cross-validation method. + + :param model: The statistical model to test. + :param metric: The metric function to measure the model's performance. + :param X: The feature matrix for training. + :param y: The target labels for training. + :param k: The number of folds to divide the data into. + :param shuffle: Whether to shuffle the data before splitting into folds. + :return: A tuple containing the list of metric scores for each fold and their average score. + """ + scores = [] + n = X.shape[0] # Total number of samples + fold_size = n // k # Number of samples per fold + + if shuffle: # Shuffle the data + indices = np.arange(n) + np.random.shuffle(indices) + + X = X[indices] + y = y[indices] + + for i in range(k): + # Define the start and end indices of the current validation fold + start, end = i * fold_size, (i + 1) * fold_size + + # Extract the validation set + X_val, y_val = X[start:end], y[start:end] + + # Extract the training set by excluding the current fold + X_train = np.concatenate([X[:start], X[end:]], axis=0) + y_train = np.concatenate([y[:start], y[end:]], axis=0) + + # Train the model on the training set + model.fit(X_train, y_train) + + # Predict on the validation set + y_predicted = model.predict(X_val) + + # Calculate the score using the metric function + score = metric(y_val, y_predicted) + + # Append the score to the list + scores.append(score) + + # Return the list of scores and their average + return scores, float(np.average(scores)) + + +def bootstrapping(model, metric, X: np.ndarray, y: np.ndarray, s: int, epochs: int): + """ + bootstrapping() + This function performs bootstrapping to evaluate the model's performance. + + :param model: The statistical model to test. + :param metric: The metric function to measure the model's performance. + :param X: The feature matrix for training. + :param y: The target labels for training. + :param s: The size of the training dataset for each bootstrap sample. + :param epochs: The number of bootstrap iterations to perform. + :return: A tuple containing the list of metric scores for each iteration and their average score. + """ + scores = [] + n = X.shape[0] # Total number of samples + + for _ in range(epochs): + # Randomly sample 's(=size of sample)' indices with replacement to create the training set + indices = np.random.choice(range(n), size=s, replace=True) + X_train, y_train = X[indices], y[indices] + + # Use the remaining data as the validation set + out_of_sample = [i for i in range(n) if i not in indices] + X_val, y_val = X[out_of_sample], y[out_of_sample] + + # Train the model on the bootstrap sample + model.fit(X_train, y_train) + + # Predict on the validation set + y_pred = model.predict(X_val) + + # Calculate the score if there is any validation data + if len(out_of_sample) > 0: + score = metric(y_val, y_pred) + scores.append(score) + + # Calculate the average score across all iterations + average_score = np.mean(scores) + return scores, float(average_score) diff --git a/params/__init__.py b/params/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/params/param_bootstrap.json b/params/param_bootstrap.json new file mode 100644 index 0000000..969d74b --- /dev/null +++ b/params/param_bootstrap.json @@ -0,0 +1,77 @@ +{ + "description": "Batch test setting: bootstrapping exclusive test", + "test": { + "general": { + "activate": {"k_fold_CV": false, "bootstrapping": true}, + "model": "LinearRegression", + "metric": "R2", + "data": "generate" + }, + "k_fold_cross_validation": { + "k": [5], + "shuffle": true + }, + "bootstrapping": { + "size": [10, 50, 100], + "epochs": [10, 100, 500, 1000] + }, + "analysis": { + "visualize": { + "k_fold_CV":{ + "label_X": [], + "activate": false + }, + "bootstrapping": { + "label_X": [], + "activate": false + } + }, + "write": { + "k_fold_CV": { + "activate": false, + "header": [], + "file_path": "" + }, + "bootstrapping": { + "activate": true, + "header": ["size", "dimension", "correlation","noise_std","sample_size","epochs","Average", "AIC"], + "file_path": "./results/bootstrap_only.csv" + } + } + } +}, + "data": { + "file": [ + { + "file_path": "./data/housing.csv", + "test_ratio": 0.25 + } + ], + "generate": [ + { + "size": 500, + "dimension": 10, + "correlation": 0.0, + "noise_std": 0.2, + "random_state": 42, + "test_ratio": 0.25 + }, + { + "size": 500, + "dimension": 20, + "correlation": 0, + "noise_std": 0.5, + "random_state": 42, + "test_ratio": 0.25 + }, + { + "size": 500, + "dimension": 20, + "correlation": 0.9, + "noise_std": 0.5, + "random_state": 42, + "test_ratio": 0.25 + } + ] + } +} diff --git a/params/param_example.txt b/params/param_example.txt new file mode 100644 index 0000000..e11147d --- /dev/null +++ b/params/param_example.txt @@ -0,0 +1,134 @@ +# All user parameters can be adjusted from this file. + +""" + Test configuration +""" + +params = { + "description": "Configuration settings for testing various model selection methods.", # Description of the test configuration + "test": { + "general": { + "activate": { + "k_fold_CV": true, # Set to True to perform k-fold cross-validation. + "bootstrapping": true # Set to True to perform bootstrapping. + }, + "model": "LinearRegression", # [Options] "LinearRegression" (default), "LogisticRegression". + "metric": "MSE", # [Options] "MSE" (default), "Accuracy score", "R2". + "data": "generate", # [Options] "file", "generate". + "visualize": false, # Set to True to visualize k-fold cross-validation results (currently not implemented). + "write": false, # Set to True to write k-fold cross-validation results (currently not implemented). + "file_path": "./data/result(k_fold_CV).csv" # File path to write data. + }, + "k_fold_cross_validation": { + "k": [5], # Number of folds for k-fold cross-validation. + "shuffle": true # Whether to shuffle the data before splitting into folds. + }, + "bootstrapping": { + "size": [50], # The size of the training dataset for each bootstrap sample. + "epochs": [100] # The number of bootstrapping iterations to perform. + }, + "analysis": { + "visualize": { # visualization configuration + "k_fold_CV": { + # [Options] "size": 0, "dimension": 1, "correlation": 2, "noise_std": 3, K-value": 4 + "label_X": ["size", 0], # Selected feature to visualize + "activate": true # Set to True to visualize k-fold cross-validation. + }, + "bootstrapping": { + # [Options] "size": 0, "dimension": 1, "correlation": 2, "noise_std": 3, "sample_size": 4, "epoch": 5 + "label_X": ["size", 0], # Selected feature to visualize + "activate": false # Set to True to visualize bootstrapping. + } + }, + "write": { # file write configuration + "k_fold_CV": { + "activate": true, # Set to True to write a result file for k-fold cross-validation. + "header": ["size", "dimension", "correlation","noise_std",",K-value","shuffled", "Average", "AIC"], # Header for file. + "file_path": "./results/k_fold.csv" # Original file path + }, + "bootstrapping": { + "activate": false, # Set to True to write a result file for bootstrapping. + "header": ["size", "dimension", "correlation","noise_std", "sample_size","epochs","Average", "AIC"], # Header for file. + "file_path": "./results/bootstrap.csv" # Original file path. + } + } + } + }, + # For each data parameter "file", "generate": Single mode -> set 1 element Multiple mode -> set N elements + "data": { + # User-defined parameters for data import settings. + "file": [ + { + "file_path": "small_test.csv", # File path to load data. + "test_ratio": 0.25 # Proportion of the dataset used for the test set. + }, + ], + # User-defined parameters for synthetic data generation settings. + "generate": [ + { # Default dataset with a strict linear relationship (no noise or correlation). + "size": 100, # Number of samples to generate. + "dimension": 10, # Number of features in the dataset. + "correlation": 0, # Correlation coefficient between features (0 means no correlation). + "noise_std": 0.0, # Noise level to assess model robustness. + "random_state": 42, # Random seed for reproducibility. + "test_ratio": 0.25 # Proportion of the dataset used for the test set. + }, + { # Larger dataset with a strict linear relationship (no noise or correlation). + "size": 500, # Number of samples to generate. + "dimension": 10, # Number of features in the dataset. + "correlation": 0, # Correlation coefficient between features. + "noise_std": 0.0, # Noise level to assess model robustness. + "random_state": 42, # Random seed for reproducibility. + "test_ratio": 0.25 # Proportion of the dataset used for the test set. + }, + { # Default dataset with added noise (no correlation between features). + "size": 100, # Number of samples to generate. + "dimension": 10, # Number of features in the dataset. + "correlation": 0, # Correlation coefficient between features. + "noise_std": 0.01, # Noise level to assess model robustness. + "random_state": 42, # Random seed for reproducibility. + "test_ratio": 0.25 # Proportion of the dataset used for the test set. + }, + { # Larger dataset with added noise (no correlation between features). + "size": 500, # Number of samples to generate. + "dimension": 10, # Number of features in the dataset. + "correlation": 0, # Correlation coefficient between features. + "noise_std": 0.01, # Noise level to assess model robustness. + "random_state": 42, # Random seed for reproducibility. + "test_ratio": 0.25 # Proportion of the dataset used for the test set. + }, + { # Default dataset with a high correlation between features (no noise). + "size": 100, # Number of samples to generate. + "dimension": 10, # Number of features in the dataset. + "correlation": 0.9, # High correlation coefficient between features. + "noise_std": 0.0, # Noise level to assess model robustness. + "random_state": 42, # Random seed for reproducibility. + "test_ratio": 0.25 # Proportion of the dataset used for the test set. + }, + { # Larger dataset with a high correlation between features (no noise). + "size": 500, # Number of samples to generate. + "dimension": 10, # Number of features in the dataset. + "correlation": 0.9, # High correlation coefficient between features. + "noise_std": 0.0, # Noise level to assess model robustness. + "random_state": 42, # Random seed for reproducibility. + "test_ratio": 0.25 # Proportion of the dataset used for the test set. + }, + { # Default dataset with high correlation and added noise. + "size": 100, # Number of samples to generate. + "dimension": 10, # Number of features in the dataset. + "correlation": 0.9, # High correlation coefficient between features. + "noise_std": 0.01, # Noise level to assess model robustness. + "random_state": 42, # Random seed for reproducibility. + "test_ratio": 0.25 # Proportion of the dataset used for the test set. + }, + { # Larger dataset with high correlation and added noise. + "size": 500, # Number of samples to generate. + "dimension": 10, # Number of features in the dataset. + "correlation": 0.9, # High correlation coefficient between features. + "noise_std": 0.01, # Noise level to assess model robustness. + "random_state": 42, # Random seed for reproducibility. + "test_ratio": 0.25 # Proportion of the dataset used for the test set. + } + ] + } +} \ No newline at end of file diff --git a/params/param_k_fold.json b/params/param_k_fold.json new file mode 100644 index 0000000..36c6361 --- /dev/null +++ b/params/param_k_fold.json @@ -0,0 +1,77 @@ +{ + "description": "Batch test setting: bootstrapping exclusive test", + "test": { + "general": { + "activate": {"k_fold_CV": true, "bootstrapping": false}, + "model": "LinearRegression", + "metric": "R2", + "data": "generate" + }, + "k_fold_cross_validation": { + "k": [2,5,10,20], + "shuffle": true + }, + "bootstrapping": { + "size": [50], + "epochs": [100] + }, + "analysis": { + "visualize": { + "k_fold_CV":{ + "label_X": [], + "activate": false + }, + "bootstrapping": { + "label_X": [], + "activate": false + } + }, + "write": { + "k_fold_CV": { + "activate": true, + "header": ["size", "dimension", "correlation","noise_std","K-value","shuffled", "Average", "AIC"], + "file_path": "./results/k_fold_only.csv" + }, + "bootstrapping": { + "activate": false, + "header": [], + "file_path": "" + } + } + } + }, + "data": { + "file": [ + { + "file_path": "", + "test_ratio": 0.25 + } + ], + "generate": [ + { + "size": 500, + "dimension": 10, + "correlation": 0.0, + "noise_std": 0.2, + "random_state": 42, + "test_ratio": 0.25 + }, + { + "size": 500, + "dimension": 20, + "correlation": 0, + "noise_std": 0.5, + "random_state": 42, + "test_ratio": 0.25 + }, + { + "size": 500, + "dimension": 20, + "correlation": 0.9, + "noise_std": 0.5, + "random_state": 42, + "test_ratio": 0.25 + } + ] + } +} diff --git a/params/param_list.csv b/params/param_list.csv new file mode 100644 index 0000000..56518de --- /dev/null +++ b/params/param_list.csv @@ -0,0 +1,7 @@ +Json file name, Description +"param_single.json", "one-time test, using file to execute, no visualization, no file writing" +"param_multi.json", "batch test, create data to execute, no visualization, file writing for both model" +"param_k_fold.json", "batch test, create data to execute, no visualization, file writing for k-fold CV model" +"param_bootstrap.json", "batch test, create data to execute, no visualization, file writing for bootstrap model" +"test_size.json", "batch test, create data to execute, visualization for all, file writing for both model" +"test_correlation.json", "batch test, create data to execute, visualization for all, file writing for both model" \ No newline at end of file diff --git a/params/param_multi.json b/params/param_multi.json new file mode 100644 index 0000000..9cf0ee8 --- /dev/null +++ b/params/param_multi.json @@ -0,0 +1,173 @@ +{ + "description": "Batch test setting: mix-up test", + "test": { + "general": { + "activate": {"k_fold_CV": true, "bootstrapping": true}, + "model": "LinearRegression", + "metric": "R2", + "data": "generate" + }, + "k_fold_cross_validation": { + "k": [5], + "shuffle": true + }, + "bootstrapping": { + "size": [100], + "epochs": [100] + }, + "analysis": { + "visualize": { + "k_fold_CV":{ + "label_X": [], + "activate": false + }, + "bootstrapping": { + "label_X": [], + "activate": false + } + }, + "write": { + "k_fold_CV": { + "activate": true, + "header": ["size", "dimension", "correlation","noise_std",",K-value","shuffled", "Average", "AIC"], + "file_path": "./results/k_fold_multi.csv" + }, + "bootstrapping": { + "activate": true, + "header": ["size", "dimension", "correlation","noise_std", "sample_size","epochs","Average", "AIC"], + "file_path": "./results/bootstrap_multi.csv" + } + } + } + }, + "data": { + "file": [ + { + "file_path": "small_test.csv", + "test_ratio": 0.25 + } + ], + "generate": [ + { + "size": 100, + "dimension": 10, + "correlation": 0, + "noise_std": 0.2, + "random_state": 42, + "test_ratio": 0.25 + }, + { + "size": 300, + "dimension": 10, + "correlation": 0, + "noise_std": 0.2, + "random_state": 42, + "test_ratio": 0.25 + }, + { + "size": 500, + "dimension": 10, + "correlation": 0, + "noise_std": 0.2, + "random_state": 42, + "test_ratio": 0.25 + }, + { + "size": 1000, + "dimension": 10, + "correlation": 0, + "noise_std": 0.2, + "random_state": 42, + "test_ratio": 0.25 + }, + { + "size": 1500, + "dimension": 10, + "correlation": 0, + "noise_std": 0.2, + "random_state": 42, + "test_ratio": 0.25 + }, + { + "size": 100, + "dimension": 10, + "correlation": 0, + "noise_std": 0.5, + "random_state": 42, + "test_ratio": 0.25 + }, + { + "size": 300, + "dimension": 10, + "correlation": 0, + "noise_std": 0.5, + "random_state": 42, + "test_ratio": 0.25 + }, + { + "size": 500, + "dimension": 10, + "correlation": 0, + "noise_std": 0.5, + "random_state": 42, + "test_ratio": 0.25 + }, + { + "size": 1000, + "dimension": 10, + "correlation": 0, + "noise_std": 0.5, + "random_state": 42, + "test_ratio": 0.25 + }, + { + "size": 1500, + "dimension": 10, + "correlation": 0, + "noise_std": 0.5, + "random_state": 42, + "test_ratio": 0.25 + }, + { + "size": 100, + "dimension": 10, + "correlation": 0.9, + "noise_std": 0.5, + "random_state": 42, + "test_ratio": 0.25 + }, + { + "size": 300, + "dimension": 10, + "correlation": 0.9, + "noise_std": 0.5, + "random_state": 42, + "test_ratio": 0.25 + }, + { + "size": 500, + "dimension": 10, + "correlation": 0.9, + "noise_std": 0.5, + "random_state": 42, + "test_ratio": 0.25 + }, + { + "size": 1000, + "dimension": 10, + "correlation": 0.9, + "noise_std": 0.5, + "random_state": 42, + "test_ratio": 0.25 + }, + { + "size": 1500, + "dimension": 10, + "correlation": 0.9, + "noise_std": 0.5, + "random_state": 42, + "test_ratio": 0.25 + } + ] + } +} diff --git a/params/param_sample.jpg b/params/param_sample.jpg new file mode 100644 index 0000000..ac44402 Binary files /dev/null and b/params/param_sample.jpg differ diff --git a/params/param_single.json b/params/param_single.json new file mode 100644 index 0000000..4ae7c6e --- /dev/null +++ b/params/param_single.json @@ -0,0 +1,61 @@ +{ + "description": "Single test setting: verification test", + "test": { + "general": { + "activate": {"k_fold_CV": true, "bootstrapping": true}, + "model": "LinearRegression", + "metric": "R2", + "data": "file" + }, + "k_fold_cross_validation": { + "k": [5], + "shuffle": true + }, + "bootstrapping": { + "size": [50], + "epochs": [100] + }, + "analysis": { + "visualize": { + "k_fold_CV":{ + "label_X": [], + "activate": false + }, + "bootstrapping": { + "label_X": [], + "activate": false + } + }, + "write": { + "k_fold_CV": { + "activate": false, + "header": [], + "file_path": "./results/k_fold.csv" + }, + "bootstrapping": { + "activate": false, + "header": [], + "file_path": "./results/bootstrap.csv" + } + } + } + }, + "data": { + "file": [ + { + "file_path": "./data/housing.csv", + "test_ratio": 0.25 + } + ], + "generate": [ + { + "size": 200, + "dimension": 10, + "correlation": 0, + "noise_std": 0.01, + "random_state": 42, + "test_ratio": 0.25 + } + ] + } +} diff --git a/params/test_correlation.json b/params/test_correlation.json new file mode 100644 index 0000000..ac3381b --- /dev/null +++ b/params/test_correlation.json @@ -0,0 +1,109 @@ +{ + "description": "Batch test setting: correlation test", + "test": { + "general": { + "activate": {"k_fold_CV": true, "bootstrapping": true}, + "model": "LinearRegression", + "metric": "R2", + "data": "generate" + }, + "k_fold_cross_validation": { + "k": [5], + "shuffle": true + }, + "bootstrapping": { + "size": [100], + "epochs": [100] + }, + "analysis": { + "visualize": { + "k_fold_CV":{ + "label_X": ["correlation", 2], + "activate": true + }, + "bootstrapping": { + "label_X": ["correlation", 2], + "activate": true + } + }, + "write": { + "k_fold_CV": { + "activate": true, + "header": ["size", "dimension", "correlation","noise_std",",K-value","shuffled", "Average", "AIC"], + "file_path": "./results/k_fold_correlation.csv" + }, + "bootstrapping": { + "activate": true, + "header": ["size", "dimension", "correlation","noise_std", "sample_size","epochs","Average", "AIC"], + "file_path": "./results/bootstrap_correlation.csv" + } + } + } + }, + "data": { + "file": [ + { + "file_path": "small_test.csv", + "test_ratio": 0.25 + } + ], + "generate": [ + { + "size": 500, + "dimension": 20, + "correlation": -1, + "noise_std": 0.2, + "random_state": 42, + "test_ratio": 0.25 + }, + { + "size": 500, + "dimension": 20, + "correlation": -0.5, + "noise_std": 0.2, + "random_state": 42, + "test_ratio": 0.25 + }, + { + "size": 500, + "dimension": 20, + "correlation": -0.2, + "noise_std": 0.2, + "random_state": 42, + "test_ratio": 0.25 + }, + { + "size": 500, + "dimension": 20, + "correlation": 0, + "noise_std": 0.2, + "random_state": 42, + "test_ratio": 0.25 + }, + { + "size": 500, + "dimension": 20, + "correlation": 0.2, + "noise_std": 0.2, + "random_state": 42, + "test_ratio": 0.25 + }, + { + "size": 500, + "dimension": 20, + "correlation": 0.5, + "noise_std": 0.2, + "random_state": 42, + "test_ratio": 0.25 + }, + { + "size": 500, + "dimension": 20, + "correlation": 1, + "noise_std": 0.2, + "random_state": 42, + "test_ratio": 0.25 + } + ] + } +} diff --git a/params/test_size.json b/params/test_size.json new file mode 100644 index 0000000..1d1e48b --- /dev/null +++ b/params/test_size.json @@ -0,0 +1,141 @@ +{ + "description": "Batch test setting: size test", + "test": { + "general": { + "activate": {"k_fold_CV": true, "bootstrapping": true}, + "model": "LinearRegression", + "metric": "R2", + "data": "generate" + }, + "k_fold_cross_validation": { + "k": [5], + "shuffle": true + }, + "bootstrapping": { + "size": [100], + "epochs": [100] + }, + "analysis": { + "visualize": { + "k_fold_CV":{ + "label_X": ["size", 0], + "activate": true + }, + "bootstrapping": { + "label_X": ["size", 0], + "activate": true + } + }, + "write": { + "k_fold_CV": { + "activate": true, + "header": ["size", "dimension", "correlation","noise_std",",K-value","shuffled", "Average", "AIC"], + "file_path": "./results/k_fold_size.csv" + }, + "bootstrapping": { + "activate": true, + "header": ["size", "dimension", "correlation","noise_std", "sample_size","epochs","Average", "AIC"], + "file_path": "./results/bootstrap_size.csv" + } + } + } + }, + "data": { + "file": [ + { + "file_path": "small_test.csv", + "test_ratio": 0.25 + } + ], + "generate": [ + { + "size": 100, + "dimension": 20, + "correlation": 0, + "noise_std": 0.5, + "random_state": 42, + "test_ratio": 0.25 + }, + { + "size": 200, + "dimension": 20, + "correlation": 0, + "noise_std": 0.5, + "random_state": 42, + "test_ratio": 0.25 + }, + { + "size": 400, + "dimension": 20, + "correlation": 0, + "noise_std": 0.5, + "random_state": 42, + "test_ratio": 0.25 + }, + { + "size": 600, + "dimension": 20, + "correlation": 0, + "noise_std": 0.5, + "random_state": 42, + "test_ratio": 0.25 + }, + { + "size": 800, + "dimension": 20, + "correlation": 0, + "noise_std": 0.5, + "random_state": 42, + "test_ratio": 0.25 + }, + { + "size": 1000, + "dimension": 20, + "correlation": 0, + "noise_std": 0.5, + "random_state": 42, + "test_ratio": 0.25 + }, + { + "size": 1200, + "dimension": 20, + "correlation": 0, + "noise_std": 0.5, + "random_state": 42, + "test_ratio": 0.25 + }, + { + "size": 1400, + "dimension": 20, + "correlation": 0, + "noise_std": 0.5, + "random_state": 42, + "test_ratio": 0.25 + }, + { + "size": 1600, + "dimension": 20, + "correlation": 0, + "noise_std": 0.5, + "random_state": 42, + "test_ratio": 0.25 + }, + { + "size": 1800, + "dimension": 20, + "correlation": 0, + "noise_std": 0.5, + "random_state": 42, + "test_ratio": 0.25 + }, + { + "size": 2000, + "dimension": 20, + "correlation": 0, + "noise_std": 0.5, + "random_state": 42, + "test_ratio": 0.25 + } + ] + } +} diff --git a/results/__init__.py b/results/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/results/bootstrap_correlation_20241121_224255.csv b/results/bootstrap_correlation_20241121_224255.csv new file mode 100644 index 0000000..b76e6f4 --- /dev/null +++ b/results/bootstrap_correlation_20241121_224255.csv @@ -0,0 +1,8 @@ +size,dimension,correlation,noise_std,sample_size,epochs,Average,AIC +500,20,-1,0.2,100,100,0.99924,-34.03736 +500,20,-0.5,0.2,100,100,0.99861,-31.38833 +500,20,-0.2,0.2,100,100,0.99779,-29.45754 +500,20,0,0.2,100,100,0.99679,-28.42249 +500,20,0.2,0.2,100,100,0.99503,-27.75247 +500,20,0.5,0.2,100,100,0.98914,-27.45885 +500,20,1,0.2,100,100,0.98707,-45.28588 diff --git a/results/bootstrap_multi_20241121_223206.csv b/results/bootstrap_multi_20241121_223206.csv new file mode 100644 index 0000000..ca2120a --- /dev/null +++ b/results/bootstrap_multi_20241121_223206.csv @@ -0,0 +1,16 @@ +size,dimension,correlation,noise_std,sample_size,epochs,Average,AIC +100,10,0,0.2,100,100,0.99474,33.05934 +300,10,0,0.2,100,100,0.99752,11.91807 +500,10,0,0.2,100,100,0.99173,-138.09457 +1000,10,0,0.2,100,100,0.997,-213.65013 +1500,10,0,0.2,100,100,0.99307,-310.61805 +100,10,0,0.5,100,100,0.96781,170.50295 +300,10,0,0.5,100,100,0.98469,424.2489 +500,10,0,0.5,100,100,0.95099,549.12348 +1000,10,0,0.5,100,100,0.98151,1160.78597 +1500,10,0,0.5,100,100,0.95786,1751.03609 +100,10,0.9,0.5,100,100,0.59771,135.05026 +300,10,0.9,0.5,100,100,0.62306,433.45459 +500,10,0.9,0.5,100,100,0.20792,547.59655 +1000,10,0.9,0.5,100,100,0.42587,1191.05533 +1500,10,0.9,0.5,100,100,0.67753,1764.45993 diff --git a/results/bootstrap_only_20241121_223549.csv b/results/bootstrap_only_20241121_223549.csv new file mode 100644 index 0000000..c13e5c6 --- /dev/null +++ b/results/bootstrap_only_20241121_223549.csv @@ -0,0 +1,37 @@ +size,dimension,correlation,noise_std,sample_size,epochs,Average,AIC +500,10,0.0,0.2,10,10,0.81917,-138.09457 +500,10,0.0,0.2,10,100,0.2996,-138.09457 +500,10,0.0,0.2,10,500,0.54963,-138.09457 +500,10,0.0,0.2,10,1000,0.66441,-138.09457 +500,10,0.0,0.2,50,10,0.99095,-138.09457 +500,10,0.0,0.2,50,100,0.99061,-138.09457 +500,10,0.0,0.2,50,500,0.99051,-138.09457 +500,10,0.0,0.2,50,1000,0.99062,-138.09457 +500,10,0.0,0.2,100,10,0.99168,-138.09457 +500,10,0.0,0.2,100,100,0.99183,-138.09457 +500,10,0.0,0.2,100,500,0.99172,-138.09457 +500,10,0.0,0.2,100,1000,0.99173,-138.09457 +500,20,0,0.5,10,10,0.38235,658.79556 +500,20,0,0.5,10,100,0.35251,658.79556 +500,20,0,0.5,10,500,0.37423,658.79556 +500,20,0,0.5,10,1000,0.3654,658.79556 +500,20,0,0.5,50,10,0.97461,658.79556 +500,20,0,0.5,50,100,0.9727,658.79556 +500,20,0,0.5,50,500,0.97277,658.79556 +500,20,0,0.5,50,1000,0.97302,658.79556 +500,20,0,0.5,100,10,0.98051,658.79556 +500,20,0,0.5,100,100,0.98045,658.79556 +500,20,0,0.5,100,500,0.98056,658.79556 +500,20,0,0.5,100,1000,0.98055,658.79556 +500,20,0.9,0.5,10,10,0.72746,659.58656 +500,20,0.9,0.5,10,100,0.73195,659.58656 +500,20,0.9,0.5,10,500,0.73904,659.58656 +500,20,0.9,0.5,10,1000,0.73716,659.58656 +500,20,0.9,0.5,50,10,0.85257,659.58656 +500,20,0.9,0.5,50,100,0.84448,659.58656 +500,20,0.9,0.5,50,500,0.84277,659.58656 +500,20,0.9,0.5,50,1000,0.84468,659.58656 +500,20,0.9,0.5,100,10,0.88649,659.58656 +500,20,0.9,0.5,100,100,0.88838,659.58656 +500,20,0.9,0.5,100,500,0.88795,659.58656 +500,20,0.9,0.5,100,1000,0.88828,659.58656 diff --git a/results/bootstrap_size_20241121_223627.csv b/results/bootstrap_size_20241121_223627.csv new file mode 100644 index 0000000..615a568 --- /dev/null +++ b/results/bootstrap_size_20241121_223627.csv @@ -0,0 +1,12 @@ +size,dimension,correlation,noise_std,sample_size,epochs,Average,AIC +100,20,0,0.5,100,100,0.99009,325.88227 +200,20,0,0.5,100,100,0.98571,304.20335 +400,20,0,0.5,100,100,0.96926,576.16542 +600,20,0,0.5,100,100,0.97701,753.65466 +800,20,0,0.5,100,100,0.98374,940.41912 +1000,20,0,0.5,100,100,0.97635,1283.88961 +1200,20,0,0.5,100,100,0.98545,1389.68987 +1400,20,0,0.5,100,100,0.98049,1642.38338 +1600,20,0,0.5,100,100,0.98741,1849.34666 +1800,20,0,0.5,100,100,0.9842,2073.95065 +2000,20,0,0.5,100,100,0.9876,2399.02033 diff --git a/results/bootstrap_size_20241122_004501.csv b/results/bootstrap_size_20241122_004501.csv new file mode 100644 index 0000000..615a568 --- /dev/null +++ b/results/bootstrap_size_20241122_004501.csv @@ -0,0 +1,12 @@ +size,dimension,correlation,noise_std,sample_size,epochs,Average,AIC +100,20,0,0.5,100,100,0.99009,325.88227 +200,20,0,0.5,100,100,0.98571,304.20335 +400,20,0,0.5,100,100,0.96926,576.16542 +600,20,0,0.5,100,100,0.97701,753.65466 +800,20,0,0.5,100,100,0.98374,940.41912 +1000,20,0,0.5,100,100,0.97635,1283.88961 +1200,20,0,0.5,100,100,0.98545,1389.68987 +1400,20,0,0.5,100,100,0.98049,1642.38338 +1600,20,0,0.5,100,100,0.98741,1849.34666 +1800,20,0,0.5,100,100,0.9842,2073.95065 +2000,20,0,0.5,100,100,0.9876,2399.02033 diff --git a/results/correlation_test_bootstrapping.png b/results/correlation_test_bootstrapping.png new file mode 100644 index 0000000..3432763 Binary files /dev/null and b/results/correlation_test_bootstrapping.png differ diff --git a/results/correlation_test_k_fold.png b/results/correlation_test_k_fold.png new file mode 100644 index 0000000..203fc85 Binary files /dev/null and b/results/correlation_test_k_fold.png differ diff --git a/results/execution_sample.jpg b/results/execution_sample.jpg new file mode 100644 index 0000000..de486a2 Binary files /dev/null and b/results/execution_sample.jpg differ diff --git a/results/k_fold_correlation_20241121_224255.csv b/results/k_fold_correlation_20241121_224255.csv new file mode 100644 index 0000000..4720698 --- /dev/null +++ b/results/k_fold_correlation_20241121_224255.csv @@ -0,0 +1,8 @@ +size,dimension,correlation,noise_std,",K-value",shuffled,Average,AIC +500,20,-1,0.2,5,True,0.99939,-34.03736 +500,20,-0.5,0.2,5,True,0.99888,-31.38833 +500,20,-0.2,0.2,5,True,0.99821,-29.45754 +500,20,0,0.2,5,True,0.9974,-28.42249 +500,20,0.2,0.2,5,True,0.99598,-27.75247 +500,20,0.5,0.2,5,True,0.99119,-27.45885 +500,20,1,0.2,5,True,0.98725,-45.28588 diff --git a/results/k_fold_multi_20241121_223206.csv b/results/k_fold_multi_20241121_223206.csv new file mode 100644 index 0000000..48c52bb --- /dev/null +++ b/results/k_fold_multi_20241121_223206.csv @@ -0,0 +1,16 @@ +size,dimension,correlation,noise_std,",K-value",shuffled,Average,AIC +100,10,0,0.2,5,True,0.99425,33.05934 +300,10,0,0.2,5,True,0.99766,11.91807 +500,10,0,0.2,5,True,0.99264,-138.09457 +1000,10,0,0.2,5,True,0.99725,-213.65013 +1500,10,0,0.2,5,True,0.99378,-310.61805 +100,10,0,0.5,5,True,0.96466,170.50295 +300,10,0,0.5,5,True,0.98559,424.2489 +500,10,0,0.5,5,True,0.95624,549.12348 +1000,10,0,0.5,5,True,0.98311,1160.78597 +1500,10,0,0.5,5,True,0.96219,1751.03609 +100,10,0.9,0.5,5,True,0.64541,135.05026 +300,10,0.9,0.5,5,True,0.6541,433.45459 +500,10,0.9,0.5,5,True,0.27809,547.59655 +1000,10,0.9,0.5,5,True,0.47859,1191.05533 +1500,10,0.9,0.5,5,True,0.71067,1764.45993 diff --git a/results/k_fold_only_20241121_223216.csv b/results/k_fold_only_20241121_223216.csv new file mode 100644 index 0000000..4d58a5a --- /dev/null +++ b/results/k_fold_only_20241121_223216.csv @@ -0,0 +1,13 @@ +size,dimension,correlation,noise_std,K-value,shuffled,Average,AIC +500,10,0.0,0.2,2,True,0.99267,-138.09457 +500,10,0.0,0.2,5,True,0.99222,-138.09457 +500,10,0.0,0.2,10,True,0.99218,-138.09457 +500,10,0.0,0.2,20,True,0.99192,-138.09457 +500,20,0,0.5,2,True,0.98319,658.79556 +500,20,0,0.5,5,True,0.9842,658.79556 +500,20,0,0.5,10,True,0.98403,658.79556 +500,20,0,0.5,20,True,0.98348,658.79556 +500,20,0.9,0.5,2,True,0.9037,659.58656 +500,20,0.9,0.5,5,True,0.90708,659.58656 +500,20,0.9,0.5,10,True,0.90721,659.58656 +500,20,0.9,0.5,20,True,0.9018,659.58656 diff --git a/results/k_fold_size_20241121_223627.csv b/results/k_fold_size_20241121_223627.csv new file mode 100644 index 0000000..79553af --- /dev/null +++ b/results/k_fold_size_20241121_223627.csv @@ -0,0 +1,12 @@ +size,dimension,correlation,noise_std,",K-value",shuffled,Average,AIC +100,20,0,0.5,5,True,0.99055,325.88227 +200,20,0,0.5,5,True,0.987,304.20335 +400,20,0,0.5,5,True,0.97604,576.16542 +600,20,0,0.5,5,True,0.98099,753.65466 +800,20,0,0.5,5,True,0.98664,940.41912 +1000,20,0,0.5,5,True,0.98123,1283.88961 +1200,20,0,0.5,5,True,0.98824,1389.68987 +1400,20,0,0.5,5,True,0.98447,1642.38338 +1600,20,0,0.5,5,True,0.98977,1849.34666 +1800,20,0,0.5,5,True,0.98749,2073.95065 +2000,20,0,0.5,5,True,0.99003,2399.02033 diff --git a/results/k_fold_size_20241122_004501.csv b/results/k_fold_size_20241122_004501.csv new file mode 100644 index 0000000..79553af --- /dev/null +++ b/results/k_fold_size_20241122_004501.csv @@ -0,0 +1,12 @@ +size,dimension,correlation,noise_std,",K-value",shuffled,Average,AIC +100,20,0,0.5,5,True,0.99055,325.88227 +200,20,0,0.5,5,True,0.987,304.20335 +400,20,0,0.5,5,True,0.97604,576.16542 +600,20,0,0.5,5,True,0.98099,753.65466 +800,20,0,0.5,5,True,0.98664,940.41912 +1000,20,0,0.5,5,True,0.98123,1283.88961 +1200,20,0,0.5,5,True,0.98824,1389.68987 +1400,20,0,0.5,5,True,0.98447,1642.38338 +1600,20,0,0.5,5,True,0.98977,1849.34666 +1800,20,0,0.5,5,True,0.98749,2073.95065 +2000,20,0,0.5,5,True,0.99003,2399.02033 diff --git a/results/multi-test_bootstrapping.jpg b/results/multi-test_bootstrapping.jpg new file mode 100644 index 0000000..49c0af7 Binary files /dev/null and b/results/multi-test_bootstrapping.jpg differ diff --git a/results/multi-test_k_fold.jpg b/results/multi-test_k_fold.jpg new file mode 100644 index 0000000..d09c64c Binary files /dev/null and b/results/multi-test_k_fold.jpg differ diff --git a/results/size-test-file_created.jpg b/results/size-test-file_created.jpg new file mode 100644 index 0000000..e2366c5 Binary files /dev/null and b/results/size-test-file_created.jpg differ diff --git a/results/size-test.jpg b/results/size-test.jpg new file mode 100644 index 0000000..2cc435f Binary files /dev/null and b/results/size-test.jpg differ diff --git a/results/size_test_bootstrapping.png b/results/size_test_bootstrapping.png new file mode 100644 index 0000000..c0eec85 Binary files /dev/null and b/results/size_test_bootstrapping.png differ diff --git a/results/size_test_k_fold.png b/results/size_test_k_fold.png new file mode 100644 index 0000000..b3717a1 Binary files /dev/null and b/results/size_test_k_fold.png differ diff --git a/test.py b/test.py new file mode 100644 index 0000000..c8de98f --- /dev/null +++ b/test.py @@ -0,0 +1,202 @@ +import sys +from modelSelection import * + + +def test_k_Fold_CV(model, metric, X: np.ndarray, y: np.ndarray, ks: list[int], shuffle: bool): + """ + test_k_Fold_CV() + This function tests the k-fold cross-validation implementation with different values of k. + + :param model: The statistical model to be validated. + :param metric: The metric function used to evaluate model performance. + :param X: The feature matrix. + :param y: The target labels. + :param ks: A list of k values to test (number of folds). + :param shuffle: Whether to shuffle the data before splitting into folds. + :return: A list of results, where each result is a list containing: + [k (fold count), shuffle (bool), scores (list of fold scores), average (mean score)]. + """ + results = [] + for k in ks: + print(f"\tk-Fold Cross-Validation K-value: {k}") + print(f"\tk-Fold Cross-Validation shuffling: {shuffle}") + scores, average = k_fold_cross_validation(model, metric, X=X, y=y, k=k, shuffle=shuffle) + print(f"\tk-Fold Cross-Validation Scores:\n\t\t{scores}") + print(f"\tk-Fold Average Score: {round(average, 5)}") + results.append([k, shuffle, round(average, 5)]) + print("") + return results + + +def test_bootstrapping(model, metric, X: np.ndarray, y: np.ndarray, ss: list[int], epochs_list: list[int]) -> list: + """ + test_bootstrapping() + This function tests the bootstrapping implementation with different sample sizes and epochs. + + :param model: The statistical model to be tested. + :param metric: The metric function used to evaluate model performance. + :param X: The feature matrix. + :param y: The target labels. + :param ss: A list of sample sizes for the bootstrapping training set. + :param epochs_list: A list of epoch values to determine the number of iterations for bootstrapping. + :return: A list of results, where each result is a list containing: + [s (sample size), epochs, scores (list of metric scores for each epoch), average (mean score)]. + + """ + results = [] + for s in ss: + for epochs in epochs_list: + print(f"\tBootstrap sample size: {s}") + print(f"\tBootstrap epochs: {epochs}") + scores, average = bootstrapping(model, metric, X=X, y=y, s=s, epochs=epochs) + print(f"\tBootstrap Scores (Pick first 5 out of {len(scores)}):\n\t\t{scores[:5]}") + print(f"\tBootstrap Score range: [{round(min(scores), 5)}, {round(max(scores), 5)}]") + print(f"\tBootstrap Median Score: {round(np.median(scores), 5)}") + print(f"\tBootstrap Average Score: {round(average, 5)}") + results.append([s, epochs, round(average, 5)]) + print("") + + return results + + +def test_AIC(model, train_X: np.ndarray, train_y: np.ndarray, test_X: np.ndarray, test_y: np.ndarray): + """ + test_AIC() + This function tests the AIC (Akaike Information Criterion) computation for the given model. + + :param model: The trained statistical model. + :param train_X: Training feature matrix. + :param train_y: Training labels. + :param test_X: Test feature matrix. + :param test_y: Test labels. + :return: AIC value. + """ + model.fit(train_X, train_y) + y_pred = model.predict(test_X) + aic = AIC(X=test_X, y=test_y, y_pred=y_pred) + return round(aic, 5) + + +def main(file_path: str): + """ + main() + This function is an entry point for the test suite. Loads parameters, initializes models, + and tests k-fold cross-validation with AIC performance and bootstrapping. + + :param file_path: Path to the JSON configuration file containing test parameters. + """ + param = get_param(file_path) + + # Initialize global parameters + print(f"{'*' * 52} Global Setting {'*' * 52}") + args_g = param["test"]["general"] + print(f"Description:\n\t{param['description']}") + model = get_model(args_g["model"]) + metric = get_metric(args_g["metric"]) + print(f"Data Type: {args_g['data']}") + print("*" * 121, "\n") + + # Store global results + results_K_fold = [] + result_boostrap = [] + + i = 0 + while i < len(param["data"][args_g["data"]]): + print(f"{'=' * 52} [Test {i:2d}] Start {'=' * 52}") + args_d = param["data"][args_g["data"]][i] + print(f"Data Parameters:\n\t{args_d}") + + # Load dataset + X, y, train_X, train_y, test_X, test_y = get_data(args_g["data"], args_d) + + print("-" * 121) + + # Compute AIC in advance + aic = float(test_AIC(model, train_X, train_y, test_X, test_y)) + + if args_g["activate"]["k_fold_CV"]: + # k-Fold Cross-Validation + print("[Test] K-Fold Cross-Validation") + args_k = param["test"]["k_fold_cross_validation"] + + # Perform K-Fold CV testing + results = test_k_Fold_CV(model, metric, X, y, ks=args_k["k"], shuffle=args_k["shuffle"]) + + # Append test results to global list results_K_fold + if args_g["data"] == 'generate': + for result in results: + result.insert(0, args_d["noise_std"]) + result.insert(0, args_d["correlation"]) + result.insert(0, args_d["dimension"]) + result.insert(0, args_d["size"]) + result.append(aic) + results_K_fold.append(result) + + print("-" * 121) + + if args_g["activate"]["bootstrapping"]: + # Bootstrapping Testing + print("[Test] Bootstrapping") + args_b = param["test"]["bootstrapping"] + print(f"Bootstrapping Parameters:\n\t{args_b}") + + # Perform Bootstrapping testing + results = test_bootstrapping(model, metric, X, y, ss=args_b["size"], epochs_list=args_b["epochs"]) + # Append test results to global list result_boostrap + if args_g["data"] == 'generate': + for result in results: + result.insert(0, args_d["noise_std"]) + result.insert(0, args_d["correlation"]) + result.insert(0, args_d["dimension"]) + result.insert(0, args_d["size"]) + result.append(aic) + result_boostrap.append(result) + + print("-" * 121) + + # Show the comparative score from AIC + print(f"[Test] AIC Score: {round(aic, 5)}") + + print(f"{'=' * 52} [Test {i:2d}] End {'=' * 52}") + + # Increase index number + i += 1 + print("") + + # Visualization and file write only support for the dataset type 'generate'! + if args_g["data"] == 'generate': + args_a = param["test"]['analysis'] + # Visualize if activated & only if results are many then just 1 + if args_a["visualize"]["k_fold_CV"]["activate"] and len(results_K_fold) > 1: + visualize(results_K_fold, "k-fold Cross Validation", args_a["visualize"]["k_fold_CV"]["label_X"]) + + if args_a["visualize"]["bootstrapping"]["activate"] and len(result_boostrap) > 1: + visualize(result_boostrap, "Bootstrapping", args_a["visualize"]["bootstrapping"]["label_X"]) + + # Write data if activated & only if results are many then just 1 + if args_a["write"]["k_fold_CV"]["activate"] and len(results_K_fold) > 1: + file_path = args_a["write"]["k_fold_CV"]["file_path"] + header = args_a["write"]["k_fold_CV"]["header"] + write(file_path, results_K_fold, header) + + if args_a["write"]["bootstrapping"]["activate"] and len(result_boostrap) > 1: + file_path = args_a["write"]["bootstrapping"]["file_path"] + header = args_a["write"]["bootstrapping"]["header"] + write(file_path, result_boostrap, header) + + +if __name__ == "__main__": + arguments = sys.argv + # Test code below + # arguments = ["QuickStart", "./params/param_single.json"] + # arguments = ["QuickStart", "./params/param_multi.json"] + # arguments = ["QuickStart", "./params/param_k_fold.json"] + # arguments = ["QuickStart", "./params/param_bootstrap.json"] + # arguments = ["QuickStart", "./params/test_size.json"] + # arguments = ["QuickStart", "./params/test_correlation.json"] + + if len(arguments) > 1: + main(arguments[1]) + else: + print("[Warning] No parameter configuration (file path with param_*.json) provided!") + print("[Info] Program terminated.")