Spaces:
Sleeping
Sleeping
Salif SAWADOGO
commited on
Commit
·
9535a73
1
Parent(s):
f3b6910
dockerfile
Browse files- 01_modeling.ipynb +333 -0
- Dockerfile +6 -0
- donnee_billet_authentification.csv +1373 -0
- functions_ml.py +386 -0
- hello_world.yml.bak +13 -0
- model.pkl +3 -0
- mon_application_flask.py +119 -0
- requirements.txt.bak +16 -0
01_modeling.ipynb
ADDED
@@ -0,0 +1,333 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"cells": [
|
3 |
+
{
|
4 |
+
"cell_type": "markdown",
|
5 |
+
"id": "85b97ec7-3a3c-4167-aef8-8dae5e40763a",
|
6 |
+
"metadata": {},
|
7 |
+
"source": [
|
8 |
+
"# Modules"
|
9 |
+
]
|
10 |
+
},
|
11 |
+
{
|
12 |
+
"cell_type": "code",
|
13 |
+
"execution_count": 1,
|
14 |
+
"id": "99e0c7ad-0921-4255-b373-de036361abd7",
|
15 |
+
"metadata": {},
|
16 |
+
"outputs": [],
|
17 |
+
"source": [
|
18 |
+
"import pandas as pd\n",
|
19 |
+
"import numpy as np\n",
|
20 |
+
"from sklearn.model_selection import train_test_split\n",
|
21 |
+
"from sklearn.discriminant_analysis import LinearDiscriminantAnalysis\n",
|
22 |
+
"from sklearn.metrics import accuracy_score, roc_auc_score, auc, roc_curve\n",
|
23 |
+
"import matplotlib.pyplot as plt\n",
|
24 |
+
"import functions_ml # ma biblio personnelle\n",
|
25 |
+
"import pickle"
|
26 |
+
]
|
27 |
+
},
|
28 |
+
{
|
29 |
+
"cell_type": "markdown",
|
30 |
+
"id": "77424d25-e0ce-4df8-b74f-4af54bce44e3",
|
31 |
+
"metadata": {},
|
32 |
+
"source": [
|
33 |
+
"# Données"
|
34 |
+
]
|
35 |
+
},
|
36 |
+
{
|
37 |
+
"cell_type": "markdown",
|
38 |
+
"id": "bce0e571-eced-43cb-95c1-6fc97b47db68",
|
39 |
+
"metadata": {},
|
40 |
+
"source": [
|
41 |
+
"Les données ont été extraites d'images prises à partir de spécimens authentiques et falsifiés ressemblant à des billets de banque.\n",
|
42 |
+
"\n",
|
43 |
+
"Pour la numérisation, une caméra industrielle habituellement utilisée pour l'inspection des impressions a été utilisée. \n",
|
44 |
+
"\n",
|
45 |
+
"Les images finales ont 400x 400 pixels. En raison de la lentille de l'objet et de la distance à l'objet étudié, des images en niveaux de gris avec une résolution d'environ 660 dpi ont été obtenues. \n",
|
46 |
+
"\n",
|
47 |
+
"L'outil Wavelet Transform a été utilisé pour extraire les caractéristiques des images.\n",
|
48 |
+
"L'ensemble de données peut être utilisé pour les exemples de problèmes de classification binaire"
|
49 |
+
]
|
50 |
+
},
|
51 |
+
{
|
52 |
+
"cell_type": "code",
|
53 |
+
"execution_count": 2,
|
54 |
+
"id": "0eec0a9c-56eb-4721-89c6-84d31d49c513",
|
55 |
+
"metadata": {},
|
56 |
+
"outputs": [
|
57 |
+
{
|
58 |
+
"data": {
|
59 |
+
"text/html": [
|
60 |
+
"<div>\n",
|
61 |
+
"<style scoped>\n",
|
62 |
+
" .dataframe tbody tr th:only-of-type {\n",
|
63 |
+
" vertical-align: middle;\n",
|
64 |
+
" }\n",
|
65 |
+
"\n",
|
66 |
+
" .dataframe tbody tr th {\n",
|
67 |
+
" vertical-align: top;\n",
|
68 |
+
" }\n",
|
69 |
+
"\n",
|
70 |
+
" .dataframe thead th {\n",
|
71 |
+
" text-align: right;\n",
|
72 |
+
" }\n",
|
73 |
+
"</style>\n",
|
74 |
+
"<table border=\"1\" class=\"dataframe\">\n",
|
75 |
+
" <thead>\n",
|
76 |
+
" <tr style=\"text-align: right;\">\n",
|
77 |
+
" <th></th>\n",
|
78 |
+
" <th>variance</th>\n",
|
79 |
+
" <th>skewness</th>\n",
|
80 |
+
" <th>curtosis</th>\n",
|
81 |
+
" <th>entropy</th>\n",
|
82 |
+
" <th>class</th>\n",
|
83 |
+
" </tr>\n",
|
84 |
+
" </thead>\n",
|
85 |
+
" <tbody>\n",
|
86 |
+
" <tr>\n",
|
87 |
+
" <th>0</th>\n",
|
88 |
+
" <td>3.62160</td>\n",
|
89 |
+
" <td>8.6661</td>\n",
|
90 |
+
" <td>-2.8073</td>\n",
|
91 |
+
" <td>-0.44699</td>\n",
|
92 |
+
" <td>0</td>\n",
|
93 |
+
" </tr>\n",
|
94 |
+
" <tr>\n",
|
95 |
+
" <th>1</th>\n",
|
96 |
+
" <td>4.54590</td>\n",
|
97 |
+
" <td>8.1674</td>\n",
|
98 |
+
" <td>-2.4586</td>\n",
|
99 |
+
" <td>-1.46210</td>\n",
|
100 |
+
" <td>0</td>\n",
|
101 |
+
" </tr>\n",
|
102 |
+
" <tr>\n",
|
103 |
+
" <th>2</th>\n",
|
104 |
+
" <td>3.86600</td>\n",
|
105 |
+
" <td>-2.6383</td>\n",
|
106 |
+
" <td>1.9242</td>\n",
|
107 |
+
" <td>0.10645</td>\n",
|
108 |
+
" <td>0</td>\n",
|
109 |
+
" </tr>\n",
|
110 |
+
" <tr>\n",
|
111 |
+
" <th>3</th>\n",
|
112 |
+
" <td>3.45660</td>\n",
|
113 |
+
" <td>9.5228</td>\n",
|
114 |
+
" <td>-4.0112</td>\n",
|
115 |
+
" <td>-3.59440</td>\n",
|
116 |
+
" <td>0</td>\n",
|
117 |
+
" </tr>\n",
|
118 |
+
" <tr>\n",
|
119 |
+
" <th>4</th>\n",
|
120 |
+
" <td>0.32924</td>\n",
|
121 |
+
" <td>-4.4552</td>\n",
|
122 |
+
" <td>4.5718</td>\n",
|
123 |
+
" <td>-0.98880</td>\n",
|
124 |
+
" <td>0</td>\n",
|
125 |
+
" </tr>\n",
|
126 |
+
" </tbody>\n",
|
127 |
+
"</table>\n",
|
128 |
+
"</div>"
|
129 |
+
],
|
130 |
+
"text/plain": [
|
131 |
+
" variance skewness curtosis entropy class\n",
|
132 |
+
"0 3.62160 8.6661 -2.8073 -0.44699 0\n",
|
133 |
+
"1 4.54590 8.1674 -2.4586 -1.46210 0\n",
|
134 |
+
"2 3.86600 -2.6383 1.9242 0.10645 0\n",
|
135 |
+
"3 3.45660 9.5228 -4.0112 -3.59440 0\n",
|
136 |
+
"4 0.32924 -4.4552 4.5718 -0.98880 0"
|
137 |
+
]
|
138 |
+
},
|
139 |
+
"execution_count": 2,
|
140 |
+
"metadata": {},
|
141 |
+
"output_type": "execute_result"
|
142 |
+
}
|
143 |
+
],
|
144 |
+
"source": [
|
145 |
+
"data=pd.read_csv(r'C:\\Users\\u32118508\\OneDrive - UPEC\\Bureau\\PyBooks\\Bank_Note_Authentification\\donnee_billet_authentification.csv')\n",
|
146 |
+
"data.head()"
|
147 |
+
]
|
148 |
+
},
|
149 |
+
{
|
150 |
+
"cell_type": "markdown",
|
151 |
+
"id": "0de36aed-368e-4916-9759-712c2ad1431a",
|
152 |
+
"metadata": {},
|
153 |
+
"source": [
|
154 |
+
"# Echantillonage et partitionnements"
|
155 |
+
]
|
156 |
+
},
|
157 |
+
{
|
158 |
+
"cell_type": "code",
|
159 |
+
"execution_count": 3,
|
160 |
+
"id": "f07fb5c1-eac4-4c1d-8097-c8b6eda33c19",
|
161 |
+
"metadata": {},
|
162 |
+
"outputs": [],
|
163 |
+
"source": [
|
164 |
+
"## declarations des features et de la variable d'interets\n",
|
165 |
+
"X=data.iloc[:,:-1]\n",
|
166 |
+
"y=data.iloc[:,-1]\n",
|
167 |
+
"## Segmentation des données\n",
|
168 |
+
"X_train,X_test,y_train,y_test = train_test_split(X,y,test_size=0.3,random_state=2022, stratify = y)"
|
169 |
+
]
|
170 |
+
},
|
171 |
+
{
|
172 |
+
"cell_type": "markdown",
|
173 |
+
"id": "14d12466-ef34-4ce3-a374-04c1d2b026db",
|
174 |
+
"metadata": {},
|
175 |
+
"source": [
|
176 |
+
"# Entrainement"
|
177 |
+
]
|
178 |
+
},
|
179 |
+
{
|
180 |
+
"cell_type": "code",
|
181 |
+
"execution_count": 4,
|
182 |
+
"id": "2459e1e2-5d98-43e7-8fbc-5802b818283d",
|
183 |
+
"metadata": {},
|
184 |
+
"outputs": [
|
185 |
+
{
|
186 |
+
"data": {
|
187 |
+
"text/plain": [
|
188 |
+
"LinearDiscriminantAnalysis()"
|
189 |
+
]
|
190 |
+
},
|
191 |
+
"execution_count": 4,
|
192 |
+
"metadata": {},
|
193 |
+
"output_type": "execute_result"
|
194 |
+
}
|
195 |
+
],
|
196 |
+
"source": [
|
197 |
+
"classifier = LinearDiscriminantAnalysis()\n",
|
198 |
+
"classifier.fit(X_train,y_train)"
|
199 |
+
]
|
200 |
+
},
|
201 |
+
{
|
202 |
+
"cell_type": "markdown",
|
203 |
+
"id": "034d7760-b0f7-4390-b2ac-5d14076ff29c",
|
204 |
+
"metadata": {},
|
205 |
+
"source": [
|
206 |
+
"# EVAL"
|
207 |
+
]
|
208 |
+
},
|
209 |
+
{
|
210 |
+
"cell_type": "code",
|
211 |
+
"execution_count": 5,
|
212 |
+
"id": "ff3e3f7b-55da-4583-80a2-3c101fc6c549",
|
213 |
+
"metadata": {},
|
214 |
+
"outputs": [],
|
215 |
+
"source": [
|
216 |
+
"# Prediction\n",
|
217 |
+
"proba_pred = classifier.predict_proba(X_test)"
|
218 |
+
]
|
219 |
+
},
|
220 |
+
{
|
221 |
+
"cell_type": "code",
|
222 |
+
"execution_count": 6,
|
223 |
+
"id": "f739a119-56d7-481e-a57b-99c77d6b84e2",
|
224 |
+
"metadata": {},
|
225 |
+
"outputs": [
|
226 |
+
{
|
227 |
+
"data": {
|
228 |
+
"image/png": "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1SoATpw4QadOnahatSqdOnVy3/OzZs0a97pDQ0NTve+nZ8+emXfPiqpmq1eDSmhWFx0d635/7FiUPv74Ij179rwPI/rX1q1bfbr+hIQEbdSokU6ZMkVVVePi4nTQoEH66KOPpjvfnj17tHbt2h6to02bNrp27VpVVf3444+1R48eF00TFxd3VetJug5V1QoVKujRo0fTnSc2Njbd8Sn98ssveuONN17WPCnjSvTZZ5/p8OHD0533+PHjWqlSJT1+/LieOHFCK1WqpCdOnLhouj59+ujUqVNVVXXJkiV61113pbqsYsWKaVRUlKqq3nrrrTp9+nRVVR06dKh+9NFHqqr66KOP6vPPP6+qqtu2bdP27dtftKy4uDgtXbq07t27V1VVFy5c6N6Xo0eP1tGjR6uq6ocffqgDBgxQVdUjR45o/fr1NT4+XlVVV61apYcOHdKCBQsmW/Z//vMfdyxbtmzRChUqXHJbqlat6v4/Gj9+vPbv319VVc+ePasJCQmqqrpp0yatXr26exn33HOPfvLJJ6qqev78eT158qSqqj722GP62muvqarqa6+95t6WqKgo9zYeOnRIS5Ysmezv57vvvtN+/fql+bea2v85EK5X+L1rLYoMFBl5gZEjf6Rx40+4cMG5uapEiQK8/npHChXK6+Posoaff/6Z/PnzM3DgQMB5NsW7777LlClTOHfuHFOnTqVXr1507dqV6tWr88ILLwAwZswYdu3aRVhYGI899pjH62vdurX7iK9QoUI8++yzNGnShFWrVvHOO+9Qp04d6tSp4z5aBafsd//+/QkJCaFPnz6cO3cu2TJnzJhBeHg4d955J2FhYURHRwPwwQcfUL9+ferWrcuff/4JOCU47r33Xjp37sw999zD0aNHueWWW2jUqBGNGjVyl+T+9ddf3UeQ9erVc9+wFxkZ6T4SvfPOO913bi9ZsoR69epRt25dBg0axPnz5y/a9s8++4xq1arRpk0bj0p/L1y40F1/qlixYnTq1MldWjyprVu30qFDBwDatWvHnDlzLppmxowZdOvWjQIFCqCq/Pzzz/Tp0weA/v37u4/Oky6rRo0a7N27lyNHjiRb1pIlS6hSpQoVKjjFMDt37kxAgHPWvGnTpu4WTdJllSpVimuuucbdumratGmqN1mKCGfOnAGcu+ATy5SktS3pzVOoUCH3HepRUVHu92fOnGHZsmXu4pd58+Z1VyaeM2cO/fv3v2i/FChQwL2NMTExycrPREZG8s4772Ru8cUrzTC+emXVFsXChTu1QoV3FZ5Xf/8XdPHiXb4OKVW+blG8//77+tBDD100PCwsTDdt2qSfffaZlilTRo8dO6bnzp3T2rVr69q1a6+4RfHmm2/qbbfdpqqqgH7zzTeqqhoeHq516tTRyMhIPXv2rNaqVUvXr1+ve/bsUUBXrFihqqoDBw7Ut956K911qDotinHjxqmqc5Q5ePBgVVV97rnntH79+nru3DlVVe3Xr58uX75cVVX//vtvrVGjhqqqdu/e3b3Os2fPamxsrP7yyy9apEgR3b9/v8bHx2vTpk11+fLlGh0drUFBQbp9+3ZVVb377rv13XffTRbXoUOHtHz58vrPP//o+fPntXnz5u4WxZw5c/SZZ565aJveeustfemll9yfX3zxxVS3vV+/fvree++pqnNkC+ixY8eSTdOuXTv9/vvvVVX16NGjWqVKFfe4ffv2uX+XTzzxhD788MOqqvr777+rv7+/hoeHJ1vWwIED9YMPPrgojsT99sUXX6iq03rs06ePxsbG6u7du7Vo0aI6Y8aMZNOnbFEcOnRI69Spo+XKldNrrrnmonWn3BZV1WXLlmnx4sW1XLlyWrNmTT19+rR73MyZM7V69eparFgxXblypaqqbtiwQRs1aqT9+/fXsLAwHTx4sEZGRqqqatGiRZOt65prrnG/X716tdaqVUsLFiyoM2fOdA9/6KGHdObMmen+T1iLIos5cSKagQPn0KXLl/z992nq1StDePi9dOiQsQ/UySlUUy/Yl3R4p06dKFGiBIGBgdx8883JzvV6KvFo/7fffnNXZPX39+eWW24BYMWKFfTu3ZuCBQtSqFAhbr75ZncF1vLly7ufp3DXXXd5vP6bb74ZgAYNGrif+gbOueTEQnmLFy9mxIgRhIWF0bNnT3cF2hYtWjBq1CjGjRvHqVOn3EeTjRs3JigoCD8/P3fF3e3bt1OpUiWqVXMqC/fv3/+iYoq///47bdu2pWTJkuTNmzdZKZKePXvy4osvXhS/pnJPVWq/q7Fjx/Lrr79Sr149fv31V8qVK+eOF5wKun/88QddunS55HLHjBnDyZMnCQsL44MPPqBevXrJlnXhwgXmzp3LrbfeetEyXnnlFQICArjzzjsBGDRoEEFBQTRs2JCHHnqI5s2bJ1tWaqZPn86AAQM4cOAA8+fP5+677yYhISHNbQHnzvv58+dz4MABBg4cyKhRo9zjevfuzZ9//sns2bPdZVji4uJYv3499913Hxs2bKBgwYLJyp6kpUmTJmzZsoW1a9fy2muvERMTw8aNG9m5cye9e/e+5PwZyXo9XYXvv9/Of/7zPUeORJEvnz8vvNCWRx5pTkCA5d+01K5d2/08hkRnzpxh//79VKlShXXr1l305XQ5JcYTffXVVzRsmPzeovz587tLiaf25ZXW+jxdf+Ld2P7+/smeWpe0PlNaFWjHjBnDjTfeyPz582natKm7MGLSO7wTl5te7FcSd6KgoKBkF4APHDiQrNptouuuu46ZM2cCzmmQ7777jqJFi7rH/9///R+9e/cmTx6nJP61117LqVOniIuLIyAgIFkl2iJFivDZZ58Bzu+kUqVKVKpUyb2sH3/8kfr161O6dPKu5J9//jnz5s1jyZIl7u0MCAjg3XffdU/TvHlzqlatmu42T5482X16rVmzZsTExHDs2DFKlSqV6rYcPXqUTZs20aRJE8CpCZba419bt27Nrl27OHbsGEFBQQQFBbnn6dOnjztRlC5dmsOHD1O2bFkOHz7sXm9SNWvWpGDBgkRERLB27VrWrVtHxYoViYuL459//qFt27bJfm/eYN9oV+H48WiOHImiZcvr2bRpGI8/3tKSxCV06NCBc+fOMW3aNMB5eNEjjzzCgAED3OeAFy1axIkTJ4iOjmb27Nm0aNGCwoULp1pG+0q1bt2a2bNnc+7cOaKiopg1axatWrUCnJ4wib1Spk+fTsuWLS+a/0rjSasC7a5du6hbty6PP/44DRs2dF/jSE3iufzEay9ffPEFbdq0STZNkyZNWLp0KcePHyc2NpZvv/32krF16dKFn376iZMnT3Ly5El++umnZEfSiY4dO+Y+6n7ttdcYNGhQsvHTp0+nX79+7s8iQrt27dzP5/7888/dlWhPnTrl7gH16aef0rp1a4oUKZLmsgAWLFjAG2+8wdy5c91/M4D7dwnO31BAQAC1atVKd5uvv/56lixZAjh3M8fExCR7nkjK9RcrVozTp0+7KxgvWrTIfQf0zp073Ul8/fr1XLhwgRIlSlCmTBnKly/v7n23ZMkSd1xJK/Em3S979uxxH2z8/fffbN++nYoVK3Lfffdx6NAh9u7dy4oVK6hWrZrXkwRg1yguR0JCgkZEHEn2eebMrRofn+CzmC7XZV+jiIpS/fJL1ZdeUv3qK1XXufarsW/fPu3evbsGBwdr5cqVdcSIERoTE6OqTu+cW2+9VW+44QatVq2au0eMqrp7eST2kAoNDU11+Wn1/El5fvrtt9/W2rVra+3atd3n+Pfs2aM1a9bUoUOHat26dfXmm29293ZJasaMGVqtWjUNDQ3Vc+fOJev1tHbtWm3Tpo2qOtcokp7nP3r0qN52221at25d93pUVUeMGKG1a9fWkJAQvf322zUmJuaiXk/Dhw/Xzz77TFVVFy9erGFhYVqnTh0dOHCge/8l3fYpU6Zo1apVtXXr1jpy5MhLXqNQVZ08ebJWqVJFq1Sp4u6Zpqr6zDPP6Jw5c1RV9dtvv9Xg4GCtWrWqDh482L3uxP133XXXuXsbJdq1a5c2atRIq1Spon369HHPs3LlSg0ODtbq1atr7969k/WyioqK0uLFi+upU6eSLatKlSoaFBSkoaGhGhoa6t6He/bs0WrVqmmNGjW0Q4cO7l5Sqk7vonLlyqmIaLly5fS5555TVaenU/PmzTUkJERDQ0N14cKFl9yWmTNnap06dTQkJETbtGmju3Y51yNff/11rVWrloaGhrqvJyXasGGDNmjQQOvWrau9evVyb+exY8e0ffv2GhwcrO3bt9fjx4+rquq0adPcy6pXr57OmjXrot9VZl6jsFpPHtq79xRDh85j2bK/2bx5GFWrlsj0GDLCZdV6WrsWevSApL1QSpeG77+HRo28Et/UqVMJDw9PdtRtjLk8Vj02kyUkKB988Dt16nzETz/tokCBPOzefelnMGd70dEXJwlwPvfo4Yw3xuQKlijSsW3bUVq1+oyRIxcQFRXLbbfVZuvW++nSJdjXoXnfrFkXJ4lER444471gwIAB1powJouxXk9p+O9//2DgwDlcuBBPmTKFmDDhRm66qYavw8o8u3df3XhjTI5hLYo0NGhQFj8/YfDgemzden/uShIAlS9xH8ilxqfDm7WeevfuTVhYGMHBwRQtWtR9t/PKlSvTrAGVdHijRo1SfRY2wLp166hbty7BwcGMHDky1W6q6dUb+uabbwgJCaF27dru54BfyooVK2jcuDE1atSgRo0aTJo06ZLzbNy40V2z6FL8/f2T1TTau3cvS5cupWjRotSrV4+aNWu6745POrxGjRo8+uijHq3jtddeIzg4mOrVq7Nw4cJUp0mr5tHx48dp164dhQoV8qhWlfGSK70K7quXt3o9nTt3QT/9dJ27Vouq6r59p9KZI3vyuNfTuXOqpUurwsWv0qWvuPdTZtR6Uk29TlJaNaBS9hTq2LFjqsts1KiRrly5UhMSErRr1646f/78i6ZJq97QsWPH3HdKqzq1fxYvXpzuNhw+fFjLly+v69atU1Wnx1T9+vV13rx56c7nSV2nRCl7gqkm33eRkZEaHBys4eHhyYafO3dOq1ev7r6bPC1btmzRkJAQjYmJ0d27d2vlypVTrbOVVs2jyMhIXb58uU6YMMHjbTJ2Z7ZXLF/+N2FhHzNkyPd8+eVm9/Dy5YumM1cOFxjo9G5KcaOTu9dT4JVVwM3sWk9pSVoDKqlmzZpx8ODBi4YfPnyYM2fO0KxZM0SEe+65x12XJ6m06g3t3r2batWqufvod+zY8aIbD1MaP348AwYMoH79+oBz49qbb77pvllrwIABDBs2jFatWlGtWjXmzZvHhQsXePbZZ/nmm28ICwvjm2++uaz9klLBggVp0KABu3btSjY8MDCQsLCwVPdVUnPmzOH2228nX758VKpUieDgYNasWZPqdKnVPCpYsCAtW7Ykf/78V7Ud5urk6msUZ8+eZ8yYxXz0kVM4rGbNa7Ntt1evaNQI9uxxLlzv3u2cburd+4qTBMCWLVto0KBBsmFFihTh+uuvd39xr1mzhoiICAoUKECjRo248cYbef3114mIiEjztNDl+v7776lbt+5FwxcsWMBNN93k/hwWFsbGjRs5ePAgQUFB7uFBQUGpfkmGhoa6vxz379/PunXr2L9/P+3bt+fPP/9k7969BAUFMXv27EuebtuyZYv7yzNRw4YN2bJli/vz3r17+fXXX9m1axft2rVj586dvPjiix53MY6OjiYsLAyASpUqXVTO+vjx46xevZpnnnmGo0ePuoefPHmSv/76i9atWwMwceJEAIYNG5Zs/oMHD9K0aVP357T225EjR9xF+8qWLcs///xzydhN5sm1ieLHH/9i6NB57N9/hoAAP554oiVPPdWKfPly7S5JXWAg3HFHhi1O1fNaT4C71lPSL++rceeddxIYGEjFihX54IMPkg2PiooiPj6e9evXu4cnJiZN5XpEatsxaNAgtm3bRsOGDalQoYK73lCxYsWYMGECffv2xc/Pj+bNm7P7Eh0C0tpXSYfddttt+Pn5UbVqVSpXrpzuHd2pCQwMTDX5Ll++nHr16uHn58eYMWOoXbs2S5cuZfny5YSEhLB9+3bGjBlDmTJlgIsTRNJtSC9+kz3kym/FGTO2cuutTkmDBg3KMmVKL0JC7LGkmSGzaj2lJbUaUInDQ0NDGTNmDMOHD3fXMkoUFBTkLmcNJKtXlFR69YZ69OhBjx49AJg0aZK77lRaateuTXh4OD179nQPW7duXbKyFN7aV61atWLevHlpDt+xYwctW7Z0dx5IS1BQEPv373d/Tmu/eVLzyPhOrrxG0aNHNRo0KMtbb3Vi9eohliQyUVap9ZSaPHny8PLLL7N69Wq2bduWbFzZsmUpXLgwq1evRlWZNm2auy5PUunVG0o8nXLy5Ek++ugjhgwZAsCsWbN44oknLlrW8OHDmTp1qvuI//jx4zz++OPJekx9++23JCQksGvXLnbv3k316tUzZV9Vq1aNJ554gjfeeCPd6Xr27MnXX3/N+fPn2bNnD3/99ReNGzdOdbrUah6ZrCFXJIpDh84yaNAcTpxw7ibOly+A338fwqOPWqXXzCYizJo1i2+//ZaqVatSrVo18ufPz6uvvuqepmXLltx9992EhYVxyy230LBhQ0qUKEGLFi2oU6eO+2J2ekeyVyowMJBHHnnEXZo86TomTJjAkCFDCA4OpkqVKnTr1g2AuXPn8uyzzwJOMqhfvz41a9bkjTfe4IsvvnDP/+CDD1KrVi1atGjBmDFj3GXCd+3alawQXqKyZcvy5Zdf8p///IcaNWrQvHlzBg0a5G6VAFSvXp02bdrQrVs3Jk6cSP78+WnXrh1bt251X8wODw93J6WMNGzYMJYtW8aePXuYOHGi+zpFUrVr1+a2226jVq1adO3alfHjx7tbUkOGDHE/WGjMmDEsWrSIqlWrsmjRIsaMGeNeRsWKFRk1ahRTp04lKCiIrVu3Zvi2mPTl6FpPqsqUKRt45JGfOH36PEOHNmDixMt7BnFOc1m1nnwgN9Z6uuuuu3j33XeTVS31xIABA+jevbv7yXHGJMroWk859hrF7t0nuffe71myZA8AN95YlaeeauXjqIy52JdffunrEIxJV45rUcTHJ/DBB2t46qmfOXculhIlAhk3rhv9+tWx3hZk/RaFMebqWYviEtauPcTDDztlAvr1q8P773elZMmCl5grd0mr26UxJvvzxsF/jkgUCQmKn5/zxde0aRBPPdWKJk3K0aNHdR9HlvXkz5+f48ePU6JECUsWxuQwqsrx48cz/E72bH/qKTz8EEOGzOWDD7rRqlUFH0aWPcTGxnLgwAFiYmJ8HYoxxgvy589PUFCQ+znfiXLlqafo6Fiee24pb7+9ioQE5bXXVlii8ECePHmSPbzeGGMuxas3EYhIVxHZLiI7RWRMKuNFRMa5xm8WkfqeLPfXX/cSEjKRt95aCcAjjzRjxozbMjh6Y4wx4MUWhYj4A+OBTsABYK2IzFXVpHfLdAOqul5NgAmun2nad6wobds6d3DWqVOKyZN70rhxOS9sgTHGGPBui6IxsFNVd6vqBeBrIOV9+b2Aaa5y6auBa0SkbHoLPRmVnzx5/Hj++TasW3evJQljjPEyb16jKAfsT/L5ABe3FlKbphxwOOlEInIvcK/r43kSno14/nl4/vmMDDdbuhY45usgsgjbF/+yffEv2xf/uuJuoN5MFKn1vUzZxcqTaVDVScAkABEJv9Ir9zmN7Yt/2b74l+2Lf9m++JeIhF/pvN489XQAKJ/kcxBw6AqmMcYY40PeTBRrgaoiUklE8gK3A3NTTDMXuMfV+6kpcFpVD6dckDHGGN/x2qknVY0TkRHAQsAfmKKqW0RkmGv8RGA+cAOwEzgHDPRg0ZO8FHJ2ZPviX7Yv/mX74l+2L/51xfsi292ZbYwxJnPZU3uMMcakyxKFMcaYdGXZROGt8h/ZkQf74k7XPtgsIitFJNQXcWaGS+2LJNM1EpF4Ecmxj3/zZF+ISFsR2SgiW0Tk18yOMbN48D9SVES+F5FNrn3hyfXQbEdEpojIPyISkcb4K/veVNUs98K5+L0LqAzkBTYBtVJMcwPwI869GE2B330dtw/3RXOgmOt9t9y8L5JM9zNOZ4k+vo7bh38X1wBbgetdn0v5Om4f7osngTdc70sCJ4C8vo7dC/uiNVAfiEhj/BV9b2bVFoVXyn9kU5fcF6q6UlVPuj6uxrkfJSfy5O8C4AHgO+CfzAwuk3myL+4AZqrqPgBVzan7w5N9oUBhcR7CUggnUcRlbpjep6rLcLYtLVf0vZlVE0VapT0ud5qc4HK3czDOEUNOdMl9ISLlgN7AxEyMyxc8+buoBhQTkaUisk5E7sm06DKXJ/viQ6Amzg29fwAPqmpC5oSXpVzR92ZWfR5FhpX/yAE83k4RaYeTKFp6NSLf8WRfvAc8rqrxOfwJfp7siwCgAdABCARWichqVd3h7eAymSf7oguwEWgPVAEWichyVT3j5diymiv63syqicLKf/zLo+0UkRDgU6Cbqh7PpNgymyf7oiHwtStJXAvcICJxqjo7UyLMPJ7+jxxT1SggSkSWAaFATksUnuyLgcDr6pyo3ykie4AawJrMCTHLuKLvzax66snKf/zrkvtCRK4HZgJ358CjxaQuuS9UtZKqVlTVisAM4P4cmCTAs/+ROUArEQkQkQI41Zu3ZXKcmcGTfbEPp2WFiJTGqaS6O1OjzBqu6HszS7Yo1HvlP7IdD/fFs0AJ4CPXkXSc5sCKmR7ui1zBk32hqttEZAGwGUgAPlXVVLtNZmce/l28BEwVkT9wTr88rqo5rvy4iEwH2gLXisgB4DkgD1zd96aV8DDGGJOurHrqyRhjTBZhicIYY0y6LFEYY4xJlyUKY4wx6bJEYYwxJl2WKEyW5Kr8ujHJq2I600ZmwPqmisge17rWi0izK1jGpyJSy/X+yRTjVl5tjK7lJO6XCFc11GsuMX2YiNyQEes2uZd1jzVZkohEqmqhjJ42nWVMBeap6gwR6QyMVdWQq1jeVcd0qeWKyOfADlV9JZ3pBwANVXVERsdicg9rUZhsQUQKicgS19H+HyJyUdVYESkrIsuSHHG3cg3vLCKrXPN+KyKX+gJfBgS75h3lWlaEiDzkGlZQRH5wPdsgQkT6uoYvFZGGIvI6EOiK4yvXuEjXz2+SHuG7WjK3iIi/iLwlImvFeU7AUA92yypcBd1EpLE4zyLZ4PpZ3XWX8otAX1csfV2xT3GtZ0Nq+9GYi/i6frq97JXaC4jHKeK2EZiFU0WgiGvctTh3lia2iCNdPx8BnnK99wcKu6ZdBhR0DX8ceDaV9U3F9ewK4Fbgd5yCen8ABXFKU28B6gG3AJ8kmbeo6+dSnKN3d0xJpkmMsTfwuet9XpxKnoHAvcDTruH5gHCgUipxRibZvm+Brq7PRYAA1/uOwHeu9wOAD5PM/ypwl+v9NTh1nwr6+vdtr6z9ypIlPIwBolU1LPGDiOQBXhWR1jjlKMoBpYH/JZlnLTDFNe1sVd0oIm2AWsBvrvImeXGOxFPzlog8DRzFqcLbAZilTlE9RGQm0ApYAIwVkTdwTlctv4zt+hEYJyL5gK7AMlWNdp3uCpF/n8hXFKgK7Ekxf6CIbAQqAuuARUmm/1xEquJUA82Txvo7Az1F5FHX5/zA9eTMGlAmg1iiMNnFnThPJmugqrEishfnS85NVZe5EsmNwBci8hZwElikqv08WMdjqjoj8YOIdExtIlXdISINcGrmvCYiP6nqi55shKrGiMhSnLLXfYHpiasDHlDVhZdYRLSqholIUWAeMBwYh1PL6BdV7e268L80jfkFuEVVt3sSrzFg1yhM9lEU+MeVJNoBFVJOICIVXNN8AkzGeSTkaqCFiCRecyggItU8XOcy4CbXPAVxThstF5HrgHOq+iUw1rWelGJdLZvUfI1TjK0VTiE7XD/vS5xHRKq51pkqVT0NjAQedc1TFDjoGj0gyaRncU7BJVoIPCCu5pWI1EtrHcYkskRhsouvgIYiEo7TuvgzlWnaAhtFZAPOdYT3VfUozhfndBHZjJM4aniyQlVdj3PtYg3ONYtPVXUDUBdY4zoF9BTwciqzTwI2J17MTuEnnGcbL1bn0Z3gPEtkK7BeRCKAj7lEi98Vyyacstpv4rRufsO5fpHoF6BW4sVsnJZHHldsEa7PxqTLuscaY4xJl7UojDHGpMsShTHGmHRZojDGGJMuSxTGGGPSZYnCGGNMuixRGGOMSZclCmOMMen6f4F0dMriebdjAAAAAElFTkSuQmCC",
|
229 |
+
"text/plain": [
|
230 |
+
"<Figure size 432x288 with 1 Axes>"
|
231 |
+
]
|
232 |
+
},
|
233 |
+
"metadata": {
|
234 |
+
"needs_background": "light"
|
235 |
+
},
|
236 |
+
"output_type": "display_data"
|
237 |
+
}
|
238 |
+
],
|
239 |
+
"source": [
|
240 |
+
"fpr, tpr, thresholds = roc_curve(y_test, proba_pred[:,1])\n",
|
241 |
+
"roc_auc = auc(fpr, tpr)\n",
|
242 |
+
"optimal_thr = thresholds[np.argmin((0-fpr)**2 + (1-tpr)**2)]\n",
|
243 |
+
"optimal_tpr = tpr[thresholds==optimal_thr][0]\n",
|
244 |
+
"optimal_fpr = fpr[thresholds==optimal_thr][0]\n",
|
245 |
+
"plt.figure()\n",
|
246 |
+
"lw = 2\n",
|
247 |
+
"plt.plot(fpr, tpr, color='orange',lw=lw, label='ROC curve (area = %0.2f)' % roc_auc)\n",
|
248 |
+
"plt.plot([0, 1], [0, 1], color='navy', lw=lw, linestyle='--')\n",
|
249 |
+
"plt.scatter(optimal_fpr, optimal_tpr, color=\"red\", lw=lw, label=f\"Opt. Prob threshold: {optimal_thr}\\nOpt. TPR:{round(optimal_tpr, 2)}, Opt. FPR: {round(optimal_fpr, 2)}\")\n",
|
250 |
+
"plt.xlim([0.0, 1.0])\n",
|
251 |
+
"plt.ylim([0.0, 1.0])\n",
|
252 |
+
"plt.xlabel('False Positive Rate')\n",
|
253 |
+
"plt.ylabel('True Positive Rate')\n",
|
254 |
+
"plt.title('Scoring ROC curve : Test set')\n",
|
255 |
+
"plt.legend(loc=\"lower right\")\n",
|
256 |
+
"plt.show()\n"
|
257 |
+
]
|
258 |
+
},
|
259 |
+
{
|
260 |
+
"cell_type": "code",
|
261 |
+
"execution_count": 7,
|
262 |
+
"id": "b93d91be-4515-446f-bd0e-b87bbe2ee399",
|
263 |
+
"metadata": {},
|
264 |
+
"outputs": [
|
265 |
+
{
|
266 |
+
"name": "stdout",
|
267 |
+
"output_type": "stream",
|
268 |
+
"text": [
|
269 |
+
"Accuracy: 0.99\n",
|
270 |
+
"Recall: 0.99\n",
|
271 |
+
"precision: 0.98\n"
|
272 |
+
]
|
273 |
+
},
|
274 |
+
{
|
275 |
+
"data": {
|
276 |
+
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAWAAAAFqCAYAAAAk+oAqAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjQuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/MnkTPAAAACXBIWXMAAAsTAAALEwEAmpwYAAAjxElEQVR4nO3deZyd4/3/8dc7iyyyCSGCkNhjC4nGvpTEvtZa/VaKEi26UVpFUKWrXUlt1drXCkqqdpUgxK4/JIgSW5CVbJ/fH9c9cjKZmUwyc+aazHk/H488cu77upfPmcfM+1znujdFBGZm1vRa5S7AzKxSOYDNzDJxAJuZZeIANjPLxAFsZpaJA9jMLBMHsC2VJB0maVQT7CckrVXu/dSXpK0lvSFpmqR9G7Cdf0o6vBFLsyUgnwdsjUXS20AvoFdEfFIyfxywCdAnIt5exDbWACYAbSNiTrlqrS9JAawdEW/mrgVA0r+BuyPiwty1WMO5B2yNbQJwaNWEpI2ADo25A0ltGnN7S5nVgVdyF2GNwwFsje1vwHdLpg8HritdQNIekp6XNEXSREnDS5ofK/7/vPiavaWkoZKelHS+pMnA8GLeEyXb3EDSvyRNlvShpF8W81tJOkXSW5I+lXSLpO61FS/pJEkfSHpf0hHV2tpJ+oOkd4t9XC6p1g8XSd+X9JqkqZJelbRZMX99SY9I+lzSK5L2LlnnWkmXSrq3WG+MpDWLtreAvsDI4mfTTtLbknYuWX+4pL8Xr9tL+nvxvj+X9IyklYq2RyQdVfIz+pWkdyR9JOk6SV2LtjWKYZjDi/f9iaRTa3vPtngcwNbYRgNdipBpDRwM/L3aMtNJId0N2AM4tmQ8c7vi/24R0SkiniqmBwHjgRWBc0o3Jqkz8CBwP2kIZC3g30XzCcC+wPZF22fApTUVLmlX4ERgMLA2sHO1RX4LrAP0L/axCnB6Lds6EBhevM8uwN7Ap5LaAiOBUcV7OR64XtK6JasfCpwJLAe8WfV+I2JN4F1gr+Jn81VN+y5xONAVWA1YHhgGzKxhuaHFvx1JAd8JuKTaMtsA6wI7AadLWn8R+7Z6cABbOVT1ggcDrwP/K22MiEci4qWImBcRLwI3kgKyLu9HxMURMSciqofInsCkiPhjRHwZEVMjYkzRdgxwakS8VwTWcOCAWoYxDgKuiYiXI2J6sSwAkgR8H/hJREyOiKnAb4BDaqn3KOB3EfFMJG9GxDvAFqSAOy8iZkXEQ8A9lAzbAHdExNPFGPj1pMBfErNJwbtWRMyNiLERMaWG5Q4D/hQR4yNiGvAL4JBqP6MzI2JmRLwAvEAa07cGquSxNCufv5GGEvpQbfgBQNIg4DxgQ2AZoB1w6yK2ObGOttWAt2ppWx24U9K8knlzgZWo9sFA6iGPLZl+p+R1D6AjMDZlMQACWi9mTb2AiRFRWs87pN50lUklr2eQAntJ/K2o4yZJ3UjfRE6NiNk11FT6Xt8hZcNKZajJSrgHbI2u6OlNAHYH7qhhkRuAu4HVIqIrcDkpzABqOy2nrtN1JgJr1tG2W0R0K/nXPiKqhy/AB6TAqtK75PUnpK/vG5Rsp2tE1BZEtdX0PrCapNK/vd4s/GFQX9NJHwxVela9iIjZEXFmRPQDtiJ9U/guC3uf9EFVWs8c4MMlrMnqyQFs5XIk8M3iq3x1nYHJEfGlpG8A3y5p+xiYRxqLrK97gJ6SflwcmOpc9LIhhfs5klYHkNRD0j61bOcWYKikfpI6AmdUNRQ91r8A50tasdjWKpJ2qWVbVwInShqgZK2ihjGk0Py5pLaSdgD2Am5ajPdbahxpuKCtpIHAAVUNknaUtFExFj+FNCQxt4Zt3Aj8RFIfSZ1IQys3N4fTAFs6B7CVRUS8FRHP1tL8A+AsSVNJB7FuKVlvBumg05PFkfst6rGvqaTx5r1IX5XfIB1QAriQ1NseVexvNOmAXk3b+SdwAfAQ6eDXQ9UWObmYP1rSFNKBv3WpQUTcWryPG4CpwF1A94iYRTogtxupV30Z8N2IeH1R77MWp5F62p+RDtzdUNLWE7iNFL6vAY+y8AFRgKuZP2w0AfiSdHDQyswXYpiZZeIesJlZJg5gM7NMHMBmZpk4gM3MMnEAm5ll4ivh6mGFjoo1uuWuwpqr2b16Lnohq1gvjp30SUT0qKnNAVwPa3SDMUfnrsKaq0lnDM1dgjVjq7Y6753a2jwEYWaWiQPYzCwTB7CZWSYOYDOzTBzAZmaZOIDNzDJxAJuZZeIANjPLxAFsZpaJA9jMLBMHsJlZJg5gM7NMHMBmZpk4gM3MMnEAm5ll4gA2M8vEAWxmlokD2MwsEwewmVkmDmAzs0wcwGZmmTiAzcwycQCbmWXiADYzy8QBbGaWiQPYzCwTB7CZWSYOYDOzTBzAZmaZOIDNzDJxAJuZZeIANjPLxAFsZpaJA9jMLBMHsJlZJg5gM7NMHMBmZpk4gM3MMnEAm5ll4gA2M8vEAWxmlokD2MwsEwewmVkmDmAzs0wcwGZmmTiAzcwycQCbmWXiADYzy8QBbGaWiQPYzCwTB7CZWSYOYDOzTBzAZmaZOIDNzDJxAJuZZeIANjPLxAFsZpaJA9jMLJM2uQuwpc+nM2DIden1pGnQuhX06JimX/gQfrwF/GGXNP3H/8C0WXDGDku+vxmz4eBbYfzktK891oFzd05t5z8FVz8HbVrBCsvClXvD6t1S27tfwNF3w3tTQMDIw2CNbkteh9Vf7za/Zb2Nenw9fdWd+zPx7S84ct876N23K199OZe9D16fn56xTYP28/vTHuOBu9+gVSuxwood+dM1e9CzV+eGlt9kHMC22JbvCGOHpddnPgKdloGfbZWml/013PU6nLItrNCx8fb50y1hxz4way4Mvg7++Qbstjb07wljjoaObeHyZ+CUB+HGA9I6Q++EX2wLg9dMHwKt1Hj1WN3ad2jDqOePWGDexLe/4BvbrspfRx7IjOmzGLLpNey851psPKDnEu9n2EmDOOns7QC46qJnueCsJznv8l0bVHtT8hCENao2reCozeCCpxpvmx3bpvAFWKY1bNYT/jclTe/YJ7UDDFo19XYBXv0Y5sxL4QvpQ6JqOcuv47LLsPGAnrzz1mcN2k7nLu2+fj1z+mykpetT1j1ga3Q/+AZs+mc4aeval3l4Apz4wMLzO7SFJ46sfb3Pv4R7/h8cv8XCbdc8D7uulV6/8Sl0aw8H3Axvfw7f7JOGLVq7y9Ekvpw5hyGbXg3Aan26ctUd31qg/bNPZ/Lc6P/xo19ttcD8aVO/Yv/trq9xm5dcvzfr9Fthofm/PfVRbvvby3Tp2o5bHvp2I72DplG2AJYUwJ8i4mfF9IlAp4gY3sj7+WVE/KZk+j8RsVVd61h5dWkH39kELh6TArUmO/aZP4xRX3PmwWG3w3GDoO9yC7Zd/yI8+z48PHT+sk+8C88eA727wqG3wV/HwRGbLe67sSVR0xAEwNOPv8cum11Nq1bihydvybob9FigvVPndjWuV5eTz9mek8/ZnkvOfYprLhnLiWdu26Dam1I5e8BfAftLOjciPinjfn4JfB3ADt/m4UdbwOZXwOH9a25fkh7wsJGwdve07VIPjodzH4eHhkK74jd6lS5pfLgqqPdZF8a8tyTvxBpT1RhwbZakB1xl32/34/A9b3UAF+YAI4CfAKeWNkjqAVwO9C5m/Tginizm3wAsDzwD7AoMiIhPJN0FrAa0By6MiBGSzgM6SBoHvBIRh0maFhGdJN0M/DUi7iv2eS0wErgLOA/YAWgHXBoRV5TnR1C5uneAAzZIwwJDN124fXF7wKc9BF98BSP2XnD+8x/AD+6Bew+DFZedP3/zXmm44uPp0GNZePhtGLDyEr0Va0KL2wMe/8Zk+q7dHYBRd7/BmustX67SyqLcY8CXAi9K+l21+RcC50fEE5J6Aw8A6wNnAA9FxLmSdgWOLlnniIiYLKkD8Iyk2yPiFEnHRUT/GvZ9E3AwcJ+kZYCdgGOBI4EvImJzSe2AJyWNiogJjfi+jXTmwmVPN3w7701JPdz1Vki9akjjzEduBif/K53hcMitaf5qXeGuQ9NY728Hp9PlAthsZThqQMNrsebl3F88wvj/TkatxKqrd+HcPy89Z0AAKCLKs+H5PdGzgNnATIoxYEkfAe+XLN4DWA94HNivKgwlTQbWKXrAw4H9iuXXAHaJiNFV+6lhv+2BN4C1SD3pg4oe8m3AxsCMYpWuwDERMapa/UdTfAD07sqA8T9unJ+LtTyTzjgldwnWjK3a6ryxETGwpramOAviAuA54JqSea2ALSNiZumCquUcEkk7ADsX68yQ9AhpKKJWEfFlsdwupJ7wjVWbA46PiBpGIBdYfwRpCIWBvVSeTykzq2hlPyknIiYDt5C++lcZBRxXNSGpf/HyCeCgYt4QoOpYd1fgsyJ81wNKD8PMllTbGZ43Ad8DtiUNc1D8f2zVOpLWkbRsLeubmZVNU50V+Ueg9PDlCcBASS9KehWoOhxzJjBE0nPAbsAHwFTgfqCNpBeBs4HRJdsaQRpnrunQ6ShgO+DBiJhVzLsSeBV4TtLLwBX4fGgzy6BswVM6LhsRHwIdS6Y/IQ0LVPcFaWx3jqQtgR0j4quibbda9nMycHIt+51NOqOidPl5pFPXfrm478nMrDE1t55fb+AWSa2AWcD3M9djZlY2zSqAI+INoIazRs3MWh5fGW9mlokD2MwsEwewmVkmDmAzs0wcwGZmmTiAzcwycQCbmWXiADYzy8QBbGaWiQPYzCwTB7CZWSYOYDOzTBzAZmaZOIDNzDJxAJuZZeIANjPLxAFsZpaJA9jMLBMHsJlZJg5gM7NMHMBmZpk4gM3MMnEAm5ll4gA2M8vEAWxmlokD2MwsEwewmVkmDmAzs0wcwGZmmTiAzcwycQCbmWXiADYzy8QBbGaWiQPYzCwTB7CZWSYOYDOzTBzAZmaZOIDNzDJpU1uDpIuBqK09Ik4oS0VmZhWi1gAGnm2yKszMKlCtARwRfy2dlrRsREwvf0lmZpVhkWPAkraU9CrwWjG9iaTLyl6ZmVkLV5+DcBcAuwCfAkTEC8B2ZazJzKwi1OssiIiYWG3W3DLUYmZWUeo6CFdloqStgJC0DHACxXCEmZktufr0gIcBPwRWAf4H9C+mzcysARbZA46IT4DDmqAWM7OKUp+zIPpKGinpY0kfSfqHpL5NUZyZWUtWnyGIG4BbgJWBXsCtwI3lLMrMrBLUJ4AVEX+LiDnFv79TxyXKZmZWP3XdC6J78fJhSacAN5GC92Dg3iaozcysRavrINxYUuCqmD6mpC2As8tVlJlZJajrXhB9mrIQM7NKU58LMZC0IdAPaF81LyKuK1dRZmaVYJEBLOkMYAdSAN8H7AY8ATiAzcwaoD5nQRwA7ARMiojvAZsA7cpalZlZBahPAM+MiHnAHEldgI8AX4hhZtZA9RkDflZSN+AvpDMjpgFPl7MoM7NKUJ97QfygeHm5pPuBLhHxYnnLMjNr+eq6EGOzutoi4rnylGRmVhnq6gH/sY62AL7ZyLWYmVWUui7E2LEpC2nOZvfqyaThR+Quw5qpXiN+k7sEW0rV65FEZmbW+BzAZmaZOIDNzDKpzxMxJOk7kk4vpntL+kb5SzMza9nq0wO+DNgSOLSYngpcWraKzMwqRH2uhBsUEZtJeh4gIj4rHk9vZmYNUJ8e8GxJrSkeQySpBzCvrFWZmVWA+gTwRcCdwIqSziHditInPpqZNVB97gVxvaSxpFtSCtg3Il4re2VmZi1cfW7I3huYAYwsnRcR75azMDOzlq4+B+HuZf7DOdsDfYD/AhuUsS4zsxavPkMQG5VOF3dJO6aWxc3MrJ4W+0q44jaUm5ehFjOzilKfMeCflky2AjYDPi5bRWZmFaI+Y8CdS17PIY0J316ecszMKkedAVxcgNEpIk5qonrMzCpGrWPAktpExFzSkIOZmTWyunrAT5PCd5yku4FbgelVjRFxR5lrMzNr0eozBtwd+JT0DLiq84EDcACbmTVAXQG8YnEGxMvMD94qUdaqzMwqQF0B3BroxILBW8UBbGbWQHUF8AcRcVaTVWJmVmHquhKupp6vmZk1kroCeKcmq8LMrALVGsARMbkpCzEzqzR+LL2ZWSYOYDOzTBzAZmaZOIDNzDJxAJuZZeIANjPLxAFsZpaJA9jMLBMHsJlZJg5gM7NMHMBmZpk4gM3MMnEAm5ll4gA2M8vEAWxmlokD2MwsEwewmVkmDmAzs0wcwGZmmTiAzcwycQCbmWXiADYzy8QBbGaWiQPYzCwTB7CZWSYOYDOzTBzAZmaZOIDNzDJxAJuZZeIANjPLxAFsZpaJA9jMLBMHsJlZJg5gM7NM2uQuwJZOvVufy3ob9fh6+qq7DmDi219w0I7Xc83dBzJ4r7UBOHzPWzjmxEFstcPqS7yvV8Z9yC+OvZ9pU76iVWtxwqlbs/fB/Rr8Hqw8Pp0GO5+fXk+aAq1bQY9OafqF92CTVWHOPFi/J1z7Pei4zJLv6/VJcMS18NxE+PU+cOKQ+W3nPwhXPQESbLQKXH04tG8Lt46FM0fCa5NgzCkwcI0l339DOYBtibTv0IZR445aYN7Et79g5VU7c9E5T34dwI2hQ8c2XHDdXvRduzuT3p/K7gOuZvtd+tK1W/tG24c1nuU7wfOnpdfDR0KndvODsfMJ89u+cxVc/ij8dPCS76t7R7jwELhr3ILz//cZXPwQvDIcOiwDB4+Am56BoVvBhr3g9mEw7Pol329j8RCENap+m6xEl67teOxfExptm33XWZ6+a3cHoGevziy/4rJ8+vGMRtu+5bHNWvDmxw3bxopdYPM1oG3rhdvmzIOZs2HOXJgxC3p1S/PXXxnW7dmw/TYW94BtiXw5cw5D+l8JwGp9unHVnQd83XbCr7bmd796lO0G96l1/T//fjR3Xv/yQvMHbdebsy8aUsMayfNPv8/sWXNZY83lGlC95TZnLtz/CuyywcJth4yA/3648Pyf7Azf3bJ+219lOfjZYFj9F9ChLQzpl/41N1kCWNJc4KVi/68Bh0dEvbs0knoBF0XEAZL6A70i4r6ibW+gX0Sc1/iVW5WahiCqDNq2NwBjHn+31vWPPWkLjj1pi8Xa54cfTONH/3c35/91L1q10mKta83DzFmw6dnp9TZrwZFbL7zMTUc3fD+fTYe7X4Dx50C3jnDQFfD30fCdxfuVK7tcPeCZEdEfQNL1wDDgT/VdOSLeB6q6XP2BgcB9RdvdwN2NWKstgRNO3ZqLzvkPbdrUPMq1uD3gqVO+4vA9bubnv96eAVus0uj1WtPosMz8MeDaNEYP+MHXYY0VoEfnNL3fpvCf8Q7gmjwObCypO3A10BeYARwdES9K2h64sFg2gO2A5YF7gM2As4AOkrYBzgU6kAL5VOAFoG9EzJPUEfhvsf3ewKVAj2Jf34+I15vizVaK7Yf05fenPcaH70+tsX1xesCzZs3lqP1u44DvbsSeB67fmGVaM9QYPeDe3WHM+DT226EtPPQ6DFjyE3HKJutBOEltgN1IwxFnAs9HxMbAL4HrisVOBH5Y9Ji3BWZWrR8Rs4DTgZsjon9E3FzS9gUpgLcvZu0FPBARs4ERwPERMaDY/mVle5MV7IRTt+KD92oO4MUx8pbXGPPYRG659kWG9L+SIf2v5JVxNXSRrOJM+gJWOzmdcnbOfen1lJkwqA98azMY8GvY+CyYF3D0tmmdO59Pyz01Hva8BHa9sO59lJMioul3On8MGFIP+GfAGOBbETG+WGYisCFwLLAfcD1wR0S8J2kN4J6I2FDSUGBgRBxXrPf1tKRvA9tFxDBJd5KC9ingY1JvuEq7iFigayXpaOBogFV6dxkw5p3jGvmnYC1FrxG/yV2CNWOtjmFsRAysqS37GHAVSTUdVYmIOE/SvcDuwGhJOwNf1nM/dwPnFsMbA4CHgGWBz6vvv4YdjyD1lNlk4MpN/yllZi1eczoP+DHgMABJOwCfRMQUSWtGxEsR8VvgWWC9autNBTrXtMGImAY8TRpDvici5kbEFGCCpAOLfUnSJuV4Q2ZmdWlOATwcGCjpReA84PBi/o8lvSzpBdL47z+rrfcw0E/SOEkH17Ddm4HvFP9XOQw4stjmK8A+jfc2zMzqJ8sQRER0qmHeZGoIwog4voZNvE0aH65ab/Nq7deWrH8bsMDwRkRMAHZdzLLNzBpVc+oBm5lVFAewmVkmDmAzs0wcwGZmmTiAzcwycQCbmWXiADYzy8QBbGaWiQPYzCwTB7CZWSYOYDOzTBzAZmaZOIDNzDJxAJuZZeIANjPLxAFsZpaJA9jMLBMHsJlZJg5gM7NMHMBmZpk4gM3MMnEAm5ll4gA2M8vEAWxmlokD2MwsEwewmVkmDmAzs0wcwGZmmTiAzcwycQCbmWXiADYzy8QBbGaWiQPYzCwTB7CZWSYOYDOzTBzAZmaZOIDNzDJxAJuZZeIANjPLxAFsZpaJA9jMLBMHsJlZJg5gM7NMHMBmZpk4gM3MMnEAm5ll4gA2M8vEAWxmlokD2MwsEwewmVkmDmAzs0wcwGZmmTiAzcwycQCbmWXiADYzy8QBbGaWiQPYzCwTB7CZWSYOYDOzTBzAZmaZOIDNzDJxAJuZZeIANjPLRBGRu4ZmT9LHwDu562hGVgA+yV2ENVv+/VjQ6hHRo6YGB7AtNknPRsTA3HVY8+Tfj/rzEISZWSYOYDOzTBzAtiRG5C7AmjX/ftSTx4DNzDJxD9jMLBMHsJlZJg5gM7NMHMBm1mQkKXcNzYkD2Mqm6o9N0sqSeuWux/KSpCiO+ktaX9JqlR7IPgvCykrSvsCPgS+A14GLI+K9nDVZXpKOAw4CxgEbAjtFhQaRe8BWNpI2An4K7Ak8DexICmKrUJJ2AfYD9gCmAHPyVpSXA9jKaS5wD3Ag6Q/ukIiYKmmDvGVZRp+TLtQ4CvgGsGdEhKQhWavKpE3uAqzlkdQP6Ef6irkt0BM4NCLGS9oNOE3S/hExKWOZ1oQkfQ9oC/wbuA8YHxGbF21Dgd0ljYmIivqG5B6wlcPWwE8i4k3SH9wbwA6Svg38AfiNw7dlk1Q9WyYAewP/A44Fekk6TNKpwAnAWZUWvuCDcNYIqo5uS2odEXOLeTcAT0XExZKOAlYHugP/iIhRpUfEreWTtDxwFnBLRDwq6QBgEBDA1RHxetYCM3EA2xKTtA6wSUTcKmkgsD3wVkTcJWlnYEhE/Lxk+bYRMTtXvVZ+xfj+gIi4TtKepN7uT4HxwLeAU4EtImJ6xjKbDQ9BWEO0Aj6S1BmYCLQDfijpEmA2aVzv/0qWr+gj3i1dMeywPHCfpD7Aw8DLwPHAdcBY4FFg12xFNjPuAVuDSGpDevzMyRFxhaQOwJ+At0l/eK8D+0bEtHxVWrlJWiYiZhWvVwXOBF6IiIskLQd8FzgY6A08QTooW/Hh4wC2xSKpIzA4Iv4haRAwCxBwP3BORFxY9IR6kk4/ezMi7s1XsZWbpK6kA6+PAVuRznZYBtiJdPDtgoiYW5wdswkpmF/NVW9z4gC2xSbpWmAg8CXw/Yh4XtJmwIPAryLismrL+4BbC1V8A2oNDCX1cpcH1i8Oyu4F7EJ6oO35EeEhqGo8Bmz1VnLd/rmkMxrmRMTzABHxHLAzcKGkH5Wu5/BtmSStB1wWEV+RrmobADxFCmGAf5HO+V0POC5Lkc2ce8BWLyWnmrUCOgHLAVcDsyNi15Ll1gbWiIh/ZSrVmoik1qTfg7WA14CVgX2AVUnB/JqkdYF1gdER8VG2YpspB7AtUkn4DgG2ACZFxIii7SFgOvBr4HfAfhEx2cMOLZekVhExr2T6L6QrH3cHugDHFP9/AfQgHaCtuIss6sNDELZIRfjuCpwPPA6cJelSSd0j4pvANNJR7z9GxOSqdfJVbOVSfLDOK17vUowBDyOd2XAnMBW4FHgL2Aa41OFbO/eArU7FkENn4K/AacBKwO9Jl5R+DhwfEZ9J6hYRn7vnWxkk/ZB0muHuxT0+WpG+AfUn3XTpE0ntI+LLnHU2dw5gq1HJsEPHiJhRXEranRTE2wIdgQ+AS4AzI2JmxnKtCUnaFrgQ2DUiPiqugvyA9IF8HrAmsBcwzx/GdfPd0GwhJeE7CLhM0tCIeEnSiqTzfpcjhfEDwO0O35athm81s0lXuR1WPOlkD+A94OcRcbyklaruCWJ18xiwLaQI38GkcztbAw9I2igiXiPdWP16YCRweUQ8k69SK7dqjxFaVdIKpN+Br4B1gLsjoh/pyseBABHxYaZylzoegrCFFNfx3wd8LyJGSzqdFMZ7kA6uDCSdA/x0viqtnKr3eiWdAHybdMbLm8APqy6skLQf6fjAgRHxVo56l1buAVtNPgWeJfVqiIizgCdJQw4rRcR/HL4t3tfDk8WY71Bgf9LY7mqkb0EUZ8ccBxzu8F18DmArfXpxV0ldI2IK6cyH/UsWu5Y0zvcPSZ2avkprKsXw03WSTiluK/oxMBr4ICJmRMTuwOqSvkW6u9mhEfFSxpKXWj4IZ1VjvnuR7tv6maTRwC+AG4s7W80gPVjzSNKpR8uSzv21Fqbo0Z4F/A1YkTTs8BzpcuKNgReKRR8i/erMBHwQdgk5gCtUtYMrWwC/JN297DukG+z8TtJBpPs79CY9RHEl0t2u5tW8VVuaSepOGvvfJyJGSupNOrd3HOlDeISk60nfjvYifSuyBnAAVyBJPYB9Jd1Y3Kd3GdINdrYkXctf9YTaWVV3NpO0FelptvtGxMcZyrYyKy4h3wv4naRHI+JdSUG6u9lfJE0h3eehJ+mA2//LWnAL4ACuTFuTnsfVrri1ZGtSAH8K7FZc0TYYGCZpWDH/HWCniHgnU83WBCLiXknzgLGSHiA95eSGou22rMW1QD4NrYKoeGhmcRerfYEdgFcj4s+SziYddDuANNZ3OunEet9MvQIVB99GAT2Lq906+IKbxucArhDFbQGPIv1RPRYRX0naDdiNFMKXSxpOuqVgN9KTah/wvR0qV/H78QdgR99KsjwcwBVC0vaky0ffAG4B+pJuqjOYNAb8PnBtcUaEb6JiAEjaBziDdPFN+MO4cTmAK4ikbYB7SOO/3yLd02E/0vm9awHDSTdZp/R+r1bZJHUKP1S1LHwQroJExBOSDgVuA7aKiKmS7gE2Ao4GJjh4rTqHb/m4B1yBJO0OXAxsXnUD9ZI7oHnM16yJuAdcgSLivuJUo9clrRsRn1WFrsPXrOm4B1zBJO0BTI+IR3LXYlaJHMBW0w23zawJOIDNzDLx7SjNzDJxAJuZZeIANjPLxAFsSx1JcyWNk/SypFsldWzAtq6VdEDx+kpJ/epYdofitpyLu4+3i4dZ1mt+tWUW6yIIScMlnbi4NVoeDmBbGs2MiP4RsSEwCxhW2ljc7W2xRcRREfFqHYvsQLohvVmjcADb0u5xYK2id/qwpBuAlyS1lvR7Sc9IelHSMZBOuZN0iaRXJd1LeuwORdsjkgYWr3eV9JykFyT9W9IapKD/SdH73lZSD0m3F/t4RtLWxbrLSxol6XlJVwBa1JuQdJeksZJekXR0tbY/FrX8u7iZPpLWlHR/sc7jktZrlJ+mNSlfCWdLLUltSLfTvL+Y9Q1gw4iYUITYFxGxuaR2wJOSRgGbAuuS7n+xEvAqxQ2ISrbbA/gLsF2xre7F0yIuB6ZFxB+K5W4Azi/usdGb9NTo9Ul3D3siIs4qLnZZIFBrcUSxjw7AM5Juj4hPSc/fey4ifibp9GLbx5GeTjIsIt6QNAi4DPjmEvwYLSMHsC2NOkgaV7x+HLiKNDTwdERMKOYPATauGt8FugJrA9sBN0bEXOB9SQ/VsP0tSPdMngDpUT211LEz0E/6uoPbRVLnYh/7F+veK+mzerynEyTtV7xeraj1U9Lz924u5v8duEPpqdRbAbeW7LtdPfZhzYwD2JZGMyOif+mMIoiml84Cjo+IB6ottzuwqKuPVI9lIA3hbVn9SRFFLfW+wknSDqQw3zIiZkh6BGhfy+JR7Pfz6j8DW/p4DNhaqgeAYyW1BZC0jqRlgceAQ4ox4pWBHWtY9ylge0l9inW7F/Onkp4IXGUUaTiAYrn+xcvHgMOKebuR7rtcl67AZ0X4rkfqgVdpRXpMFKRHxD8REVOACZIOLPYhSZssYh/WDDmAraW6kjS++5ykl4ErSN/47iQ9FeQl4M/Ao9VXLJ76fDTp6/4LzB8CGAnsV3UQDjgBGFgc5HuV+WdjnAlsJ+k50lDIu4uo9X6gjaQXgbOB0SVt04ENJI0ljfGeVcw/DDiyqO8V0tOsbSnje0GYmWXiHrCZWSYOYDOzTBzAZmaZOIDNzDJxAJuZZeIANjPLxAFsZpaJA9jMLJP/DxNQ5a7YjIvxAAAAAElFTkSuQmCC",
|
277 |
+
"text/plain": [
|
278 |
+
"<Figure size 360x360 with 1 Axes>"
|
279 |
+
]
|
280 |
+
},
|
281 |
+
"metadata": {
|
282 |
+
"needs_background": "light"
|
283 |
+
},
|
284 |
+
"output_type": "display_data"
|
285 |
+
}
|
286 |
+
],
|
287 |
+
"source": [
|
288 |
+
"functions_ml.confusio_matrix(y_test, (proba_pred[:,1]>= optimal_thr).astype(int))"
|
289 |
+
]
|
290 |
+
},
|
291 |
+
{
|
292 |
+
"cell_type": "markdown",
|
293 |
+
"id": "c1d1b858-9847-4877-98f4-c7cc9a4c724a",
|
294 |
+
"metadata": {},
|
295 |
+
"source": [
|
296 |
+
"# Exportation du modèle"
|
297 |
+
]
|
298 |
+
},
|
299 |
+
{
|
300 |
+
"cell_type": "code",
|
301 |
+
"execution_count": 8,
|
302 |
+
"id": "1ed1b4ff-0717-4c09-b207-24f187ac2ca7",
|
303 |
+
"metadata": {},
|
304 |
+
"outputs": [],
|
305 |
+
"source": [
|
306 |
+
"pickle_out = open(\"model.pkl\",\"wb\")\n",
|
307 |
+
"pickle.dump(classifier, pickle_out)\n",
|
308 |
+
"pickle_out.close()"
|
309 |
+
]
|
310 |
+
}
|
311 |
+
],
|
312 |
+
"metadata": {
|
313 |
+
"kernelspec": {
|
314 |
+
"display_name": "Python 3 (ipykernel)",
|
315 |
+
"language": "python",
|
316 |
+
"name": "python3"
|
317 |
+
},
|
318 |
+
"language_info": {
|
319 |
+
"codemirror_mode": {
|
320 |
+
"name": "ipython",
|
321 |
+
"version": 3
|
322 |
+
},
|
323 |
+
"file_extension": ".py",
|
324 |
+
"mimetype": "text/x-python",
|
325 |
+
"name": "python",
|
326 |
+
"nbconvert_exporter": "python",
|
327 |
+
"pygments_lexer": "ipython3",
|
328 |
+
"version": "3.9.7"
|
329 |
+
}
|
330 |
+
},
|
331 |
+
"nbformat": 4,
|
332 |
+
"nbformat_minor": 5
|
333 |
+
}
|
Dockerfile
ADDED
@@ -0,0 +1,6 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
FROM continuumio/anaconda3:4.4.0
|
2 |
+
COPY . /usr/app/
|
3 |
+
EXPOSE 5000
|
4 |
+
WORKDIR /usr/app/
|
5 |
+
RUN pip install -r requirements.txt
|
6 |
+
CMD python mon_application_flask.py
|
donnee_billet_authentification.csv
ADDED
@@ -0,0 +1,1373 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
variance,skewness,curtosis,entropy,class
|
2 |
+
3.6216,8.6661,-2.8073,-0.44699,0
|
3 |
+
4.5459,8.1674,-2.4586,-1.4621,0
|
4 |
+
3.866,-2.6383,1.9242,0.10645,0
|
5 |
+
3.4566,9.5228,-4.0112,-3.5944,0
|
6 |
+
0.32924,-4.4552,4.5718,-0.9888,0
|
7 |
+
4.3684,9.6718,-3.9606,-3.1625,0
|
8 |
+
3.5912,3.0129,0.72888,0.56421,0
|
9 |
+
2.0922,-6.81,8.4636,-0.60216,0
|
10 |
+
3.2032,5.7588,-0.75345,-0.61251,0
|
11 |
+
1.5356,9.1772,-2.2718,-0.73535,0
|
12 |
+
1.2247,8.7779,-2.2135,-0.80647,0
|
13 |
+
3.9899,-2.7066,2.3946,0.86291,0
|
14 |
+
1.8993,7.6625,0.15394,-3.1108,0
|
15 |
+
-1.5768,10.843,2.5462,-2.9362,0
|
16 |
+
3.404,8.7261,-2.9915,-0.57242,0
|
17 |
+
4.6765,-3.3895,3.4896,1.4771,0
|
18 |
+
2.6719,3.0646,0.37158,0.58619,0
|
19 |
+
0.80355,2.8473,4.3439,0.6017,0
|
20 |
+
1.4479,-4.8794,8.3428,-2.1086,0
|
21 |
+
5.2423,11.0272,-4.353,-4.1013,0
|
22 |
+
5.7867,7.8902,-2.6196,-0.48708,0
|
23 |
+
0.3292,-4.4552,4.5718,-0.9888,0
|
24 |
+
3.9362,10.1622,-3.8235,-4.0172,0
|
25 |
+
0.93584,8.8855,-1.6831,-1.6599,0
|
26 |
+
4.4338,9.887,-4.6795,-3.7483,0
|
27 |
+
0.7057,-5.4981,8.3368,-2.8715,0
|
28 |
+
1.1432,-3.7413,5.5777,-0.63578,0
|
29 |
+
-0.38214,8.3909,2.1624,-3.7405,0
|
30 |
+
6.5633,9.8187,-4.4113,-3.2258,0
|
31 |
+
4.8906,-3.3584,3.4202,1.0905,0
|
32 |
+
-0.24811,-0.17797,4.9068,0.15429,0
|
33 |
+
1.4884,3.6274,3.308,0.48921,0
|
34 |
+
4.2969,7.617,-2.3874,-0.96164,0
|
35 |
+
-0.96511,9.4111,1.7305,-4.8629,0
|
36 |
+
-1.6162,0.80908,8.1628,0.60817,0
|
37 |
+
2.4391,6.4417,-0.80743,-0.69139,0
|
38 |
+
2.6881,6.0195,-0.46641,-0.69268,0
|
39 |
+
3.6289,0.81322,1.6277,0.77627,0
|
40 |
+
4.5679,3.1929,-2.1055,0.29653,0
|
41 |
+
3.4805,9.7008,-3.7541,-3.4379,0
|
42 |
+
4.1711,8.722,-3.0224,-0.59699,0
|
43 |
+
-0.2062,9.2207,-3.7044,-6.8103,0
|
44 |
+
-0.0068919,9.2931,-0.41243,-1.9638,0
|
45 |
+
0.96441,5.8395,2.3235,0.066365,0
|
46 |
+
2.8561,6.9176,-0.79372,0.48403,0
|
47 |
+
-0.7869,9.5663,-3.7867,-7.5034,0
|
48 |
+
2.0843,6.6258,0.48382,-2.2134,0
|
49 |
+
-0.7869,9.5663,-3.7867,-7.5034,0
|
50 |
+
3.9102,6.065,-2.4534,-0.68234,0
|
51 |
+
1.6349,3.286,2.8753,0.087054,0
|
52 |
+
4.3239,-4.8835,3.4356,-0.5776,0
|
53 |
+
5.262,3.9834,-1.5572,1.0103,0
|
54 |
+
3.1452,5.825,-0.51439,-1.4944,0
|
55 |
+
2.549,6.1499,-1.1605,-1.2371,0
|
56 |
+
4.9264,5.496,-2.4774,-0.50648,0
|
57 |
+
4.8265,0.80287,1.6371,1.1875,0
|
58 |
+
2.5635,6.7769,-0.61979,0.38576,0
|
59 |
+
5.807,5.0097,-2.2384,0.43878,0
|
60 |
+
3.1377,-4.1096,4.5701,0.98963,0
|
61 |
+
-0.78289,11.3603,-0.37644,-7.0495,0
|
62 |
+
2.888,0.44696,4.5907,-0.24398,0
|
63 |
+
0.49665,5.527,1.7785,-0.47156,0
|
64 |
+
4.2586,11.2962,-4.0943,-4.3457,0
|
65 |
+
1.7939,-1.1174,1.5454,-0.26079,0
|
66 |
+
5.4021,3.1039,-1.1536,1.5651,0
|
67 |
+
2.5367,2.599,2.0938,0.20085,0
|
68 |
+
4.6054,-4.0765,2.7587,0.31981,0
|
69 |
+
2.4235,9.5332,-3.0789,-2.7746,0
|
70 |
+
1.0009,7.7846,-0.28219,-2.6608,0
|
71 |
+
0.12326,8.9848,-0.9351,-2.4332,0
|
72 |
+
3.9529,-2.3548,2.3792,0.48274,0
|
73 |
+
4.1373,0.49248,1.093,1.8276,0
|
74 |
+
4.7181,10.0153,-3.9486,-3.8582,0
|
75 |
+
4.1654,-3.4495,3.643,1.0879,0
|
76 |
+
4.4069,10.9072,-4.5775,-4.4271,0
|
77 |
+
2.3066,3.5364,0.57551,0.41938,0
|
78 |
+
3.7935,7.9853,-2.5477,-1.872,0
|
79 |
+
0.049175,6.1437,1.7828,-0.72113,0
|
80 |
+
0.24835,7.6439,0.9885,-0.87371,0
|
81 |
+
1.1317,3.9647,3.3979,0.84351,0
|
82 |
+
2.8033,9.0862,-3.3668,-1.0224,0
|
83 |
+
4.4682,2.2907,0.95766,0.83058,0
|
84 |
+
5.0185,8.5978,-2.9375,-1.281,0
|
85 |
+
1.8664,7.7763,-0.23849,-2.9634,0
|
86 |
+
3.245,6.63,-0.63435,0.86937,0
|
87 |
+
4.0296,2.6756,0.80685,0.71679,0
|
88 |
+
-1.1313,1.9037,7.5339,1.022,0
|
89 |
+
0.87603,6.8141,0.84198,-0.17156,0
|
90 |
+
4.1197,-2.7956,2.0707,0.67412,0
|
91 |
+
3.8027,0.81529,2.1041,1.0245,0
|
92 |
+
1.4806,7.6377,-2.7876,-1.0341,0
|
93 |
+
4.0632,3.584,0.72545,0.39481,0
|
94 |
+
4.3064,8.2068,-2.7824,-1.4336,0
|
95 |
+
2.4486,-6.3175,7.9632,0.20602,0
|
96 |
+
3.2718,1.7837,2.1161,0.61334,0
|
97 |
+
-0.64472,-4.6062,8.347,-2.7099,0
|
98 |
+
2.9543,1.076,0.64577,0.89394,0
|
99 |
+
2.1616,-6.8804,8.1517,-0.081048,0
|
100 |
+
3.82,10.9279,-4.0112,-5.0284,0
|
101 |
+
-2.7419,11.4038,2.5394,-5.5793,0
|
102 |
+
3.3669,-5.1856,3.6935,-1.1427,0
|
103 |
+
4.5597,-2.4211,2.6413,1.6168,0
|
104 |
+
5.1129,-0.49871,0.62863,1.1189,0
|
105 |
+
3.3397,-4.6145,3.9823,-0.23751,0
|
106 |
+
4.2027,0.22761,0.96108,0.97282,0
|
107 |
+
3.5438,1.2395,1.997,2.1547,0
|
108 |
+
2.3136,10.6651,-3.5288,-4.7672,0
|
109 |
+
-1.8584,7.886,-1.6643,-1.8384,0
|
110 |
+
3.106,9.5414,-4.2536,-4.003,0
|
111 |
+
2.9163,10.8306,-3.3437,-4.122,0
|
112 |
+
3.9922,-4.4676,3.7304,-0.1095,0
|
113 |
+
1.518,5.6946,0.094818,-0.026738,0
|
114 |
+
3.2351,9.647,-3.2074,-2.5948,0
|
115 |
+
4.2188,6.8162,-1.2804,0.76076,0
|
116 |
+
1.7819,6.9176,-1.2744,-1.5759,0
|
117 |
+
2.5331,2.9135,-0.822,-0.12243,0
|
118 |
+
3.8969,7.4163,-1.8245,0.14007,0
|
119 |
+
2.108,6.7955,-0.1708,0.4905,0
|
120 |
+
2.8969,0.70768,2.29,1.8663,0
|
121 |
+
0.9297,-3.7971,4.6429,-0.2957,0
|
122 |
+
3.4642,10.6878,-3.4071,-4.109,0
|
123 |
+
4.0713,10.4023,-4.1722,-4.7582,0
|
124 |
+
-1.4572,9.1214,1.7425,-5.1241,0
|
125 |
+
-1.5075,1.9224,7.1466,0.89136,0
|
126 |
+
-0.91718,9.9884,1.1804,-5.2263,0
|
127 |
+
2.994,7.2011,-1.2153,0.3211,0
|
128 |
+
-2.343,12.9516,3.3285,-5.9426,0
|
129 |
+
3.7818,-2.8846,2.2558,-0.15734,0
|
130 |
+
4.6689,1.3098,0.055404,1.909,0
|
131 |
+
3.4663,1.1112,1.7425,1.3388,0
|
132 |
+
3.2697,-4.3414,3.6884,-0.29829,0
|
133 |
+
5.1302,8.6703,-2.8913,-1.5086,0
|
134 |
+
2.0139,6.1416,0.37929,0.56938,0
|
135 |
+
0.4339,5.5395,2.033,-0.40432,0
|
136 |
+
-1.0401,9.3987,0.85998,-5.3336,0
|
137 |
+
4.1605,11.2196,-3.6136,-4.0819,0
|
138 |
+
5.438,9.4669,-4.9417,-3.9202,0
|
139 |
+
5.032,8.2026,-2.6256,-1.0341,0
|
140 |
+
5.2418,10.5388,-4.1174,-4.2797,0
|
141 |
+
-0.2062,9.2207,-3.7044,-6.8103,0
|
142 |
+
2.0911,0.94358,4.5512,1.234,0
|
143 |
+
1.7317,-0.34765,4.1905,-0.99138,0
|
144 |
+
4.1736,3.3336,-1.4244,0.60429,0
|
145 |
+
3.9232,-3.2467,3.4579,0.83705,0
|
146 |
+
3.8481,10.1539,-3.8561,-4.2228,0
|
147 |
+
0.5195,-3.2633,3.0895,-0.9849,0
|
148 |
+
3.8584,0.78425,1.1033,1.7008,0
|
149 |
+
1.7496,-0.1759,5.1827,1.2922,0
|
150 |
+
3.6277,0.9829,0.68861,0.63403,0
|
151 |
+
2.7391,7.4018,0.071684,-2.5302,0
|
152 |
+
4.5447,8.2274,-2.4166,-1.5875,0
|
153 |
+
-1.7599,11.9211,2.6756,-3.3241,0
|
154 |
+
5.0691,0.21313,0.20278,1.2095,0
|
155 |
+
3.4591,11.112,-4.2039,-5.0931,0
|
156 |
+
1.9358,8.1654,-0.023425,-2.2586,0
|
157 |
+
2.486,-0.99533,5.3404,-0.15475,0
|
158 |
+
2.4226,-4.5752,5.947,0.21507,0
|
159 |
+
3.9479,-3.7723,2.883,0.019813,0
|
160 |
+
2.2634,-4.4862,3.6558,-0.61251,0
|
161 |
+
1.3566,4.2358,2.1341,0.3211,0
|
162 |
+
5.0452,3.8964,-1.4304,0.86291,0
|
163 |
+
3.5499,8.6165,-3.2794,-1.2009,0
|
164 |
+
0.17346,7.8695,0.26876,-3.7883,0
|
165 |
+
2.4008,9.3593,-3.3565,-3.3526,0
|
166 |
+
4.8851,1.5995,-0.00029081,1.6401,0
|
167 |
+
4.1927,-3.2674,2.5839,0.21766,0
|
168 |
+
1.1166,8.6496,-0.96252,-1.8112,0
|
169 |
+
1.0235,6.901,-2.0062,-2.7125,0
|
170 |
+
-1.803,11.8818,2.0458,-5.2728,0
|
171 |
+
0.11739,6.2761,-1.5495,-2.4746,0
|
172 |
+
0.5706,-0.0248,1.2421,-0.5621,0
|
173 |
+
4.0552,-2.4583,2.2806,1.0323,0
|
174 |
+
-1.6952,1.0657,8.8294,0.94955,0
|
175 |
+
-1.1193,10.7271,2.0938,-5.6504,0
|
176 |
+
1.8799,2.4707,2.4931,0.37671,0
|
177 |
+
3.583,-3.7971,3.4391,-0.12501,0
|
178 |
+
0.19081,9.1297,-3.725,-5.8224,0
|
179 |
+
3.6582,5.6864,-1.7157,-0.23751,0
|
180 |
+
-0.13144,-1.7775,8.3316,0.35214,0
|
181 |
+
2.3925,9.798,-3.0361,-2.8224,0
|
182 |
+
1.6426,3.0149,0.22849,-0.147,0
|
183 |
+
-0.11783,-1.5789,8.03,-0.028031,0
|
184 |
+
-0.69572,8.6165,1.8419,-4.3289,0
|
185 |
+
2.9421,7.4101,-0.97709,-0.88406,0
|
186 |
+
-1.7559,11.9459,3.0946,-4.8978,0
|
187 |
+
-1.2537,10.8803,1.931,-4.3237,0
|
188 |
+
3.2585,-4.4614,3.8024,-0.15087,0
|
189 |
+
1.8314,6.3672,-0.036278,0.049554,0
|
190 |
+
4.5645,-3.6275,2.8684,0.27714,0
|
191 |
+
2.7365,-5.0325,6.6608,-0.57889,0
|
192 |
+
0.9297,-3.7971,4.6429,-0.2957,0
|
193 |
+
3.9663,10.1684,-4.1131,-4.6056,0
|
194 |
+
1.4578,-0.08485,4.1785,0.59136,0
|
195 |
+
4.8272,3.0687,0.68604,0.80731,0
|
196 |
+
-2.341,12.3784,0.70403,-7.5836,0
|
197 |
+
-1.8584,7.886,-1.6643,-1.8384,0
|
198 |
+
4.1454,7.257,-1.9153,-0.86078,0
|
199 |
+
1.9157,6.0816,0.23705,-2.0116,0
|
200 |
+
4.0215,-2.1914,2.4648,1.1409,0
|
201 |
+
5.8862,5.8747,-2.8167,-0.30087,0
|
202 |
+
-2.0897,10.8265,2.3603,-3.4198,0
|
203 |
+
4.0026,-3.5943,3.5573,0.26809,0
|
204 |
+
-0.78689,9.5663,-3.7867,-7.5034,0
|
205 |
+
4.1757,10.2615,-3.8552,-4.3056,0
|
206 |
+
0.83292,7.5404,0.65005,-0.92544,0
|
207 |
+
4.8077,2.2327,-0.26334,1.5534,0
|
208 |
+
5.3063,5.2684,-2.8904,-0.52716,0
|
209 |
+
2.5605,9.2683,-3.5913,-1.356,0
|
210 |
+
2.1059,7.6046,-0.47755,-1.8461,0
|
211 |
+
2.1721,-0.73874,5.4672,-0.72371,0
|
212 |
+
4.2899,9.1814,-4.6067,-4.3263,0
|
213 |
+
3.5156,10.1891,-4.2759,-4.978,0
|
214 |
+
2.614,8.0081,-3.7258,-1.3069,0
|
215 |
+
0.68087,2.3259,4.9085,0.54998,0
|
216 |
+
4.1962,0.74493,0.83256,0.753,0
|
217 |
+
6.0919,2.9673,-1.3267,1.4551,0
|
218 |
+
1.3234,3.2964,0.2362,-0.11984,0
|
219 |
+
1.3264,1.0326,5.6566,-0.41337,0
|
220 |
+
-0.16735,7.6274,1.2061,-3.6241,0
|
221 |
+
-1.3,10.2678,-2.953,-5.8638,0
|
222 |
+
-2.2261,12.5398,2.9438,-3.5258,0
|
223 |
+
2.4196,6.4665,-0.75688,0.228,0
|
224 |
+
1.0987,0.6394,5.989,-0.58277,0
|
225 |
+
4.6464,10.5326,-4.5852,-4.206,0
|
226 |
+
-0.36038,4.1158,3.1143,-0.37199,0
|
227 |
+
1.3562,3.2136,4.3465,0.78662,0
|
228 |
+
0.5706,-0.0248,1.2421,-0.5621,0
|
229 |
+
-2.6479,10.1374,-1.331,-5.4707,0
|
230 |
+
3.1219,-3.137,1.9259,-0.37458,0
|
231 |
+
5.4944,1.5478,0.041694,1.9284,0
|
232 |
+
-1.3389,1.552,7.0806,1.031,0
|
233 |
+
-2.3361,11.9604,3.0835,-5.4435,0
|
234 |
+
2.2596,-0.033118,4.7355,-0.2776,0
|
235 |
+
0.46901,-0.63321,7.3848,0.36507,0
|
236 |
+
2.7296,2.8701,0.51124,0.5099,0
|
237 |
+
2.0466,2.03,2.1761,-0.083634,0
|
238 |
+
-1.3274,9.498,2.4408,-5.2689,0
|
239 |
+
3.8905,-2.1521,2.6302,1.1047,0
|
240 |
+
3.9994,0.90427,1.1693,1.6892,0
|
241 |
+
2.3952,9.5083,-3.1783,-3.0086,0
|
242 |
+
3.2704,6.9321,-1.0456,0.23447,0
|
243 |
+
-1.3931,1.5664,7.5382,0.78403,0
|
244 |
+
1.6406,3.5488,1.3964,-0.36424,0
|
245 |
+
2.7744,6.8576,-1.0671,0.075416,0
|
246 |
+
2.4287,9.3821,-3.2477,-1.4543,0
|
247 |
+
4.2134,-2.806,2.0116,0.67412,0
|
248 |
+
1.6472,0.48213,4.7449,1.225,0
|
249 |
+
2.0597,-0.99326,5.2119,-0.29312,0
|
250 |
+
0.3798,0.7098,0.7572,-0.4444,0
|
251 |
+
1.0135,8.4551,-1.672,-2.0815,0
|
252 |
+
4.5691,-4.4552,3.1769,0.0042961,0
|
253 |
+
0.57461,10.1105,-1.6917,-4.3922,0
|
254 |
+
0.5734,9.1938,-0.9094,-1.872,0
|
255 |
+
5.2868,3.257,-1.3721,1.1668,0
|
256 |
+
4.0102,10.6568,-4.1388,-5.0646,0
|
257 |
+
4.1425,-3.6792,3.8281,1.6297,0
|
258 |
+
3.0934,-2.9177,2.2232,0.22283,0
|
259 |
+
2.2034,5.9947,0.53009,0.84998,0
|
260 |
+
3.744,0.79459,0.95851,1.0077,0
|
261 |
+
3.0329,2.2948,2.1135,0.35084,0
|
262 |
+
3.7731,7.2073,-1.6814,-0.94742,0
|
263 |
+
3.1557,2.8908,0.59693,0.79825,0
|
264 |
+
1.8114,7.6067,-0.9788,-2.4668,0
|
265 |
+
4.988,7.2052,-3.2846,-1.1608,0
|
266 |
+
2.483,6.6155,-0.79287,-0.90863,0
|
267 |
+
1.594,4.7055,1.3758,0.081882,0
|
268 |
+
-0.016103,9.7484,0.15394,-1.6134,0
|
269 |
+
3.8496,9.7939,-4.1508,-4.4582,0
|
270 |
+
0.9297,-3.7971,4.6429,-0.2957,0
|
271 |
+
4.9342,2.4107,-0.17594,1.6245,0
|
272 |
+
3.8417,10.0215,-4.2699,-4.9159,0
|
273 |
+
5.3915,9.9946,-3.8081,-3.3642,0
|
274 |
+
4.4072,-0.070365,2.0416,1.1319,0
|
275 |
+
2.6946,6.7976,-0.40301,0.44912,0
|
276 |
+
5.2756,0.13863,0.12138,1.1435,0
|
277 |
+
3.4312,6.2637,-1.9513,-0.36165,0
|
278 |
+
4.052,-0.16555,0.45383,0.51248,0
|
279 |
+
1.3638,-4.7759,8.4182,-1.8836,0
|
280 |
+
0.89566,7.7763,-2.7473,-1.9353,0
|
281 |
+
1.9265,7.7557,-0.16823,-3.0771,0
|
282 |
+
0.20977,-0.46146,7.7267,0.90946,0
|
283 |
+
4.068,-2.9363,2.1992,0.50084,0
|
284 |
+
2.877,-4.0599,3.6259,-0.32544,0
|
285 |
+
0.3223,-0.89808,8.0883,0.69222,0
|
286 |
+
-1.3,10.2678,-2.953,-5.8638,0
|
287 |
+
1.7747,-6.4334,8.15,-0.89828,0
|
288 |
+
1.3419,-4.4221,8.09,-1.7349,0
|
289 |
+
0.89606,10.5471,-1.4175,-4.0327,0
|
290 |
+
0.44125,2.9487,4.3225,0.7155,0
|
291 |
+
3.2422,6.2265,0.12224,-1.4466,0
|
292 |
+
2.5678,3.5136,0.61406,-0.40691,0
|
293 |
+
-2.2153,11.9625,0.078538,-7.7853,0
|
294 |
+
4.1349,6.1189,-2.4294,-0.19613,0
|
295 |
+
1.934,-9.2828e-06,4.816,-0.33967,0
|
296 |
+
2.5068,1.1588,3.9249,0.12585,0
|
297 |
+
2.1464,6.0795,-0.5778,-2.2302,0
|
298 |
+
0.051979,7.0521,-2.0541,-3.1508,0
|
299 |
+
1.2706,8.035,-0.19651,-2.1888,0
|
300 |
+
1.143,0.83391,5.4552,-0.56984,0
|
301 |
+
2.2928,9.0386,-3.2417,-1.2991,0
|
302 |
+
0.3292,-4.4552,4.5718,-0.9888,0
|
303 |
+
2.9719,6.8369,-0.2702,0.71291,0
|
304 |
+
1.6849,8.7489,-1.2641,-1.3858,0
|
305 |
+
-1.9177,11.6894,2.5454,-3.2763,0
|
306 |
+
2.3729,10.4726,-3.0087,-3.2013,0
|
307 |
+
1.0284,9.767,-1.3687,-1.7853,0
|
308 |
+
0.27451,9.2186,-3.2863,-4.8448,0
|
309 |
+
1.6032,-4.7863,8.5193,-2.1203,0
|
310 |
+
4.616,10.1788,-4.2185,-4.4245,0
|
311 |
+
4.2478,7.6956,-2.7696,-1.0767,0
|
312 |
+
4.0215,-2.7004,2.4957,0.36636,0
|
313 |
+
5.0297,-4.9704,3.5025,-0.23751,0
|
314 |
+
1.5902,2.2948,3.2403,0.18404,0
|
315 |
+
2.1274,5.1939,-1.7971,-1.1763,0
|
316 |
+
1.1811,8.3847,-2.0567,-0.90345,0
|
317 |
+
0.3292,-4.4552,4.5718,-0.9888,0
|
318 |
+
5.7353,5.2808,-2.2598,0.075416,0
|
319 |
+
2.6718,5.6574,0.72974,-1.4892,0
|
320 |
+
1.5799,-4.7076,7.9186,-1.5487,0
|
321 |
+
2.9499,2.2493,1.3458,-0.037083,0
|
322 |
+
0.5195,-3.2633,3.0895,-0.9849,0
|
323 |
+
3.7352,9.5911,-3.9032,-3.3487,0
|
324 |
+
-1.7344,2.0175,7.7618,0.93532,0
|
325 |
+
3.884,10.0277,-3.9298,-4.0819,0
|
326 |
+
3.5257,1.2829,1.9276,1.7991,0
|
327 |
+
4.4549,2.4976,1.0313,0.96894,0
|
328 |
+
-0.16108,-6.4624,8.3573,-1.5216,0
|
329 |
+
4.2164,9.4607,-4.9288,-5.2366,0
|
330 |
+
3.5152,6.8224,-0.67377,-0.46898,0
|
331 |
+
1.6988,2.9094,2.9044,0.11033,0
|
332 |
+
1.0607,2.4542,2.5188,-0.17027,0
|
333 |
+
2.0421,1.2436,4.2171,0.90429,0
|
334 |
+
3.5594,1.3078,1.291,1.6556,0
|
335 |
+
3.0009,5.8126,-2.2306,-0.66553,0
|
336 |
+
3.9294,1.4112,1.8076,0.89782,0
|
337 |
+
3.4667,-4.0724,4.2882,1.5418,0
|
338 |
+
3.966,3.9213,0.70574,0.33662,0
|
339 |
+
1.0191,2.33,4.9334,0.82929,0
|
340 |
+
0.96414,5.616,2.2138,-0.12501,0
|
341 |
+
1.8205,6.7562,0.0099913,0.39481,0
|
342 |
+
4.9923,7.8653,-2.3515,-0.71984,0
|
343 |
+
-1.1804,11.5093,0.15565,-6.8194,0
|
344 |
+
4.0329,0.23175,0.89082,1.1823,0
|
345 |
+
0.66018,10.3878,-1.4029,-3.9151,0
|
346 |
+
3.5982,7.1307,-1.3035,0.21248,0
|
347 |
+
-1.8584,7.886,-1.6643,-1.8384,0
|
348 |
+
4.0972,0.46972,1.6671,0.91593,0
|
349 |
+
3.3299,0.91254,1.5806,0.39352,0
|
350 |
+
3.1088,3.1122,0.80857,0.4336,0
|
351 |
+
-4.2859,8.5234,3.1392,-0.91639,0
|
352 |
+
-1.2528,10.2036,2.1787,-5.6038,0
|
353 |
+
0.5195,-3.2633,3.0895,-0.9849,0
|
354 |
+
0.3292,-4.4552,4.5718,-0.9888,0
|
355 |
+
0.88872,5.3449,2.045,-0.19355,0
|
356 |
+
3.5458,9.3718,-4.0351,-3.9564,0
|
357 |
+
-0.21661,8.0329,1.8848,-3.8853,0
|
358 |
+
2.7206,9.0821,-3.3111,-0.96811,0
|
359 |
+
3.2051,8.6889,-2.9033,-0.7819,0
|
360 |
+
2.6917,10.8161,-3.3,-4.2888,0
|
361 |
+
-2.3242,11.5176,1.8231,-5.375,0
|
362 |
+
2.7161,-4.2006,4.1914,0.16981,0
|
363 |
+
3.3848,3.2674,0.90967,0.25128,0
|
364 |
+
1.7452,4.8028,2.0878,0.62627,0
|
365 |
+
2.805,0.57732,1.3424,1.2133,0
|
366 |
+
5.7823,5.5788,-2.4089,-0.056479,0
|
367 |
+
3.8999,1.734,1.6011,0.96765,0
|
368 |
+
3.5189,6.332,-1.7791,-0.020273,0
|
369 |
+
3.2294,7.7391,-0.37816,-2.5405,0
|
370 |
+
3.4985,3.1639,0.22677,-0.1651,0
|
371 |
+
2.1948,1.3781,1.1582,0.85774,0
|
372 |
+
2.2526,9.9636,-3.1749,-2.9944,0
|
373 |
+
4.1529,-3.9358,2.8633,-0.017686,0
|
374 |
+
0.74307,11.17,-1.3824,-4.0728,0
|
375 |
+
1.9105,8.871,-2.3386,-0.75604,0
|
376 |
+
-1.5055,0.070346,6.8681,-0.50648,0
|
377 |
+
0.58836,10.7727,-1.3884,-4.3276,0
|
378 |
+
3.2303,7.8384,-3.5348,-1.2151,0
|
379 |
+
-1.9922,11.6542,2.6542,-5.2107,0
|
380 |
+
2.8523,9.0096,-3.761,-3.3371,0
|
381 |
+
4.2772,2.4955,0.48554,0.36119,0
|
382 |
+
1.5099,0.039307,6.2332,-0.30346,0
|
383 |
+
5.4188,10.1457,-4.084,-3.6991,0
|
384 |
+
0.86202,2.6963,4.2908,0.54739,0
|
385 |
+
3.8117,10.1457,-4.0463,-4.5629,0
|
386 |
+
0.54777,10.3754,-1.5435,-4.1633,0
|
387 |
+
2.3718,7.4908,0.015989,-1.7414,0
|
388 |
+
-2.4953,11.1472,1.9353,-3.4638,0
|
389 |
+
4.6361,-2.6611,2.8358,1.1991,0
|
390 |
+
-2.2527,11.5321,2.5899,-3.2737,0
|
391 |
+
3.7982,10.423,-4.1602,-4.9728,0
|
392 |
+
-0.36279,8.2895,-1.9213,-3.3332,0
|
393 |
+
2.1265,6.8783,0.44784,-2.2224,0
|
394 |
+
0.86736,5.5643,1.6765,-0.16769,0
|
395 |
+
3.7831,10.0526,-3.8869,-3.7366,0
|
396 |
+
-2.2623,12.1177,0.28846,-7.7581,0
|
397 |
+
1.2616,4.4303,-1.3335,-1.7517,0
|
398 |
+
2.6799,3.1349,0.34073,0.58489,0
|
399 |
+
-0.39816,5.9781,1.3912,-1.1621,0
|
400 |
+
4.3937,0.35798,2.0416,1.2004,0
|
401 |
+
2.9695,5.6222,0.27561,-1.1556,0
|
402 |
+
1.3049,-0.15521,6.4911,-0.75346,0
|
403 |
+
2.2123,-5.8395,7.7687,-0.85302,0
|
404 |
+
1.9647,6.9383,0.57722,0.66377,0
|
405 |
+
3.0864,-2.5845,2.2309,0.30947,0
|
406 |
+
0.3798,0.7098,0.7572,-0.4444,0
|
407 |
+
0.58982,7.4266,1.2353,-2.9595,0
|
408 |
+
0.14783,7.946,1.0742,-3.3409,0
|
409 |
+
-0.062025,6.1975,1.099,-1.131,0
|
410 |
+
4.223,1.1319,0.72202,0.96118,0
|
411 |
+
0.64295,7.1018,0.3493,-0.41337,0
|
412 |
+
1.941,0.46351,4.6472,1.0879,0
|
413 |
+
4.0047,0.45937,1.3621,1.6181,0
|
414 |
+
3.7767,9.7794,-3.9075,-3.5323,0
|
415 |
+
3.4769,-0.15314,2.53,2.4495,0
|
416 |
+
1.9818,9.2621,-3.521,-1.872,0
|
417 |
+
3.8023,-3.8696,4.044,0.95343,0
|
418 |
+
4.3483,11.1079,-4.0857,-4.2539,0
|
419 |
+
1.1518,1.3864,5.2727,-0.43536,0
|
420 |
+
-1.2576,1.5892,7.0078,0.42455,0
|
421 |
+
1.9572,-5.1153,8.6127,-1.4297,0
|
422 |
+
-2.484,12.1611,2.8204,-3.7418,0
|
423 |
+
-1.1497,1.2954,7.701,0.62627,0
|
424 |
+
4.8368,10.0132,-4.3239,-4.3276,0
|
425 |
+
-0.12196,8.8068,0.94566,-4.2267,0
|
426 |
+
1.9429,6.3961,0.092248,0.58102,0
|
427 |
+
1.742,-4.809,8.2142,-2.0659,0
|
428 |
+
-1.5222,10.8409,2.7827,-4.0974,0
|
429 |
+
-1.3,10.2678,-2.953,-5.8638,0
|
430 |
+
3.4246,-0.14693,0.80342,0.29136,0
|
431 |
+
2.5503,-4.9518,6.3729,-0.41596,0
|
432 |
+
1.5691,6.3465,-0.1828,-2.4099,0
|
433 |
+
1.3087,4.9228,2.0013,0.22024,0
|
434 |
+
5.1776,8.2316,-3.2511,-1.5694,0
|
435 |
+
2.229,9.6325,-3.1123,-2.7164,0
|
436 |
+
5.6272,10.0857,-4.2931,-3.8142,0
|
437 |
+
1.2138,8.7986,-2.1672,-0.74182,0
|
438 |
+
0.3798,0.7098,0.7572,-0.4444,0
|
439 |
+
0.5415,6.0319,1.6825,-0.46122,0
|
440 |
+
4.0524,5.6802,-1.9693,0.026279,0
|
441 |
+
4.7285,2.1065,-0.28305,1.5625,0
|
442 |
+
3.4359,0.66216,2.1041,1.8922,0
|
443 |
+
0.86816,10.2429,-1.4912,-4.0082,0
|
444 |
+
3.359,9.8022,-3.8209,-3.7133,0
|
445 |
+
3.6702,2.9942,0.85141,0.30688,0
|
446 |
+
1.3349,6.1189,0.46497,0.49826,0
|
447 |
+
3.1887,-3.4143,2.7742,-0.2026,0
|
448 |
+
2.4527,2.9653,0.20021,-0.056479,0
|
449 |
+
3.9121,2.9735,0.92852,0.60558,0
|
450 |
+
3.9364,10.5885,-3.725,-4.3133,0
|
451 |
+
3.9414,-3.2902,3.1674,1.0866,0
|
452 |
+
3.6922,-3.9585,4.3439,1.3517,0
|
453 |
+
5.681,7.795,-2.6848,-0.92544,0
|
454 |
+
0.77124,9.0862,-1.2281,-1.4996,0
|
455 |
+
3.5761,9.7753,-3.9795,-3.4638,0
|
456 |
+
1.602,6.1251,0.52924,0.47886,0
|
457 |
+
2.6682,10.216,-3.4414,-4.0069,0
|
458 |
+
2.0007,1.8644,2.6491,0.47369,0
|
459 |
+
0.64215,3.1287,4.2933,0.64696,0
|
460 |
+
4.3848,-3.0729,3.0423,1.2741,0
|
461 |
+
0.77445,9.0552,-2.4089,-1.3884,0
|
462 |
+
0.96574,8.393,-1.361,-1.4659,0
|
463 |
+
3.0948,8.7324,-2.9007,-0.96682,0
|
464 |
+
4.9362,7.6046,-2.3429,-0.85302,0
|
465 |
+
-1.9458,11.2217,1.9079,-3.4405,0
|
466 |
+
5.7403,-0.44284,0.38015,1.3763,0
|
467 |
+
-2.6989,12.1984,0.67661,-8.5482,0
|
468 |
+
1.1472,3.5985,1.9387,-0.43406,0
|
469 |
+
2.9742,8.96,-2.9024,-1.0379,0
|
470 |
+
4.5707,7.2094,-3.2794,-1.4944,0
|
471 |
+
0.1848,6.5079,2.0133,-0.87242,0
|
472 |
+
0.87256,9.2931,-0.7843,-2.1978,0
|
473 |
+
0.39559,6.8866,1.0588,-0.67587,0
|
474 |
+
3.8384,6.1851,-2.0439,-0.033204,0
|
475 |
+
2.8209,7.3108,-0.81857,-1.8784,0
|
476 |
+
2.5817,9.7546,-3.1749,-2.9957,0
|
477 |
+
3.8213,0.23175,2.0133,2.0564,0
|
478 |
+
0.3798,0.7098,0.7572,-0.4444,0
|
479 |
+
3.4893,6.69,-1.2042,-0.38751,0
|
480 |
+
-1.7781,0.8546,7.1303,0.027572,0
|
481 |
+
2.0962,2.4769,1.9379,-0.040962,0
|
482 |
+
0.94732,-0.57113,7.1903,-0.67587,0
|
483 |
+
2.8261,9.4007,-3.3034,-1.0509,0
|
484 |
+
0.0071249,8.3661,0.50781,-3.8155,0
|
485 |
+
0.96788,7.1907,1.2798,-2.4565,0
|
486 |
+
4.7432,2.1086,0.1368,1.6543,0
|
487 |
+
3.6575,7.2797,-2.2692,-1.144,0
|
488 |
+
3.8832,6.4023,-2.432,-0.98363,0
|
489 |
+
3.4776,8.811,-3.1886,-0.92285,0
|
490 |
+
1.1315,7.9212,1.093,-2.8444,0
|
491 |
+
2.8237,2.8597,0.19678,0.57196,0
|
492 |
+
1.9321,6.0423,0.26019,-2.053,0
|
493 |
+
3.0632,-3.3315,5.1305,0.8267,0
|
494 |
+
-1.8411,10.8306,2.769,-3.0901,0
|
495 |
+
2.8084,11.3045,-3.3394,-4.4194,0
|
496 |
+
2.5698,-4.4076,5.9856,0.078002,0
|
497 |
+
-0.12624,10.3216,-3.7121,-6.1185,0
|
498 |
+
3.3756,-4.0951,4.367,1.0698,0
|
499 |
+
-0.048008,-1.6037,8.4756,0.75558,0
|
500 |
+
0.5706,-0.0248,1.2421,-0.5621,0
|
501 |
+
0.88444,6.5906,0.55837,-0.44182,0
|
502 |
+
3.8644,3.7061,0.70403,0.35214,0
|
503 |
+
1.2999,2.5762,2.0107,-0.18967,0
|
504 |
+
2.0051,-6.8638,8.132,-0.2401,0
|
505 |
+
4.9294,0.27727,0.20792,0.33662,0
|
506 |
+
2.8297,6.3485,-0.73546,-0.58665,0
|
507 |
+
2.565,8.633,-2.9941,-1.3082,0
|
508 |
+
2.093,8.3061,0.022844,-3.2724,0
|
509 |
+
4.6014,5.6264,-2.1235,0.19309,0
|
510 |
+
5.0617,-0.35799,0.44698,0.99868,0
|
511 |
+
-0.2951,9.0489,-0.52725,-2.0789,0
|
512 |
+
3.577,2.4004,1.8908,0.73231,0
|
513 |
+
3.9433,2.5017,1.5215,0.903,0
|
514 |
+
2.6648,10.754,-3.3994,-4.1685,0
|
515 |
+
5.9374,6.1664,-2.5905,-0.36553,0
|
516 |
+
2.0153,1.8479,3.1375,0.42843,0
|
517 |
+
5.8782,5.9409,-2.8544,-0.60863,0
|
518 |
+
-2.3983,12.606,2.9464,-5.7888,0
|
519 |
+
1.762,4.3682,2.1384,0.75429,0
|
520 |
+
4.2406,-2.4852,1.608,0.7155,0
|
521 |
+
3.4669,6.87,-1.0568,-0.73147,0
|
522 |
+
3.1896,5.7526,-0.18537,-0.30087,0
|
523 |
+
0.81356,9.1566,-2.1492,-4.1814,0
|
524 |
+
0.52855,0.96427,4.0243,-1.0483,0
|
525 |
+
2.1319,-2.0403,2.5574,-0.061652,0
|
526 |
+
0.33111,4.5731,2.057,-0.18967,0
|
527 |
+
1.2746,8.8172,-1.5323,-1.7957,0
|
528 |
+
2.2091,7.4556,-1.3284,-3.3021,0
|
529 |
+
2.5328,7.528,-0.41929,-2.6478,0
|
530 |
+
3.6244,1.4609,1.3501,1.9284,0
|
531 |
+
-1.3885,12.5026,0.69118,-7.5487,0
|
532 |
+
5.7227,5.8312,-2.4097,-0.24527,0
|
533 |
+
3.3583,10.3567,-3.7301,-3.6991,0
|
534 |
+
2.5227,2.2369,2.7236,0.79438,0
|
535 |
+
0.045304,6.7334,1.0708,-0.9332,0
|
536 |
+
4.8278,7.7598,-2.4491,-1.2216,0
|
537 |
+
1.9476,-4.7738,8.527,-1.8668,0
|
538 |
+
2.7659,0.66216,4.1494,-0.28406,0
|
539 |
+
-0.10648,-0.76771,7.7575,0.64179,0
|
540 |
+
0.72252,-0.053811,5.6703,-1.3509,0
|
541 |
+
4.2475,1.4816,-0.48355,0.95343,0
|
542 |
+
3.9772,0.33521,2.2566,2.1625,0
|
543 |
+
3.6667,4.302,0.55923,0.33791,0
|
544 |
+
2.8232,10.8513,-3.1466,-3.9784,0
|
545 |
+
-1.4217,11.6542,-0.057699,-7.1025,0
|
546 |
+
4.2458,1.1981,0.66633,0.94696,0
|
547 |
+
4.1038,-4.8069,3.3491,-0.49225,0
|
548 |
+
1.4507,8.7903,-2.2324,-0.65259,0
|
549 |
+
3.4647,-3.9172,3.9746,0.36119,0
|
550 |
+
1.8533,6.1458,1.0176,-2.0401,0
|
551 |
+
3.5288,0.71596,1.9507,1.9375,0
|
552 |
+
3.9719,1.0367,0.75973,1.0013,0
|
553 |
+
3.534,9.3614,-3.6316,-1.2461,0
|
554 |
+
3.6894,9.887,-4.0788,-4.3664,0
|
555 |
+
3.0672,-4.4117,3.8238,-0.81682,0
|
556 |
+
2.6463,-4.8152,6.3549,0.003003,0
|
557 |
+
2.2893,3.733,0.6312,-0.39786,0
|
558 |
+
1.5673,7.9274,-0.056842,-2.1694,0
|
559 |
+
4.0405,0.51524,1.0279,1.106,0
|
560 |
+
4.3846,-4.8794,3.3662,-0.029324,0
|
561 |
+
2.0165,-0.25246,5.1707,1.0763,0
|
562 |
+
4.0446,11.1741,-4.3582,-4.7401,0
|
563 |
+
-0.33729,-0.64976,7.6659,0.72326,0
|
564 |
+
-2.4604,12.7302,0.91738,-7.6418,0
|
565 |
+
4.1195,10.9258,-3.8929,-4.1802,0
|
566 |
+
2.0193,0.82356,4.6369,1.4202,0
|
567 |
+
1.5701,7.9129,0.29018,-2.1953,0
|
568 |
+
2.6415,7.586,-0.28562,-1.6677,0
|
569 |
+
5.0214,8.0764,-3.0515,-1.7155,0
|
570 |
+
4.3435,3.3295,0.83598,0.64955,0
|
571 |
+
1.8238,-6.7748,8.3873,-0.54139,0
|
572 |
+
3.9382,0.9291,0.78543,0.6767,0
|
573 |
+
2.2517,-5.1422,4.2916,-1.2487,0
|
574 |
+
5.504,10.3671,-4.413,-4.0211,0
|
575 |
+
2.8521,9.171,-3.6461,-1.2047,0
|
576 |
+
1.1676,9.1566,-2.0867,-0.80647,0
|
577 |
+
2.6104,8.0081,-0.23592,-1.7608,0
|
578 |
+
0.32444,10.067,-1.1982,-4.1284,0
|
579 |
+
3.8962,-4.7904,3.3954,-0.53751,0
|
580 |
+
2.1752,-0.8091,5.1022,-0.67975,0
|
581 |
+
1.1588,8.9331,-2.0807,-1.1272,0
|
582 |
+
4.7072,8.2957,-2.5605,-1.4905,0
|
583 |
+
-1.9667,11.8052,-0.40472,-7.8719,0
|
584 |
+
4.0552,0.40143,1.4563,0.65343,0
|
585 |
+
2.3678,-6.839,8.4207,-0.44829,0
|
586 |
+
0.33565,6.8369,0.69718,-0.55691,0
|
587 |
+
4.3398,-5.3036,3.8803,-0.70432,0
|
588 |
+
1.5456,8.5482,0.4187,-2.1784,0
|
589 |
+
1.4276,8.3847,-2.0995,-1.9677,0
|
590 |
+
-0.27802,8.1881,-3.1338,-2.5276,0
|
591 |
+
0.93611,8.6413,-1.6351,-1.3043,0
|
592 |
+
4.6352,-3.0087,2.6773,1.212,0
|
593 |
+
1.5268,-5.5871,8.6564,-1.722,0
|
594 |
+
0.95626,2.4728,4.4578,0.21636,0
|
595 |
+
-2.7914,1.7734,6.7756,-0.39915,0
|
596 |
+
5.2032,3.5116,-1.2538,1.0129,0
|
597 |
+
3.1836,7.2321,-1.0713,-2.5909,0
|
598 |
+
0.65497,5.1815,1.0673,-0.42113,0
|
599 |
+
5.6084,10.3009,-4.8003,-4.3534,0
|
600 |
+
1.105,7.4432,0.41099,-3.0332,0
|
601 |
+
3.9292,-2.9156,2.2129,0.30817,0
|
602 |
+
1.1558,6.4003,1.5506,0.6961,0
|
603 |
+
2.5581,2.6218,1.8513,0.40257,0
|
604 |
+
2.7831,10.9796,-3.557,-4.4039,0
|
605 |
+
3.7635,2.7811,0.66119,0.34179,0
|
606 |
+
-2.6479,10.1374,-1.331,-5.4707,0
|
607 |
+
1.0652,8.3682,-1.4004,-1.6509,0
|
608 |
+
-1.4275,11.8797,0.41613,-6.9978,0
|
609 |
+
5.7456,10.1808,-4.7857,-4.3366,0
|
610 |
+
5.086,3.2798,-1.2701,1.1189,0
|
611 |
+
3.4092,5.4049,-2.5228,-0.89958,0
|
612 |
+
-0.2361,9.3221,2.1307,-4.3793,0
|
613 |
+
3.8197,8.9951,-4.383,-4.0327,0
|
614 |
+
-1.1391,1.8127,6.9144,0.70127,0
|
615 |
+
4.9249,0.68906,0.77344,1.2095,0
|
616 |
+
2.5089,6.841,-0.029423,0.44912,0
|
617 |
+
-0.2062,9.2207,-3.7044,-6.8103,0
|
618 |
+
3.946,6.8514,-1.5443,-0.5582,0
|
619 |
+
-0.278,8.1881,-3.1338,-2.5276,0
|
620 |
+
1.8592,3.2074,-0.15966,-0.26208,0
|
621 |
+
0.56953,7.6294,1.5754,-3.2233,0
|
622 |
+
3.4626,-4.449,3.5427,0.15429,0
|
623 |
+
3.3951,1.1484,2.1401,2.0862,0
|
624 |
+
5.0429,-0.52974,0.50439,1.106,0
|
625 |
+
3.7758,7.1783,-1.5195,0.40128,0
|
626 |
+
4.6562,7.6398,-2.4243,-1.2384,0
|
627 |
+
4.0948,-2.9674,2.3689,0.75429,0
|
628 |
+
1.8384,6.063,0.54723,0.51248,0
|
629 |
+
2.0153,0.43661,4.5864,-0.3151,0
|
630 |
+
3.5251,0.7201,1.6928,0.64438,0
|
631 |
+
3.757,-5.4236,3.8255,-1.2526,0
|
632 |
+
2.5989,3.5178,0.7623,0.81119,0
|
633 |
+
1.8994,0.97462,4.2265,0.81377,0
|
634 |
+
3.6941,-3.9482,4.2625,1.1577,0
|
635 |
+
4.4295,-2.3507,1.7048,0.90946,0
|
636 |
+
6.8248,5.2187,-2.5425,0.5461,0
|
637 |
+
1.8967,-2.5163,2.8093,-0.79742,0
|
638 |
+
2.1526,-6.1665,8.0831,-0.34355,0
|
639 |
+
3.3004,7.0811,-1.3258,0.22283,0
|
640 |
+
2.7213,7.05,-0.58808,0.41809,0
|
641 |
+
3.8846,-3.0336,2.5334,0.20214,0
|
642 |
+
4.1665,-0.4449,0.23448,0.27843,0
|
643 |
+
0.94225,5.8561,1.8762,-0.32544,0
|
644 |
+
5.1321,-0.031048,0.32616,1.1151,0
|
645 |
+
0.38251,6.8121,1.8128,-0.61251,0
|
646 |
+
3.0333,-2.5928,2.3183,0.303,0
|
647 |
+
2.9233,6.0464,-0.11168,-0.58665,0
|
648 |
+
1.162,10.2926,-1.2821,-4.0392,0
|
649 |
+
3.7791,2.5762,1.3098,0.5655,0
|
650 |
+
0.77765,5.9781,1.1941,-0.3526,0
|
651 |
+
-0.38388,-1.0471,8.0514,0.49567,0
|
652 |
+
0.21084,9.4359,-0.094543,-1.859,0
|
653 |
+
2.9571,-4.5938,5.9068,0.57196,0
|
654 |
+
4.6439,-3.3729,2.5976,0.55257,0
|
655 |
+
3.3577,-4.3062,6.0241,0.18274,0
|
656 |
+
3.5127,2.9073,1.0579,0.40774,0
|
657 |
+
2.6562,10.7044,-3.3085,-4.0767,0
|
658 |
+
-1.3612,10.694,1.7022,-2.9026,0
|
659 |
+
-0.278,8.1881,-3.1338,-2.5276,0
|
660 |
+
1.04,-6.9321,8.2888,-1.2991,0
|
661 |
+
2.1881,2.7356,1.3278,-0.1832,0
|
662 |
+
4.2756,-2.6528,2.1375,0.94437,0
|
663 |
+
-0.11996,6.8741,0.91995,-0.6694,0
|
664 |
+
2.9736,8.7944,-3.6359,-1.3754,0
|
665 |
+
3.7798,-3.3109,2.6491,0.066365,0
|
666 |
+
5.3586,3.7557,-1.7345,1.0789,0
|
667 |
+
1.8373,6.1292,0.84027,0.55257,0
|
668 |
+
1.2262,0.89599,5.7568,-0.11596,0
|
669 |
+
-0.048008,-0.56078,7.7215,0.453,0
|
670 |
+
0.5706,-0.024841,1.2421,-0.56208,0
|
671 |
+
4.3634,0.46351,1.4281,2.0202,0
|
672 |
+
3.482,-4.1634,3.5008,-0.078462,0
|
673 |
+
0.51947,-3.2633,3.0895,-0.98492,0
|
674 |
+
2.3164,-2.628,3.1529,-0.08622,0
|
675 |
+
-1.8348,11.0334,3.1863,-4.8888,0
|
676 |
+
1.3754,8.8793,-1.9136,-0.53751,0
|
677 |
+
-0.16682,5.8974,0.49839,-0.70044,0
|
678 |
+
0.29961,7.1328,-0.31475,-1.1828,0
|
679 |
+
0.25035,9.3262,-3.6873,-6.2543,0
|
680 |
+
2.4673,1.3926,1.7125,0.41421,0
|
681 |
+
0.77805,6.6424,-1.1425,-1.0573,0
|
682 |
+
3.4465,2.9508,1.0271,0.5461,0
|
683 |
+
2.2429,-4.1427,5.2333,-0.40173,0
|
684 |
+
3.7321,-3.884,3.3577,-0.0060486,0
|
685 |
+
4.3365,-3.584,3.6884,0.74912,0
|
686 |
+
-2.0759,10.8223,2.6439,-4.837,0
|
687 |
+
4.0715,7.6398,-2.0824,-1.1698,0
|
688 |
+
0.76163,5.8209,1.1959,-0.64613,0
|
689 |
+
-0.53966,7.3273,0.46583,-1.4543,0
|
690 |
+
2.6213,5.7919,0.065686,-1.5759,0
|
691 |
+
3.0242,-3.3378,2.5865,-0.54785,0
|
692 |
+
5.8519,5.3905,-2.4037,-0.061652,0
|
693 |
+
0.5706,-0.0248,1.2421,-0.5621,0
|
694 |
+
3.9771,11.1513,-3.9272,-4.3444,0
|
695 |
+
1.5478,9.1814,-1.6326,-1.7375,0
|
696 |
+
0.74054,0.36625,2.1992,0.48403,0
|
697 |
+
0.49571,10.2243,-1.097,-4.0159,0
|
698 |
+
1.645,7.8612,-0.87598,-3.5569,0
|
699 |
+
3.6077,6.8576,-1.1622,0.28231,0
|
700 |
+
3.2403,-3.7082,5.2804,0.41291,0
|
701 |
+
3.9166,10.2491,-4.0926,-4.4659,0
|
702 |
+
3.9262,6.0299,-2.0156,-0.065531,0
|
703 |
+
5.591,10.4643,-4.3839,-4.3379,0
|
704 |
+
3.7522,-3.6978,3.9943,1.3051,0
|
705 |
+
1.3114,4.5462,2.2935,0.22541,0
|
706 |
+
3.7022,6.9942,-1.8511,-0.12889,0
|
707 |
+
4.364,-3.1039,2.3757,0.78532,0
|
708 |
+
3.5829,1.4423,1.0219,1.4008,0
|
709 |
+
4.65,-4.8297,3.4553,-0.25174,0
|
710 |
+
5.1731,3.9606,-1.983,0.40774,0
|
711 |
+
3.2692,3.4184,0.20706,-0.066824,0
|
712 |
+
2.4012,1.6223,3.0312,0.71679,0
|
713 |
+
1.7257,-4.4697,8.2219,-1.8073,0
|
714 |
+
4.7965,6.9859,-1.9967,-0.35001,0
|
715 |
+
4.0962,10.1891,-3.9323,-4.1827,0
|
716 |
+
2.5559,3.3605,2.0321,0.26809,0
|
717 |
+
3.4916,8.5709,-3.0326,-0.59182,0
|
718 |
+
0.5195,-3.2633,3.0895,-0.9849,0
|
719 |
+
2.9856,7.2673,-0.409,-2.2431,0
|
720 |
+
4.0932,5.4132,-1.8219,0.23576,0
|
721 |
+
1.7748,-0.76978,5.5854,1.3039,0
|
722 |
+
5.2012,0.32694,0.17965,1.1797,0
|
723 |
+
-0.45062,-1.3678,7.0858,-0.40303,0
|
724 |
+
4.8451,8.1116,-2.9512,-1.4724,0
|
725 |
+
0.74841,7.2756,1.1504,-0.5388,0
|
726 |
+
5.1213,8.5565,-3.3917,-1.5474,0
|
727 |
+
3.6181,-3.7454,2.8273,-0.71208,0
|
728 |
+
0.040498,8.5234,1.4461,-3.9306,0
|
729 |
+
-2.6479,10.1374,-1.331,-5.4707,0
|
730 |
+
0.37984,0.70975,0.75716,-0.44441,0
|
731 |
+
-0.95923,0.091039,6.2204,-1.4828,0
|
732 |
+
2.8672,10.0008,-3.2049,-3.1095,0
|
733 |
+
1.0182,9.109,-0.62064,-1.7129,0
|
734 |
+
-2.7143,11.4535,2.1092,-3.9629,0
|
735 |
+
3.8244,-3.1081,2.4537,0.52024,0
|
736 |
+
2.7961,2.121,1.8385,0.38317,0
|
737 |
+
3.5358,6.7086,-0.81857,0.47886,0
|
738 |
+
-0.7056,8.7241,2.2215,-4.5965,0
|
739 |
+
4.1542,7.2756,-2.4766,-1.2099,0
|
740 |
+
0.92703,9.4318,-0.66263,-1.6728,0
|
741 |
+
1.8216,-6.4748,8.0514,-0.41855,0
|
742 |
+
-2.4473,12.6247,0.73573,-7.6612,0
|
743 |
+
3.5862,-3.0957,2.8093,0.24481,0
|
744 |
+
0.66191,9.6594,-0.28819,-1.6638,0
|
745 |
+
4.7926,1.7071,-0.051701,1.4926,0
|
746 |
+
4.9852,8.3516,-2.5425,-1.2823,0
|
747 |
+
0.75736,3.0294,2.9164,-0.068117,0
|
748 |
+
4.6499,7.6336,-1.9427,-0.37458,0
|
749 |
+
-0.023579,7.1742,0.78457,-0.75734,0
|
750 |
+
0.85574,0.0082678,6.6042,-0.53104,0
|
751 |
+
0.88298,0.66009,6.0096,-0.43277,0
|
752 |
+
4.0422,-4.391,4.7466,1.137,0
|
753 |
+
2.2546,8.0992,-0.24877,-3.2698,0
|
754 |
+
0.38478,6.5989,-0.3336,-0.56466,0
|
755 |
+
3.1541,-5.1711,6.5991,0.57455,0
|
756 |
+
2.3969,0.23589,4.8477,1.437,0
|
757 |
+
4.7114,2.0755,-0.2702,1.2379,0
|
758 |
+
4.0127,10.1477,-3.9366,-4.0728,0
|
759 |
+
2.6606,3.1681,1.9619,0.18662,0
|
760 |
+
3.931,1.8541,-0.023425,1.2314,0
|
761 |
+
0.01727,8.693,1.3989,-3.9668,0
|
762 |
+
3.2414,0.40971,1.4015,1.1952,0
|
763 |
+
2.2504,3.5757,0.35273,0.2836,0
|
764 |
+
-1.3971,3.3191,-1.3927,-1.9948,1
|
765 |
+
0.39012,-0.14279,-0.031994,0.35084,1
|
766 |
+
-1.6677,-7.1535,7.8929,0.96765,1
|
767 |
+
-3.8483,-12.8047,15.6824,-1.281,1
|
768 |
+
-3.5681,-8.213,10.083,0.96765,1
|
769 |
+
-2.2804,-0.30626,1.3347,1.3763,1
|
770 |
+
-1.7582,2.7397,-2.5323,-2.234,1
|
771 |
+
-0.89409,3.1991,-1.8219,-2.9452,1
|
772 |
+
0.3434,0.12415,-0.28733,0.14654,1
|
773 |
+
-0.9854,-6.661,5.8245,0.5461,1
|
774 |
+
-2.4115,-9.1359,9.3444,-0.65259,1
|
775 |
+
-1.5252,-6.2534,5.3524,0.59912,1
|
776 |
+
-0.61442,-0.091058,-0.31818,0.50214,1
|
777 |
+
-0.36506,2.8928,-3.6461,-3.0603,1
|
778 |
+
-5.9034,6.5679,0.67661,-6.6797,1
|
779 |
+
-1.8215,2.7521,-0.72261,-2.353,1
|
780 |
+
-0.77461,-1.8768,2.4023,1.1319,1
|
781 |
+
-1.8187,-9.0366,9.0162,-0.12243,1
|
782 |
+
-3.5801,-12.9309,13.1779,-2.5677,1
|
783 |
+
-1.8219,-6.8824,5.4681,0.057313,1
|
784 |
+
-0.3481,-0.38696,-0.47841,0.62627,1
|
785 |
+
0.47368,3.3605,-4.5064,-4.0431,1
|
786 |
+
-3.4083,4.8587,-0.76888,-4.8668,1
|
787 |
+
-1.6662,-0.30005,1.4238,0.024986,1
|
788 |
+
-2.0962,-7.1059,6.6188,-0.33708,1
|
789 |
+
-2.6685,-10.4519,9.1139,-1.7323,1
|
790 |
+
-0.47465,-4.3496,1.9901,0.7517,1
|
791 |
+
1.0552,1.1857,-2.6411,0.11033,1
|
792 |
+
1.1644,3.8095,-4.9408,-4.0909,1
|
793 |
+
-4.4779,7.3708,-0.31218,-6.7754,1
|
794 |
+
-2.7338,0.45523,2.4391,0.21766,1
|
795 |
+
-2.286,-5.4484,5.8039,0.88231,1
|
796 |
+
-1.6244,-6.3444,4.6575,0.16981,1
|
797 |
+
0.50813,0.47799,-1.9804,0.57714,1
|
798 |
+
1.6408,4.2503,-4.9023,-2.6621,1
|
799 |
+
0.81583,4.84,-5.2613,-6.0823,1
|
800 |
+
-5.4901,9.1048,-0.38758,-5.9763,1
|
801 |
+
-3.2238,2.7935,0.32274,-0.86078,1
|
802 |
+
-2.0631,-1.5147,1.219,0.44524,1
|
803 |
+
-0.91318,-2.0113,-0.19565,0.066365,1
|
804 |
+
0.6005,1.9327,-3.2888,-0.32415,1
|
805 |
+
0.91315,3.3377,-4.0557,-1.6741,1
|
806 |
+
-0.28015,3.0729,-3.3857,-2.9155,1
|
807 |
+
-3.6085,3.3253,-0.51954,-3.5737,1
|
808 |
+
-6.2003,8.6806,0.0091344,-3.703,1
|
809 |
+
-4.2932,3.3419,0.77258,-0.99785,1
|
810 |
+
-3.0265,-0.062088,0.68604,-0.055186,1
|
811 |
+
-1.7015,-0.010356,-0.99337,-0.53104,1
|
812 |
+
-0.64326,2.4748,-2.9452,-1.0276,1
|
813 |
+
-0.86339,1.9348,-2.3729,-1.0897,1
|
814 |
+
-2.0659,1.0512,-0.46298,-1.0974,1
|
815 |
+
-2.1333,1.5685,-0.084261,-1.7453,1
|
816 |
+
-1.2568,-1.4733,2.8718,0.44653,1
|
817 |
+
-3.1128,-6.841,10.7402,-1.0172,1
|
818 |
+
-4.8554,-5.9037,10.9818,-0.82199,1
|
819 |
+
-2.588,3.8654,-0.3336,-1.2797,1
|
820 |
+
0.24394,1.4733,-1.4192,-0.58535,1
|
821 |
+
-1.5322,-5.0966,6.6779,0.17498,1
|
822 |
+
-4.0025,-13.4979,17.6772,-3.3202,1
|
823 |
+
-4.0173,-8.3123,12.4547,-1.4375,1
|
824 |
+
-3.0731,-0.53181,2.3877,0.77627,1
|
825 |
+
-1.979,3.2301,-1.3575,-2.5819,1
|
826 |
+
-0.4294,-0.14693,0.044265,-0.15605,1
|
827 |
+
-2.234,-7.0314,7.4936,0.61334,1
|
828 |
+
-4.211,-12.4736,14.9704,-1.3884,1
|
829 |
+
-3.8073,-8.0971,10.1772,0.65084,1
|
830 |
+
-2.5912,-0.10554,1.2798,1.0414,1
|
831 |
+
-2.2482,3.0915,-2.3969,-2.6711,1
|
832 |
+
-1.4427,3.2922,-1.9702,-3.4392,1
|
833 |
+
-0.39416,-0.020702,-0.066267,-0.44699,1
|
834 |
+
-1.522,-6.6383,5.7491,-0.10691,1
|
835 |
+
-2.8267,-9.0407,9.0694,-0.98233,1
|
836 |
+
-1.7263,-6.0237,5.2419,0.29524,1
|
837 |
+
-0.94255,0.039307,-0.24192,0.31593,1
|
838 |
+
-0.89569,3.0025,-3.6067,-3.4457,1
|
839 |
+
-6.2815,6.6651,0.52581,-7.0107,1
|
840 |
+
-2.3211,3.166,-1.0002,-2.7151,1
|
841 |
+
-1.3414,-2.0776,2.8093,0.60688,1
|
842 |
+
-2.258,-9.3263,9.3727,-0.85949,1
|
843 |
+
-3.8858,-12.8461,12.7957,-3.1353,1
|
844 |
+
-1.8969,-6.7893,5.2761,-0.32544,1
|
845 |
+
-0.52645,-0.24832,-0.45613,0.41938,1
|
846 |
+
0.0096613,3.5612,-4.407,-4.4103,1
|
847 |
+
-3.8826,4.898,-0.92311,-5.0801,1
|
848 |
+
-2.1405,-0.16762,1.321,-0.20906,1
|
849 |
+
-2.4824,-7.3046,6.839,-0.59053,1
|
850 |
+
-2.9098,-10.0712,8.4156,-1.9948,1
|
851 |
+
-0.60975,-4.002,1.8471,0.6017,1
|
852 |
+
0.83625,1.1071,-2.4706,-0.062945,1
|
853 |
+
0.60731,3.9544,-4.772,-4.4853,1
|
854 |
+
-4.8861,7.0542,-0.17252,-6.959,1
|
855 |
+
-3.1366,0.42212,2.6225,-0.064238,1
|
856 |
+
-2.5754,-5.6574,6.103,0.65214,1
|
857 |
+
-1.8782,-6.5865,4.8486,-0.021566,1
|
858 |
+
0.24261,0.57318,-1.9402,0.44007,1
|
859 |
+
1.296,4.2855,-4.8457,-2.9013,1
|
860 |
+
0.25943,5.0097,-5.0394,-6.3862,1
|
861 |
+
-5.873,9.1752,-0.27448,-6.0422,1
|
862 |
+
-3.4605,2.6901,0.16165,-1.0224,1
|
863 |
+
-2.3797,-1.4402,1.1273,0.16076,1
|
864 |
+
-1.2424,-1.7175,-0.52553,-0.21036,1
|
865 |
+
0.20216,1.9182,-3.2828,-0.61768,1
|
866 |
+
0.59823,3.5012,-3.9795,-1.7841,1
|
867 |
+
-0.77995,3.2322,-3.282,-3.1004,1
|
868 |
+
-4.1409,3.4619,-0.47841,-3.8879,1
|
869 |
+
-6.5084,8.7696,0.23191,-3.937,1
|
870 |
+
-4.4996,3.4288,0.56265,-1.1672,1
|
871 |
+
-3.3125,0.10139,0.55323,-0.2957,1
|
872 |
+
-1.9423,0.3766,-1.2898,-0.82458,1
|
873 |
+
-0.75793,2.5349,-3.0464,-1.2629,1
|
874 |
+
-0.95403,1.9824,-2.3163,-1.1957,1
|
875 |
+
-2.2173,1.4671,-0.72689,-1.1724,1
|
876 |
+
-2.799,1.9679,-0.42357,-2.1125,1
|
877 |
+
-1.8629,-0.84841,2.5377,0.097399,1
|
878 |
+
-3.5916,-6.2285,10.2389,-1.1543,1
|
879 |
+
-5.1216,-5.3118,10.3846,-1.0612,1
|
880 |
+
-3.2854,4.0372,-0.45356,-1.8228,1
|
881 |
+
-0.56877,1.4174,-1.4252,-1.1246,1
|
882 |
+
-2.3518,-4.8359,6.6479,-0.060358,1
|
883 |
+
-4.4861,-13.2889,17.3087,-3.2194,1
|
884 |
+
-4.3876,-7.7267,11.9655,-1.4543,1
|
885 |
+
-3.3604,-0.32696,2.1324,0.6017,1
|
886 |
+
-1.0112,2.9984,-1.1664,-1.6185,1
|
887 |
+
0.030219,-1.0512,1.4024,0.77369,1
|
888 |
+
-1.6514,-8.4985,9.1122,1.2379,1
|
889 |
+
-3.2692,-12.7406,15.5573,-0.14182,1
|
890 |
+
-2.5701,-6.8452,8.9999,2.1353,1
|
891 |
+
-1.3066,0.25244,0.7623,1.7758,1
|
892 |
+
-1.6637,3.2881,-2.2701,-2.2224,1
|
893 |
+
-0.55008,2.8659,-1.6488,-2.4319,1
|
894 |
+
0.21431,-0.69529,0.87711,0.29653,1
|
895 |
+
-0.77288,-7.4473,6.492,0.36119,1
|
896 |
+
-1.8391,-9.0883,9.2416,-0.10432,1
|
897 |
+
-0.63298,-5.1277,4.5624,1.4797,1
|
898 |
+
0.0040545,0.62905,-0.64121,0.75817,1
|
899 |
+
-0.28696,3.1784,-3.5767,-3.1896,1
|
900 |
+
-5.2406,6.6258,-0.19908,-6.8607,1
|
901 |
+
-1.4446,2.1438,-0.47241,-1.6677,1
|
902 |
+
-0.65767,-2.8018,3.7115,0.99739,1
|
903 |
+
-1.5449,-10.1498,9.6152,-1.2332,1
|
904 |
+
-2.8957,-12.0205,11.9149,-2.7552,1
|
905 |
+
-0.81479,-5.7381,4.3919,0.3211,1
|
906 |
+
0.50225,0.65388,-1.1793,0.39998,1
|
907 |
+
0.74521,3.6357,-4.4044,-4.1414,1
|
908 |
+
-2.9146,4.0537,-0.45699,-4.0327,1
|
909 |
+
-1.3907,-1.3781,2.3055,-0.021566,1
|
910 |
+
-1.786,-8.1157,7.0858,-1.2112,1
|
911 |
+
-1.7322,-9.2828,7.719,-1.7168,1
|
912 |
+
0.55298,-3.4619,1.7048,1.1008,1
|
913 |
+
2.031,1.852,-3.0121,0.003003,1
|
914 |
+
1.2279,4.0309,-4.6435,-3.9125,1
|
915 |
+
-4.2249,6.2699,0.15822,-5.5457,1
|
916 |
+
-2.5346,-0.77392,3.3602,0.00171,1
|
917 |
+
-1.749,-6.332,6.0987,0.14266,1
|
918 |
+
-0.539,-5.167,3.4399,0.052141,1
|
919 |
+
1.5631,0.89599,-1.9702,0.65472,1
|
920 |
+
2.3917,4.5565,-4.9888,-2.8987,1
|
921 |
+
0.89512,4.7738,-4.8431,-5.5909,1
|
922 |
+
-5.4808,8.1819,0.27818,-5.0323,1
|
923 |
+
-2.8833,1.7713,0.68946,-0.4638,1
|
924 |
+
-1.4174,-2.2535,1.518,0.61981,1
|
925 |
+
0.4283,-0.94981,-1.0731,0.3211,1
|
926 |
+
1.5904,2.2121,-3.1183,-0.11725,1
|
927 |
+
1.7425,3.6833,-4.0129,-1.7207,1
|
928 |
+
-0.23356,3.2405,-3.0669,-2.7784,1
|
929 |
+
-3.6227,3.9958,-0.35845,-3.9047,1
|
930 |
+
-6.1536,7.9295,0.61663,-3.2646,1
|
931 |
+
-3.9172,2.6652,0.78886,-0.7819,1
|
932 |
+
-2.2214,-0.23798,0.56008,0.05602,1
|
933 |
+
-0.49241,0.89392,-1.6283,-0.56854,1
|
934 |
+
0.26517,2.4066,-2.8416,-0.59958,1
|
935 |
+
-0.10234,1.8189,-2.2169,-0.56725,1
|
936 |
+
-1.6176,1.0926,-0.35502,-0.59958,1
|
937 |
+
-1.8448,1.254,0.27218,-1.0728,1
|
938 |
+
-1.2786,-2.4087,4.5735,0.47627,1
|
939 |
+
-2.902,-7.6563,11.8318,-0.84268,1
|
940 |
+
-4.3773,-5.5167,10.939,-0.4082,1
|
941 |
+
-2.0529,3.8385,-0.79544,-1.2138,1
|
942 |
+
0.18868,0.70148,-0.51182,0.0055892,1
|
943 |
+
-1.7279,-6.841,8.9494,0.68058,1
|
944 |
+
-3.3793,-13.7731,17.9274,-2.0323,1
|
945 |
+
-3.1273,-7.1121,11.3897,-0.083634,1
|
946 |
+
-2.121,-0.05588,1.949,1.353,1
|
947 |
+
-1.7697,3.4329,-1.2144,-2.3789,1
|
948 |
+
-0.0012852,0.13863,-0.19651,0.0081754,1
|
949 |
+
-1.682,-6.8121,7.1398,1.3323,1
|
950 |
+
-3.4917,-12.1736,14.3689,-0.61639,1
|
951 |
+
-3.1158,-8.6289,10.4403,0.97153,1
|
952 |
+
-2.0891,-0.48422,1.704,1.7435,1
|
953 |
+
-1.6936,2.7852,-2.1835,-1.9276,1
|
954 |
+
-1.2846,3.2715,-1.7671,-3.2608,1
|
955 |
+
-0.092194,0.39315,-0.32846,-0.13794,1
|
956 |
+
-1.0292,-6.3879,5.5255,0.79955,1
|
957 |
+
-2.2083,-9.1069,8.9991,-0.28406,1
|
958 |
+
-1.0744,-6.3113,5.355,0.80472,1
|
959 |
+
-0.51003,-0.23591,0.020273,0.76334,1
|
960 |
+
-0.36372,3.0439,-3.4816,-2.7836,1
|
961 |
+
-6.3979,6.4479,1.0836,-6.6176,1
|
962 |
+
-2.2501,3.3129,-0.88369,-2.8974,1
|
963 |
+
-1.1859,-1.2519,2.2635,0.77239,1
|
964 |
+
-1.8076,-8.8131,8.7086,-0.21682,1
|
965 |
+
-3.3863,-12.9889,13.0545,-2.7202,1
|
966 |
+
-1.4106,-7.108,5.6454,0.31335,1
|
967 |
+
-0.21394,-0.68287,0.096532,1.1965,1
|
968 |
+
0.48797,3.5674,-4.3882,-3.8116,1
|
969 |
+
-3.8167,5.1401,-0.65063,-5.4306,1
|
970 |
+
-1.9555,0.20692,1.2473,-0.3707,1
|
971 |
+
-2.1786,-6.4479,6.0344,-0.20777,1
|
972 |
+
-2.3299,-9.9532,8.4756,-1.8733,1
|
973 |
+
0.0031201,-4.0061,1.7956,0.91722,1
|
974 |
+
1.3518,1.0595,-2.3437,0.39998,1
|
975 |
+
1.2309,3.8923,-4.8277,-4.0069,1
|
976 |
+
-5.0301,7.5032,-0.13396,-7.5034,1
|
977 |
+
-3.0799,0.60836,2.7039,-0.23751,1
|
978 |
+
-2.2987,-5.227,5.63,0.91722,1
|
979 |
+
-1.239,-6.541,4.8151,-0.033204,1
|
980 |
+
0.75896,0.29176,-1.6506,0.83834,1
|
981 |
+
1.6799,4.2068,-4.5398,-2.3931,1
|
982 |
+
0.63655,5.2022,-5.2159,-6.1211,1
|
983 |
+
-6.0598,9.2952,-0.43642,-6.3694,1
|
984 |
+
-3.518,2.8763,0.1548,-1.2086,1
|
985 |
+
-2.0336,-1.4092,1.1582,0.36507,1
|
986 |
+
-0.69745,-1.7672,-0.34474,-0.12372,1
|
987 |
+
0.75108,1.9161,-3.1098,-0.20518,1
|
988 |
+
0.84546,3.4826,-3.6307,-1.3961,1
|
989 |
+
-0.55648,3.2136,-3.3085,-2.7965,1
|
990 |
+
-3.6817,3.2239,-0.69347,-3.4004,1
|
991 |
+
-6.7526,8.8172,-0.061983,-3.725,1
|
992 |
+
-4.577,3.4515,0.66719,-0.94742,1
|
993 |
+
-2.9883,0.31245,0.45041,0.068951,1
|
994 |
+
-1.4781,0.14277,-1.1622,-0.48579,1
|
995 |
+
-0.46651,2.3383,-2.9812,-1.0431,1
|
996 |
+
-0.8734,1.6533,-2.1964,-0.78061,1
|
997 |
+
-2.1234,1.1815,-0.55552,-0.81165,1
|
998 |
+
-2.3142,2.0838,-0.46813,-1.6767,1
|
999 |
+
-1.4233,-0.98912,2.3586,0.39481,1
|
1000 |
+
-3.0866,-6.6362,10.5405,-0.89182,1
|
1001 |
+
-4.7331,-6.1789,11.388,-1.0741,1
|
1002 |
+
-2.8829,3.8964,-0.1888,-1.1672,1
|
1003 |
+
-0.036127,1.525,-1.4089,-0.76121,1
|
1004 |
+
-1.7104,-4.778,6.2109,0.3974,1
|
1005 |
+
-3.8203,-13.0551,16.9583,-2.3052,1
|
1006 |
+
-3.7181,-8.5089,12.363,-0.95518,1
|
1007 |
+
-2.899,-0.60424,2.6045,1.3776,1
|
1008 |
+
-0.98193,2.7956,-1.2341,-1.5668,1
|
1009 |
+
-0.17296,-1.1816,1.3818,0.7336,1
|
1010 |
+
-1.9409,-8.6848,9.155,0.94049,1
|
1011 |
+
-3.5713,-12.4922,14.8881,-0.47027,1
|
1012 |
+
-2.9915,-6.6258,8.6521,1.8198,1
|
1013 |
+
-1.8483,0.31038,0.77344,1.4189,1
|
1014 |
+
-2.2677,3.2964,-2.2563,-2.4642,1
|
1015 |
+
-0.50816,2.868,-1.8108,-2.2612,1
|
1016 |
+
0.14329,-1.0885,1.0039,0.48791,1
|
1017 |
+
-0.90784,-7.9026,6.7807,0.34179,1
|
1018 |
+
-2.0042,-9.3676,9.3333,-0.10303,1
|
1019 |
+
-0.93587,-5.1008,4.5367,1.3866,1
|
1020 |
+
-0.40804,0.54214,-0.52725,0.6586,1
|
1021 |
+
-0.8172,3.3812,-3.6684,-3.456,1
|
1022 |
+
-4.8392,6.6755,-0.24278,-6.5775,1
|
1023 |
+
-1.2792,2.1376,-0.47584,-1.3974,1
|
1024 |
+
-0.66008,-3.226,3.8058,1.1836,1
|
1025 |
+
-1.7713,-10.7665,10.2184,-1.0043,1
|
1026 |
+
-3.0061,-12.2377,11.9552,-2.1603,1
|
1027 |
+
-1.1022,-5.8395,4.5641,0.68705,1
|
1028 |
+
0.11806,0.39108,-0.98223,0.42843,1
|
1029 |
+
0.11686,3.735,-4.4379,-4.3741,1
|
1030 |
+
-2.7264,3.9213,-0.49212,-3.6371,1
|
1031 |
+
-1.2369,-1.6906,2.518,0.51636,1
|
1032 |
+
-1.8439,-8.6475,7.6796,-0.66682,1
|
1033 |
+
-1.8554,-9.6035,7.7764,-0.97716,1
|
1034 |
+
0.16358,-3.3584,1.3749,1.3569,1
|
1035 |
+
1.5077,1.9596,-3.0584,-0.12243,1
|
1036 |
+
0.67886,4.1199,-4.569,-4.1414,1
|
1037 |
+
-3.9934,5.8333,0.54723,-4.9379,1
|
1038 |
+
-2.3898,-0.78427,3.0141,0.76205,1
|
1039 |
+
-1.7976,-6.7686,6.6753,0.89912,1
|
1040 |
+
-0.70867,-5.5602,4.0483,0.903,1
|
1041 |
+
1.0194,1.1029,-2.3,0.59395,1
|
1042 |
+
1.7875,4.78,-5.1362,-3.2362,1
|
1043 |
+
0.27331,4.8773,-4.9194,-5.8198,1
|
1044 |
+
-5.1661,8.0433,0.044265,-4.4983,1
|
1045 |
+
-2.7028,1.6327,0.83598,-0.091393,1
|
1046 |
+
-1.4904,-2.2183,1.6054,0.89394,1
|
1047 |
+
-0.014902,-1.0243,-0.94024,0.64955,1
|
1048 |
+
0.88992,2.2638,-3.1046,-0.11855,1
|
1049 |
+
1.0637,3.6957,-4.1594,-1.9379,1
|
1050 |
+
-0.8471,3.1329,-3.0112,-2.9388,1
|
1051 |
+
-3.9594,4.0289,-0.35845,-3.8957,1
|
1052 |
+
-5.8818,7.6584,0.5558,-2.9155,1
|
1053 |
+
-3.7747,2.5162,0.83341,-0.30993,1
|
1054 |
+
-2.4198,-0.24418,0.70146,0.41809,1
|
1055 |
+
-0.83535,0.80494,-1.6411,-0.19225,1
|
1056 |
+
-0.30432,2.6528,-2.7756,-0.65647,1
|
1057 |
+
-0.60254,1.7237,-2.1501,-0.77027,1
|
1058 |
+
-2.1059,1.1815,-0.53324,-0.82716,1
|
1059 |
+
-2.0441,1.2271,0.18564,-1.091,1
|
1060 |
+
-1.5621,-2.2121,4.2591,0.27972,1
|
1061 |
+
-3.2305,-7.2135,11.6433,-0.94613,1
|
1062 |
+
-4.8426,-4.9932,10.4052,-0.53104,1
|
1063 |
+
-2.3147,3.6668,-0.6969,-1.2474,1
|
1064 |
+
-0.11716,0.60422,-0.38587,-0.059065,1
|
1065 |
+
-2.0066,-6.719,9.0162,0.099985,1
|
1066 |
+
-3.6961,-13.6779,17.5795,-2.6181,1
|
1067 |
+
-3.6012,-6.5389,10.5234,-0.48967,1
|
1068 |
+
-2.6286,0.18002,1.7956,0.97282,1
|
1069 |
+
-0.82601,2.9611,-1.2864,-1.4647,1
|
1070 |
+
0.31803,-0.99326,1.0947,0.88619,1
|
1071 |
+
-1.4454,-8.4385,8.8483,0.96894,1
|
1072 |
+
-3.1423,-13.0365,15.6773,-0.66165,1
|
1073 |
+
-2.5373,-6.959,8.8054,1.5289,1
|
1074 |
+
-1.366,0.18416,0.90539,1.5806,1
|
1075 |
+
-1.7064,3.3088,-2.2829,-2.1978,1
|
1076 |
+
-0.41965,2.9094,-1.7859,-2.2069,1
|
1077 |
+
0.37637,-0.82358,0.78543,0.74524,1
|
1078 |
+
-0.55355,-7.9233,6.7156,0.74394,1
|
1079 |
+
-1.6001,-9.5828,9.4044,0.081882,1
|
1080 |
+
-0.37013,-5.554,4.7749,1.547,1
|
1081 |
+
0.12126,0.22347,-0.47327,0.97024,1
|
1082 |
+
-0.27068,3.2674,-3.5562,-3.0888,1
|
1083 |
+
-5.119,6.6486,-0.049987,-6.5206,1
|
1084 |
+
-1.3946,2.3134,-0.44499,-1.4905,1
|
1085 |
+
-0.69879,-3.3771,4.1211,1.5043,1
|
1086 |
+
-1.48,-10.5244,9.9176,-0.5026,1
|
1087 |
+
-2.6649,-12.813,12.6689,-1.9082,1
|
1088 |
+
-0.62684,-6.301,4.7843,1.106,1
|
1089 |
+
0.518,0.25865,-0.84085,0.96118,1
|
1090 |
+
0.64376,3.764,-4.4738,-4.0483,1
|
1091 |
+
-2.9821,4.1986,-0.5898,-3.9642,1
|
1092 |
+
-1.4628,-1.5706,2.4357,0.49826,1
|
1093 |
+
-1.7101,-8.7903,7.9735,-0.45475,1
|
1094 |
+
-1.5572,-9.8808,8.1088,-1.0806,1
|
1095 |
+
0.74428,-3.7723,1.6131,1.5754,1
|
1096 |
+
2.0177,1.7982,-2.9581,0.2099,1
|
1097 |
+
1.164,3.913,-4.5544,-3.8672,1
|
1098 |
+
-4.3667,6.0692,0.57208,-5.4668,1
|
1099 |
+
-2.5919,-1.0553,3.8949,0.77757,1
|
1100 |
+
-1.8046,-6.8141,6.7019,1.1681,1
|
1101 |
+
-0.71868,-5.7154,3.8298,1.0233,1
|
1102 |
+
1.4378,0.66837,-2.0267,1.0271,1
|
1103 |
+
2.1943,4.5503,-4.976,-2.7254,1
|
1104 |
+
0.7376,4.8525,-4.7986,-5.6659,1
|
1105 |
+
-5.637,8.1261,0.13081,-5.0142,1
|
1106 |
+
-3.0193,1.7775,0.73745,-0.45346,1
|
1107 |
+
-1.6706,-2.09,1.584,0.71162,1
|
1108 |
+
-0.1269,-1.1505,-0.95138,0.57843,1
|
1109 |
+
1.2198,2.0982,-3.1954,0.12843,1
|
1110 |
+
1.4501,3.6067,-4.0557,-1.5966,1
|
1111 |
+
-0.40857,3.0977,-2.9607,-2.6892,1
|
1112 |
+
-3.8952,3.8157,-0.31304,-3.8194,1
|
1113 |
+
-6.3679,8.0102,0.4247,-3.2207,1
|
1114 |
+
-4.1429,2.7749,0.68261,-0.71984,1
|
1115 |
+
-2.6864,-0.097265,0.61663,0.061192,1
|
1116 |
+
-1.0555,0.79459,-1.6968,-0.46768,1
|
1117 |
+
-0.29858,2.4769,-2.9512,-0.66165,1
|
1118 |
+
-0.49948,1.7734,-2.2469,-0.68104,1
|
1119 |
+
-1.9881,0.99945,-0.28562,-0.70044,1
|
1120 |
+
-1.9389,1.5706,0.045979,-1.122,1
|
1121 |
+
-1.4375,-1.8624,4.026,0.55127,1
|
1122 |
+
-3.1875,-7.5756,11.8678,-0.57889,1
|
1123 |
+
-4.6765,-5.6636,10.969,-0.33449,1
|
1124 |
+
-2.0285,3.8468,-0.63435,-1.175,1
|
1125 |
+
0.26637,0.73252,-0.67891,0.03533,1
|
1126 |
+
-1.7589,-6.4624,8.4773,0.31981,1
|
1127 |
+
-3.5985,-13.6593,17.6052,-2.4927,1
|
1128 |
+
-3.3582,-7.2404,11.4419,-0.57113,1
|
1129 |
+
-2.3629,-0.10554,1.9336,1.1358,1
|
1130 |
+
-2.1802,3.3791,-1.2256,-2.6621,1
|
1131 |
+
-0.40951,-0.15521,0.060545,-0.088807,1
|
1132 |
+
-2.2918,-7.257,7.9597,0.9211,1
|
1133 |
+
-4.0214,-12.8006,15.6199,-0.95647,1
|
1134 |
+
-3.3884,-8.215,10.3315,0.98187,1
|
1135 |
+
-2.0046,-0.49457,1.333,1.6543,1
|
1136 |
+
-1.7063,2.7956,-2.378,-2.3491,1
|
1137 |
+
-1.6386,3.3584,-1.7302,-3.5646,1
|
1138 |
+
-0.41645,0.32487,-0.33617,-0.36036,1
|
1139 |
+
-1.5877,-6.6072,5.8022,0.31593,1
|
1140 |
+
-2.5961,-9.349,9.7942,-0.28018,1
|
1141 |
+
-1.5228,-6.4789,5.7568,0.87325,1
|
1142 |
+
-0.53072,-0.097265,-0.21793,1.0426,1
|
1143 |
+
-0.49081,2.8452,-3.6436,-3.1004,1
|
1144 |
+
-6.5773,6.8017,0.85483,-7.5344,1
|
1145 |
+
-2.4621,2.7645,-0.62578,-2.8573,1
|
1146 |
+
-1.3995,-1.9162,2.5154,0.59912,1
|
1147 |
+
-2.3221,-9.3304,9.233,-0.79871,1
|
1148 |
+
-3.73,-12.9723,12.9817,-2.684,1
|
1149 |
+
-1.6988,-7.1163,5.7902,0.16723,1
|
1150 |
+
-0.26654,-0.64562,-0.42014,0.89136,1
|
1151 |
+
0.33325,3.3108,-4.5081,-4.012,1
|
1152 |
+
-4.2091,4.7283,-0.49126,-5.2159,1
|
1153 |
+
-2.3142,-0.68494,1.9833,-0.44829,1
|
1154 |
+
-2.4835,-7.4494,6.8964,-0.64484,1
|
1155 |
+
-2.7611,-10.5099,9.0239,-1.9547,1
|
1156 |
+
-0.36025,-4.449,2.1067,0.94308,1
|
1157 |
+
1.0117,0.9022,-2.3506,0.42714,1
|
1158 |
+
0.96708,3.8426,-4.9314,-4.1323,1
|
1159 |
+
-5.2049,7.259,0.070827,-7.3004,1
|
1160 |
+
-3.3203,-0.02691,2.9618,-0.44958,1
|
1161 |
+
-2.565,-5.7899,6.0122,0.046968,1
|
1162 |
+
-1.5951,-6.572,4.7689,-0.94354,1
|
1163 |
+
0.7049,0.17174,-1.7859,0.36119,1
|
1164 |
+
1.7331,3.9544,-4.7412,-2.5017,1
|
1165 |
+
0.6818,4.8504,-5.2133,-6.1043,1
|
1166 |
+
-6.3364,9.2848,0.014275,-6.7844,1
|
1167 |
+
-3.8053,2.4273,0.6809,-1.0871,1
|
1168 |
+
-2.1979,-2.1252,1.7151,0.45171,1
|
1169 |
+
-0.87874,-2.2121,-0.051701,0.099985,1
|
1170 |
+
0.74067,1.7299,-3.1963,-0.1457,1
|
1171 |
+
0.98296,3.4226,-3.9692,-1.7116,1
|
1172 |
+
-0.3489,3.1929,-3.4054,-3.1832,1
|
1173 |
+
-3.8552,3.5219,-0.38415,-3.8608,1
|
1174 |
+
-6.9599,8.9931,0.2182,-4.572,1
|
1175 |
+
-4.7462,3.1205,1.075,-1.2966,1
|
1176 |
+
-3.2051,-0.14279,0.97565,0.045675,1
|
1177 |
+
-1.7549,-0.080711,-0.75774,-0.3707,1
|
1178 |
+
-0.59587,2.4811,-2.8673,-0.89828,1
|
1179 |
+
-0.89542,2.0279,-2.3652,-1.2746,1
|
1180 |
+
-2.0754,1.2767,-0.64206,-1.2642,1
|
1181 |
+
-3.2778,1.8023,0.1805,-2.3931,1
|
1182 |
+
-2.2183,-1.254,2.9986,0.36378,1
|
1183 |
+
-3.5895,-6.572,10.5251,-0.16381,1
|
1184 |
+
-5.0477,-5.8023,11.244,-0.3901,1
|
1185 |
+
-3.5741,3.944,-0.07912,-2.1203,1
|
1186 |
+
-0.7351,1.7361,-1.4938,-1.1582,1
|
1187 |
+
-2.2617,-4.7428,6.3489,0.11162,1
|
1188 |
+
-4.244,-13.0634,17.1116,-2.8017,1
|
1189 |
+
-4.0218,-8.304,12.555,-1.5099,1
|
1190 |
+
-3.0201,-0.67253,2.7056,0.85774,1
|
1191 |
+
-2.4941,3.5447,-1.3721,-2.8483,1
|
1192 |
+
-0.83121,0.039307,0.05369,-0.23105,1
|
1193 |
+
-2.5665,-6.8824,7.5416,0.70774,1
|
1194 |
+
-4.4018,-12.9371,15.6559,-1.6806,1
|
1195 |
+
-3.7573,-8.2916,10.3032,0.38059,1
|
1196 |
+
-2.4725,-0.40145,1.4855,1.1189,1
|
1197 |
+
-1.9725,2.8825,-2.3086,-2.3724,1
|
1198 |
+
-2.0149,3.6874,-1.9385,-3.8918,1
|
1199 |
+
-0.82053,0.65181,-0.48869,-0.52716,1
|
1200 |
+
-1.7886,-6.3486,5.6154,0.42584,1
|
1201 |
+
-2.9138,-9.4711,9.7668,-0.60216,1
|
1202 |
+
-1.8343,-6.5907,5.6429,0.54998,1
|
1203 |
+
-0.8734,-0.033118,-0.20165,0.55774,1
|
1204 |
+
-0.70346,2.957,-3.5947,-3.1457,1
|
1205 |
+
-6.7387,6.9879,0.67833,-7.5887,1
|
1206 |
+
-2.7723,3.2777,-0.9351,-3.1457,1
|
1207 |
+
-1.6641,-1.3678,1.997,0.52283,1
|
1208 |
+
-2.4349,-9.2497,8.9922,-0.50001,1
|
1209 |
+
-3.793,-12.7095,12.7957,-2.825,1
|
1210 |
+
-1.9551,-6.9756,5.5383,-0.12889,1
|
1211 |
+
-0.69078,-0.50077,-0.35417,0.47498,1
|
1212 |
+
0.025013,3.3998,-4.4327,-4.2655,1
|
1213 |
+
-4.3967,4.9601,-0.64892,-5.4719,1
|
1214 |
+
-2.456,-0.24418,1.4041,-0.45863,1
|
1215 |
+
-2.62,-6.8555,6.2169,-0.62285,1
|
1216 |
+
-2.9662,-10.3257,8.784,-2.1138,1
|
1217 |
+
-0.71494,-4.4448,2.2241,0.49826,1
|
1218 |
+
0.6005,0.99945,-2.2126,0.097399,1
|
1219 |
+
0.61652,3.8944,-4.7275,-4.3948,1
|
1220 |
+
-5.4414,7.2363,0.10938,-7.5642,1
|
1221 |
+
-3.5798,0.45937,2.3457,-0.45734,1
|
1222 |
+
-2.7769,-5.6967,5.9179,0.37671,1
|
1223 |
+
-1.8356,-6.7562,5.0585,-0.55044,1
|
1224 |
+
0.30081,0.17381,-1.7542,0.48921,1
|
1225 |
+
1.3403,4.1323,-4.7018,-2.5987,1
|
1226 |
+
0.26877,4.987,-5.1508,-6.3913,1
|
1227 |
+
-6.5235,9.6014,-0.25392,-6.9642,1
|
1228 |
+
-4.0679,2.4955,0.79571,-1.1039,1
|
1229 |
+
-2.564,-1.7051,1.5026,0.32757,1
|
1230 |
+
-1.3414,-1.9162,-0.15538,-0.11984,1
|
1231 |
+
0.23874,2.0879,-3.3522,-0.66553,1
|
1232 |
+
0.6212,3.6771,-4.0771,-2.0711,1
|
1233 |
+
-0.77848,3.4019,-3.4859,-3.5569,1
|
1234 |
+
-4.1244,3.7909,-0.6532,-4.1802,1
|
1235 |
+
-7.0421,9.2,0.25933,-4.6832,1
|
1236 |
+
-4.9462,3.5716,0.82742,-1.4957,1
|
1237 |
+
-3.5359,0.30417,0.6569,-0.2957,1
|
1238 |
+
-2.0662,0.16967,-1.0054,-0.82975,1
|
1239 |
+
-0.88728,2.808,-3.1432,-1.2035,1
|
1240 |
+
-1.0941,2.3072,-2.5237,-1.4453,1
|
1241 |
+
-2.4458,1.6285,-0.88541,-1.4802,1
|
1242 |
+
-3.551,1.8955,0.1865,-2.4409,1
|
1243 |
+
-2.2811,-0.85669,2.7185,0.044382,1
|
1244 |
+
-3.6053,-5.974,10.0916,-0.82846,1
|
1245 |
+
-5.0676,-5.1877,10.4266,-0.86725,1
|
1246 |
+
-3.9204,4.0723,-0.23678,-2.1151,1
|
1247 |
+
-1.1306,1.8458,-1.3575,-1.3806,1
|
1248 |
+
-2.4561,-4.5566,6.4534,-0.056479,1
|
1249 |
+
-4.4775,-13.0303,17.0834,-3.0345,1
|
1250 |
+
-4.1958,-8.1819,12.1291,-1.6017,1
|
1251 |
+
-3.38,-0.7077,2.5325,0.71808,1
|
1252 |
+
-2.4365,3.6026,-1.4166,-2.8948,1
|
1253 |
+
-0.77688,0.13036,-0.031137,-0.35389,1
|
1254 |
+
-2.7083,-6.8266,7.5339,0.59007,1
|
1255 |
+
-4.5531,-12.5854,15.4417,-1.4983,1
|
1256 |
+
-3.8894,-7.8322,9.8208,0.47498,1
|
1257 |
+
-2.5084,-0.22763,1.488,1.2069,1
|
1258 |
+
-2.1652,3.0211,-2.4132,-2.4241,1
|
1259 |
+
-1.8974,3.5074,-1.7842,-3.8491,1
|
1260 |
+
-0.62043,0.5587,-0.38587,-0.66423,1
|
1261 |
+
-1.8387,-6.301,5.6506,0.19567,1
|
1262 |
+
-3,-9.1566,9.5766,-0.73018,1
|
1263 |
+
-1.9116,-6.1603,5.606,0.48533,1
|
1264 |
+
-1.005,0.084831,-0.2462,0.45688,1
|
1265 |
+
-0.87834,3.257,-3.6778,-3.2944,1
|
1266 |
+
-6.651,6.7934,0.68604,-7.5887,1
|
1267 |
+
-2.5463,3.1101,-0.83228,-3.0358,1
|
1268 |
+
-1.4377,-1.432,2.1144,0.42067,1
|
1269 |
+
-2.4554,-9.0407,8.862,-0.86983,1
|
1270 |
+
-3.9411,-12.8792,13.0597,-3.3125,1
|
1271 |
+
-2.1241,-6.8969,5.5992,-0.47156,1
|
1272 |
+
-0.74324,-0.32902,-0.42785,0.23317,1
|
1273 |
+
-0.071503,3.7412,-4.5415,-4.2526,1
|
1274 |
+
-4.2333,4.9166,-0.49212,-5.3207,1
|
1275 |
+
-2.3675,-0.43663,1.692,-0.43018,1
|
1276 |
+
-2.5526,-7.3625,6.9255,-0.66811,1
|
1277 |
+
-3.0986,-10.4602,8.9717,-2.3427,1
|
1278 |
+
-0.89809,-4.4862,2.2009,0.50731,1
|
1279 |
+
0.56232,1.0015,-2.2726,-0.0060486,1
|
1280 |
+
0.53936,3.8944,-4.8166,-4.3418,1
|
1281 |
+
-5.3012,7.3915,0.029699,-7.3987,1
|
1282 |
+
-3.3553,0.35591,2.6473,-0.37846,1
|
1283 |
+
-2.7908,-5.7133,5.953,0.45946,1
|
1284 |
+
-1.9983,-6.6072,4.8254,-0.41984,1
|
1285 |
+
0.15423,0.11794,-1.6823,0.59524,1
|
1286 |
+
1.208,4.0744,-4.7635,-2.6129,1
|
1287 |
+
0.2952,4.8856,-5.149,-6.2323,1
|
1288 |
+
-6.4247,9.5311,0.022844,-6.8517,1
|
1289 |
+
-3.9933,2.6218,0.62863,-1.1595,1
|
1290 |
+
-2.659,-1.6058,1.3647,0.16464,1
|
1291 |
+
-1.4094,-2.1252,-0.10397,-0.19225,1
|
1292 |
+
0.11032,1.9741,-3.3668,-0.65259,1
|
1293 |
+
0.52374,3.644,-4.0746,-1.9909,1
|
1294 |
+
-0.76794,3.4598,-3.4405,-3.4276,1
|
1295 |
+
-3.9698,3.6812,-0.60008,-4.0133,1
|
1296 |
+
-7.0364,9.2931,0.16594,-4.5396,1
|
1297 |
+
-4.9447,3.3005,1.063,-1.444,1
|
1298 |
+
-3.5933,0.22968,0.7126,-0.3332,1
|
1299 |
+
-2.1674,0.12415,-1.0465,-0.86208,1
|
1300 |
+
-0.9607,2.6963,-3.1226,-1.3121,1
|
1301 |
+
-1.0802,2.1996,-2.5862,-1.2759,1
|
1302 |
+
-2.3277,1.4381,-0.82114,-1.2862,1
|
1303 |
+
-3.7244,1.9037,-0.035421,-2.5095,1
|
1304 |
+
-2.5724,-0.95602,2.7073,-0.16639,1
|
1305 |
+
-3.9297,-6.0816,10.0958,-1.0147,1
|
1306 |
+
-5.2943,-5.1463,10.3332,-1.1181,1
|
1307 |
+
-3.8953,4.0392,-0.3019,-2.1836,1
|
1308 |
+
-1.2244,1.7485,-1.4801,-1.4181,1
|
1309 |
+
-2.6406,-4.4159,5.983,-0.13924,1
|
1310 |
+
-4.6338,-12.7509,16.7166,-3.2168,1
|
1311 |
+
-4.2887,-7.8633,11.8387,-1.8978,1
|
1312 |
+
-3.3458,-0.50491,2.6328,0.53705,1
|
1313 |
+
-1.1188,3.3357,-1.3455,-1.9573,1
|
1314 |
+
0.55939,-0.3104,0.18307,0.44653,1
|
1315 |
+
-1.5078,-7.3191,7.8981,1.2289,1
|
1316 |
+
-3.506,-12.5667,15.1606,-0.75216,1
|
1317 |
+
-2.9498,-8.273,10.2646,1.1629,1
|
1318 |
+
-1.6029,-0.38903,1.62,1.9103,1
|
1319 |
+
-1.2667,2.8183,-2.426,-1.8862,1
|
1320 |
+
-0.49281,3.0605,-1.8356,-2.834,1
|
1321 |
+
0.66365,-0.045533,-0.18794,0.23447,1
|
1322 |
+
-0.72068,-6.7583,5.8408,0.62369,1
|
1323 |
+
-1.9966,-9.5001,9.682,-0.12889,1
|
1324 |
+
-0.97325,-6.4168,5.6026,1.0323,1
|
1325 |
+
-0.025314,-0.17383,-0.11339,1.2198,1
|
1326 |
+
0.062525,2.9301,-3.5467,-2.6737,1
|
1327 |
+
-5.525,6.3258,0.89768,-6.6241,1
|
1328 |
+
-1.2943,2.6735,-0.84085,-2.0323,1
|
1329 |
+
-0.24037,-1.7837,2.135,1.2418,1
|
1330 |
+
-1.3968,-9.6698,9.4652,-0.34872,1
|
1331 |
+
-2.9672,-13.2869,13.4727,-2.6271,1
|
1332 |
+
-1.1005,-7.2508,6.0139,0.36895,1
|
1333 |
+
0.22432,-0.52147,-0.40386,1.2017,1
|
1334 |
+
0.90407,3.3708,-4.4987,-3.6965,1
|
1335 |
+
-2.8619,4.5193,-0.58123,-4.2629,1
|
1336 |
+
-1.0833,-0.31247,1.2815,0.41291,1
|
1337 |
+
-1.5681,-7.2446,6.5537,-0.1276,1
|
1338 |
+
-2.0545,-10.8679,9.4926,-1.4116,1
|
1339 |
+
0.2346,-4.5152,2.1195,1.4448,1
|
1340 |
+
1.581,0.86909,-2.3138,0.82412,1
|
1341 |
+
1.5514,3.8013,-4.9143,-3.7483,1
|
1342 |
+
-4.1479,7.1225,-0.083404,-6.4172,1
|
1343 |
+
-2.2625,-0.099335,2.8127,0.48662,1
|
1344 |
+
-1.7479,-5.823,5.8699,1.212,1
|
1345 |
+
-0.95923,-6.7128,4.9857,0.32886,1
|
1346 |
+
1.3451,0.23589,-1.8785,1.3258,1
|
1347 |
+
2.2279,4.0951,-4.8037,-2.1112,1
|
1348 |
+
1.2572,4.8731,-5.2861,-5.8741,1
|
1349 |
+
-5.3857,9.1214,-0.41929,-5.9181,1
|
1350 |
+
-2.9786,2.3445,0.52667,-0.40173,1
|
1351 |
+
-1.5851,-2.1562,1.7082,0.9017,1
|
1352 |
+
-0.21888,-2.2038,-0.0954,0.56421,1
|
1353 |
+
1.3183,1.9017,-3.3111,0.065071,1
|
1354 |
+
1.4896,3.4288,-4.0309,-1.4259,1
|
1355 |
+
0.11592,3.2219,-3.4302,-2.8457,1
|
1356 |
+
-3.3924,3.3564,-0.72004,-3.5233,1
|
1357 |
+
-6.1632,8.7096,-0.21621,-3.6345,1
|
1358 |
+
-4.0786,2.9239,0.87026,-0.65389,1
|
1359 |
+
-2.5899,-0.3911,0.93452,0.42972,1
|
1360 |
+
-1.0116,-0.19038,-0.90597,0.003003,1
|
1361 |
+
0.066129,2.4914,-2.9401,-0.62156,1
|
1362 |
+
-0.24745,1.9368,-2.4697,-0.80518,1
|
1363 |
+
-1.5732,1.0636,-0.71232,-0.8388,1
|
1364 |
+
-2.1668,1.5933,0.045122,-1.678,1
|
1365 |
+
-1.1667,-1.4237,2.9241,0.66119,1
|
1366 |
+
-2.8391,-6.63,10.4849,-0.42113,1
|
1367 |
+
-4.5046,-5.8126,10.8867,-0.52846,1
|
1368 |
+
-2.41,3.7433,-0.40215,-1.2953,1
|
1369 |
+
0.40614,1.3492,-1.4501,-0.55949,1
|
1370 |
+
-1.3887,-4.8773,6.4774,0.34179,1
|
1371 |
+
-3.7503,-13.4586,17.5932,-2.7771,1
|
1372 |
+
-3.5637,-8.3827,12.393,-1.2823,1
|
1373 |
+
-2.5419,-0.65804,2.6842,1.1952,1
|
functions_ml.py
ADDED
@@ -0,0 +1,386 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
# -*- coding: utf-8 -*-
|
2 |
+
"""
|
3 |
+
Created on Thu Feb 11 01:47:20 2021
|
4 |
+
|
5 |
+
utils_ml.py : utilitaires pour le cours de Data Mining
|
6 |
+
|
7 |
+
@author: erwann bargain
|
8 |
+
02/02/2021 eba Création d'un df de synthèse
|
9 |
+
27/01/2021 eba Rajout de "==============" dans la fonction valid_df pour mieux voir les résultats
|
10 |
+
11/02/2021 eba 1ère version qui va vite évoluer
|
11 |
+
"""
|
12 |
+
|
13 |
+
import numpy as np
|
14 |
+
import pandas as pd
|
15 |
+
import scipy.stats as scipy_stats
|
16 |
+
import datetime
|
17 |
+
import matplotlib.pyplot as plt
|
18 |
+
import seaborn as sns
|
19 |
+
from sklearn.metrics import confusion_matrix, roc_auc_score
|
20 |
+
|
21 |
+
|
22 |
+
def valid_df(df, id_var='', df_name='', edit_head = True, edit_tail = True, edit_describe = True):
|
23 |
+
"""
|
24 |
+
calcul de stats de base sur un df pour faciliter sa validation
|
25 |
+
|
26 |
+
df : pandas dataframe
|
27 |
+
df_name : nom du data frame pour l'afficher
|
28 |
+
optionnel : par défaut on met ''
|
29 |
+
id_var : indiquer le nom de la colonne qui contient l'id
|
30 |
+
si un nom est indiqué on vérifiera les doublons
|
31 |
+
defaut = ''
|
32 |
+
edit_head : Affichage des premières lignes
|
33 |
+
Indiquez False pour ne pas les voir
|
34 |
+
defaut : True
|
35 |
+
edit_tail : Affichage des dernières lignes
|
36 |
+
Indiquez False pour ne pas les voir
|
37 |
+
defaut : True
|
38 |
+
edit_describe : Affichage du describe
|
39 |
+
Indiquez False pour ne pas le voir
|
40 |
+
defaut : True
|
41 |
+
|
42 |
+
Exemples:
|
43 |
+
|
44 |
+
1. Exemple minimal
|
45 |
+
valid_df(df)
|
46 |
+
|
47 |
+
2. Exemple avec affichage du nom du dataframe et verif des doublons
|
48 |
+
mais pas d'affichage du head, tail et describe
|
49 |
+
valid_df(df, id_var='id_client', df_name='df_achats'
|
50 |
+
, edit_head = False, edit_tail = False, edit_describe = False)
|
51 |
+
|
52 |
+
|
53 |
+
"""
|
54 |
+
print("===========================")
|
55 |
+
print("===========================")
|
56 |
+
print("Synthese de la table")
|
57 |
+
if df_name != '':
|
58 |
+
print("=== DF : " + df_name)
|
59 |
+
print("===========================")
|
60 |
+
print("===========================")
|
61 |
+
|
62 |
+
print('============================')
|
63 |
+
print("nb de lignes et de colonnes")
|
64 |
+
print('============================')
|
65 |
+
print(df.shape ) #pas de () c'est un attribut
|
66 |
+
print("")
|
67 |
+
|
68 |
+
print('=======================================')
|
69 |
+
print("type, missing et nb de modalites <>")
|
70 |
+
print('=======================================')
|
71 |
+
info_list = []
|
72 |
+
for c in df.columns:
|
73 |
+
df_freq = df[c].value_counts().reset_index()
|
74 |
+
df_freq['zzvalue'] = df_freq['index'].astype(str) + " (" \
|
75 |
+
+ df_freq[c].astype(str) + " obs)"
|
76 |
+
#df_freq = df_freq[['zzvalue']][:20].T
|
77 |
+
|
78 |
+
info_list.append( ( c, df[c].dtypes, df[c].isna().sum(), df[c].isna().sum()/len(df)
|
79 |
+
, len(pd.unique(df[c])))
|
80 |
+
+ tuple(df_freq['zzvalue'][:20]))
|
81 |
+
|
82 |
+
nb_zzvalues = max(map(len,info_list)) - 5
|
83 |
+
#pd.unique(df[c]) renvoie la liste des valeurs unique de la colonne
|
84 |
+
df_stats = pd.DataFrame(info_list, columns=['column','type','missing_count','missing_rate'
|
85 |
+
, 'nb_labels']
|
86 |
+
+ [f'value_{i}' for i in range(1,nb_zzvalues+1)])
|
87 |
+
print(df_stats)
|
88 |
+
|
89 |
+
if id_var != '':
|
90 |
+
print('=======================================')
|
91 |
+
print('Doublon')
|
92 |
+
print('=======================================')
|
93 |
+
print("aucun doublon d'ID si la valeur la + fréquente est égale à 1")
|
94 |
+
print( df[id_var].value_counts()[:1] )
|
95 |
+
|
96 |
+
print( 'nb duplicates :' , sum(df.duplicated(subset=[id_var], keep='first')) )
|
97 |
+
print("")
|
98 |
+
|
99 |
+
if edit_head == True:
|
100 |
+
print('============================')
|
101 |
+
print("premieres lignes")
|
102 |
+
print('============================')
|
103 |
+
print( df.head() ) #head() c'est une fonction, une méthode d'une classe
|
104 |
+
print("")
|
105 |
+
|
106 |
+
if edit_tail == True:
|
107 |
+
print('============================')
|
108 |
+
print("dernières lignes")
|
109 |
+
print('============================')
|
110 |
+
print( df.tail() )
|
111 |
+
print("")
|
112 |
+
|
113 |
+
if edit_describe == True:
|
114 |
+
print('=======================================')
|
115 |
+
print('résumé de chaque variable')
|
116 |
+
print('=======================================')
|
117 |
+
print( df.describe(include='all') )
|
118 |
+
print("")
|
119 |
+
|
120 |
+
return df_stats
|
121 |
+
|
122 |
+
|
123 |
+
def customize_corr(df: pd.DataFrame) :
|
124 |
+
|
125 |
+
"""
|
126 |
+
Customize correlation matrix visually
|
127 |
+
|
128 |
+
Arguments:
|
129 |
+
df - dataframe with features
|
130 |
+
|
131 |
+
Returns:
|
132 |
+
"""
|
133 |
+
|
134 |
+
|
135 |
+
plt.figure(figsize=(16, 10))
|
136 |
+
|
137 |
+
# define the mask to set the values in the upper triangle to True
|
138 |
+
mask = np.triu(np.ones_like(df.corr()))
|
139 |
+
heatmap = sns.heatmap(df.corr(), mask=mask, vmin=-1, vmax=1, annot=True, cmap='magma')
|
140 |
+
heatmap.set_title('Lower Correlation Matrix', fontdict={'fontsize':18}, pad=16)
|
141 |
+
|
142 |
+
|
143 |
+
def features_ordering(df , feature_names, target):
|
144 |
+
"""
|
145 |
+
Retourne un df avec une ligne par feature par ordre décroissant des T de Schupprow en fonction d'une variable cible Y
|
146 |
+
|
147 |
+
Parametres :
|
148 |
+
X : pandas dataframe
|
149 |
+
feature_names : liste des nom des colonnes dont l'on souhaite avoir les stats du chi2
|
150 |
+
=> ne pas mettre d'id ou de variables numériques avec trop de modalité
|
151 |
+
target : nom de la variable cible (Y)
|
152 |
+
|
153 |
+
Exemple d'appel :
|
154 |
+
|
155 |
+
features_ordering = features_ordering( df = df_xy
|
156 |
+
, feature_names = ['gender','csp','region']
|
157 |
+
, target = 'target' )
|
158 |
+
"""
|
159 |
+
|
160 |
+
|
161 |
+
#déclaration de la liste qui contiendra les résultats
|
162 |
+
l_stats = []
|
163 |
+
|
164 |
+
#boucle sur chaque variable
|
165 |
+
for i,col in enumerate(feature_names):
|
166 |
+
if col != target:
|
167 |
+
|
168 |
+
#calcul du tableau de contingence
|
169 |
+
cont = pd.crosstab(df[col], df[target],)
|
170 |
+
|
171 |
+
#calcul des stats du chi-2 pour ce tableau de contingence
|
172 |
+
chi2, proba, vc, ts = get_chi2_vc_ts(cont)
|
173 |
+
|
174 |
+
#ajouts des indicateurs
|
175 |
+
l_stats.append( (target,col, round(vc, 4), round(ts, 4), round(chi2, 4), round(proba, 4) ))
|
176 |
+
|
177 |
+
#compilation des stats démandées dans un dataframe et tri selon le critère de T de Schupprow
|
178 |
+
df_vc_ts = pd.DataFrame(data = l_stats, columns = [ 'target','variable', 'VC', 'TS', 'CHI2', 'p_value'])
|
179 |
+
df_vc_ts = df_vc_ts.sort_values(by=['TS','variable'], ascending=[False, True])
|
180 |
+
|
181 |
+
return df_vc_ts
|
182 |
+
|
183 |
+
def get_chi2_vc_ts(crosstab):
|
184 |
+
"""
|
185 |
+
Le calcul du VC et TS doit être revu !! mais bon pour le moment on va s'en servir quand même :-)
|
186 |
+
|
187 |
+
FONCTION DE CALCUL DU CHI2, T DE TSCHUPROW ET V DE CRAMER
|
188 |
+
|
189 |
+
return 4 values : chi2, proba of chi2, V of Cramer, T of Tschuprow
|
190 |
+
|
191 |
+
parameters :
|
192 |
+
crosstab = crosstab dataframe
|
193 |
+
|
194 |
+
"""
|
195 |
+
|
196 |
+
nb_obs = crosstab.values.sum()
|
197 |
+
k1 = crosstab.shape[0]
|
198 |
+
k2 = crosstab.shape[1]
|
199 |
+
if min(crosstab.shape) >1:
|
200 |
+
khi2, proba, _,_ = scipy_stats.chi2_contingency(crosstab)
|
201 |
+
vc = np.sqrt(khi2 / (nb_obs*(min(crosstab.shape)-1)))
|
202 |
+
ts = np.sqrt(khi2 / (nb_obs*np.sqrt((k1-1)*(k2-1))))
|
203 |
+
else:
|
204 |
+
khi2, proba, vc, ts = -1, 10000, -1, -1
|
205 |
+
|
206 |
+
return khi2, proba, vc, ts
|
207 |
+
|
208 |
+
|
209 |
+
def corr_features(df: pd.DataFrame, threshold: float) :
|
210 |
+
|
211 |
+
"""
|
212 |
+
A function to suggest features that are highly correlated (one among two).
|
213 |
+
|
214 |
+
Arguments:
|
215 |
+
df - dataframe with features
|
216 |
+
treshold - lower limit to consider that features are not highly correlated
|
217 |
+
|
218 |
+
Returns:
|
219 |
+
List of features to drop
|
220 |
+
"""
|
221 |
+
|
222 |
+
correlation = df.corr().abs()
|
223 |
+
upper = correlation .where(np.triu(np.ones(correlation .shape), k=1).astype(np.bool))
|
224 |
+
to_drop = [column for column in upper.columns if any(upper[column] > threshold)]
|
225 |
+
|
226 |
+
return to_drop
|
227 |
+
|
228 |
+
|
229 |
+
def confusio_matrix(y_test, y_predicted):
|
230 |
+
cm = confusion_matrix(y_test, y_predicted)
|
231 |
+
tn, fp, fn, tp = confusion_matrix(y_test, y_predicted).astype(int).ravel()
|
232 |
+
print("Accuracy:", round((tp + tn)/(tp+tn+fp+fn),2))
|
233 |
+
print("Recall:", round(tp /(tp+fn),2))
|
234 |
+
print("precision:", round( tp/(tp+fp),2))
|
235 |
+
plt.figure(figsize=(5,5))
|
236 |
+
plt.clf()
|
237 |
+
plt.imshow(cm, interpolation='nearest',cmap=plt.cm.Wistia)
|
238 |
+
classNames = ['Negative','Positive']
|
239 |
+
plt.title('Matrice de confusion')
|
240 |
+
plt.ylabel('True label')
|
241 |
+
plt.xlabel('Predicted label')
|
242 |
+
tick_marks = np.arange(len(classNames))
|
243 |
+
plt.xticks(tick_marks, classNames, rotation=45)
|
244 |
+
plt.yticks(tick_marks, classNames)
|
245 |
+
s = [['TN','FP'], ['FN', 'TP']]
|
246 |
+
|
247 |
+
for i in range(2):
|
248 |
+
for j in range(2):
|
249 |
+
plt.text(j,i, str(s[i][j])+" = "+str(cm[i][j]))
|
250 |
+
plt.show()
|
251 |
+
|
252 |
+
|
253 |
+
|
254 |
+
|
255 |
+
def correlation_list_to_matrix(df_corr, criterion):
|
256 |
+
"""
|
257 |
+
Transformation de la liste des corrélation en matrice des corrélations
|
258 |
+
afin de l'intégrer dans un heatmap ou pour l'exporter dans un rapport
|
259 |
+
|
260 |
+
La fonction renvoie un dataframe.
|
261 |
+
|
262 |
+
Si un couple de variables n'est pas trouvé => c'est une erreur
|
263 |
+
la valeur écrite dans la matrice sera 1000 (pour alerter l'utilisateur)
|
264 |
+
|
265 |
+
-------------------
|
266 |
+
Paramètres :
|
267 |
+
|
268 |
+
df_corr : dataframe issu de la fonction features_correlation
|
269 |
+
il doit avoir les deux variables 'variable_1' et 'variable_2'
|
270 |
+
+ la variable indiquée dans le paramètre criterion (par ex 'TS', 'VC')
|
271 |
+
|
272 |
+
criterion = une colonne numérique de la matrice df_corr
|
273 |
+
C'est la valeur de ce critère qui sera affiché dans la matrice
|
274 |
+
|
275 |
+
-------------------
|
276 |
+
Exemples d'appels :
|
277 |
+
df_corr = utils_ml.features_correlation(df_train, feature_names = ['foreign worker'
|
278 |
+
, 'Personal status and sex', 'Other debtors])
|
279 |
+
|
280 |
+
df_corr_matrix = utils_ml.correlation_list_to_matrix(df_corr, criterion = 'TS')
|
281 |
+
"""
|
282 |
+
|
283 |
+
# Récupération de la liste des variables
|
284 |
+
columns = sorted(df_corr['variable_1'].unique())
|
285 |
+
|
286 |
+
#Création de la matrice vide
|
287 |
+
corr_matrix = np.zeros(shape=(len(columns),len(columns)))
|
288 |
+
|
289 |
+
#Remplissage de la matrice
|
290 |
+
for i,c1 in enumerate(columns):
|
291 |
+
for j,c2 in enumerate(columns):
|
292 |
+
if c1 == c2:
|
293 |
+
corr_matrix[i,j] = 1
|
294 |
+
else:
|
295 |
+
df_corr_temp = df_corr[ (df_corr['variable_1'] == c1) & (df_corr['variable_2'] == c2) \
|
296 |
+
| (df_corr['variable_2'] == c1) & (df_corr['variable_1'] == c2) ]
|
297 |
+
if len(df_corr_temp)>0:
|
298 |
+
df_corr_temp = df_corr_temp.reset_index()
|
299 |
+
corr_matrix[i,j] = df_corr_temp.loc[0,criterion]
|
300 |
+
else:
|
301 |
+
corr_matrix[i,j] = 1000
|
302 |
+
|
303 |
+
df_corr_matrix = pd.DataFrame(corr_matrix, columns=columns, index=columns)
|
304 |
+
|
305 |
+
return df_corr_matrix
|
306 |
+
|
307 |
+
|
308 |
+
def summary_table(train_Xy, cols_list , target):
|
309 |
+
"""
|
310 |
+
La fonction renvoie un df de synthèse des variables explicatives en fonction d'une target numérique (binaire ok)
|
311 |
+
On calcule pour chaque modalité de chaque variable : sa fréquence et fréquence relative et sa moyenne
|
312 |
+
|
313 |
+
en + 2 variables :
|
314 |
+
- 'nb_values' : nb de modalités de la variables
|
315 |
+
- 'nb_rows' : nb de lignes dans la table (=> identique sur toutes les lignes)
|
316 |
+
|
317 |
+
remarque : les valeurs manquantes ne sont pas considérées par défaut
|
318 |
+
=> si besoin utilisez df=df.fillna('') avant cette fonction
|
319 |
+
|
320 |
+
parametres obligatoires:
|
321 |
+
train_Xy : nom du df contenant les variables explicatives et la variable cible
|
322 |
+
cols_list : liste des variables explicatives (plutôt discrètes ou continues avec peu de moda)
|
323 |
+
car la table créé en sortie contiendra une ligne par valeur
|
324 |
+
EVITEZ la variable d'identifiant de ligne :-)
|
325 |
+
target : variable cible qui doit être numérique (binaire ok également)
|
326 |
+
|
327 |
+
|
328 |
+
"""
|
329 |
+
nb_rows = len(train_Xy)
|
330 |
+
all_synth = pd.DataFrame()
|
331 |
+
|
332 |
+
for c in cols_list:
|
333 |
+
if c != target:
|
334 |
+
print(c)
|
335 |
+
synth = train_Xy[c].value_counts().reset_index().rename(columns={'index':c, c:'freq'})
|
336 |
+
mean = train_Xy.groupby([c])[target].mean().reset_index()
|
337 |
+
|
338 |
+
|
339 |
+
synth = pd.merge(synth,mean, on=c)
|
340 |
+
synth.columns = ['value', 'freq','pct_target']
|
341 |
+
|
342 |
+
synth['variable'] = c
|
343 |
+
synth['nb_values']= len(synth)
|
344 |
+
synth['pct_freq'] = synth['freq'] / nb_rows
|
345 |
+
synth['nb_rows'] = nb_rows
|
346 |
+
synth['target'] = target
|
347 |
+
|
348 |
+
#les 3 colonnes suivantes serviront pour le recodage effectué dans excel
|
349 |
+
synth['code_recode']=''
|
350 |
+
synth['code_recode2']=''
|
351 |
+
synth['code_recode3']=''
|
352 |
+
|
353 |
+
all_synth= pd.concat([all_synth, synth])
|
354 |
+
|
355 |
+
all_synth = all_synth.sort_values(by=['variable', 'pct_target'], ascending=[True, False])
|
356 |
+
all_synth = all_synth[ ['nb_values', 'variable', 'value', 'freq', 'pct_freq', 'pct_target'
|
357 |
+
, 'nb_rows','target', 'code_recode', 'code_recode2', 'code_recode3' ]]
|
358 |
+
|
359 |
+
return all_synth
|
360 |
+
|
361 |
+
def stamp(message='', log_file='', refresh=0):
|
362 |
+
"""
|
363 |
+
Petite fonction de log
|
364 |
+
|
365 |
+
Elle affiche un message dans l'output (prefixé par un horodatage)
|
366 |
+
Optionnellement, elle écrit dans un fichier de log si le paramètre log_file est différent de ''
|
367 |
+
|
368 |
+
Parametres
|
369 |
+
----------
|
370 |
+
|
371 |
+
message : str
|
372 |
+
message à afficher (et à écrire dans le fichier de log s'il y en a un d'indiqué)
|
373 |
+
log_file : str
|
374 |
+
chemin complet du fichier de log
|
375 |
+
refresh : int, default : 0
|
376 |
+
Indiquez 1 pour vider le fichier de log avant d'écrire le message
|
377 |
+
"""
|
378 |
+
log_line = datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S") + ": " + str(message)
|
379 |
+
print(log_line)
|
380 |
+
if log_file != '':
|
381 |
+
if refresh!=1:
|
382 |
+
with open(log_file, "a") as myfile:
|
383 |
+
myfile.write(log_line+ '\n')
|
384 |
+
else:
|
385 |
+
with open(log_file, "w") as myfile:
|
386 |
+
myfile.write(log_line+ '\n')
|
hello_world.yml.bak
ADDED
@@ -0,0 +1,13 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
openapi: 3.0.0
|
2 |
+
tags:
|
3 |
+
- name: Type de prédictions
|
4 |
+
get:
|
5 |
+
|
6 |
+
description: None
|
7 |
+
responses:
|
8 |
+
'200':
|
9 |
+
description: Successful response
|
10 |
+
'400':
|
11 |
+
description: Bad Request
|
12 |
+
'500':
|
13 |
+
description: Internal Server Error
|
model.pkl
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:17bf3ff3f47996684e98c16f70779d8b504c1ac337b1451145692ebe8eb57a2e
|
3 |
+
size 1084
|
mon_application_flask.py
ADDED
@@ -0,0 +1,119 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
from flask import Flask
|
2 |
+
from flask import request
|
3 |
+
import numpy as np
|
4 |
+
import pickle
|
5 |
+
import pandas as pd
|
6 |
+
import flasgger
|
7 |
+
from flasgger import Swagger
|
8 |
+
from flasgger import Swagger, LazyString, LazyJSONEncoder, swag_from
|
9 |
+
|
10 |
+
|
11 |
+
|
12 |
+
application=Flask(__name__) # debut de l'app
|
13 |
+
|
14 |
+
|
15 |
+
# pas tres import: habillage det affivhage
|
16 |
+
application.json_encoder = LazyJSONEncoder
|
17 |
+
|
18 |
+
swagger_template = dict(
|
19 |
+
info = {
|
20 |
+
'title': LazyString(lambda: "Modèle d'authentification de billets de banque"),
|
21 |
+
'description': LazyString(lambda: " Les informations statistiques extraites nous permettra de savoir si les billets sont authentiques"),
|
22 |
+
},
|
23 |
+
host = LazyString(lambda: request.host)
|
24 |
+
)
|
25 |
+
|
26 |
+
swagger_config = {
|
27 |
+
"headers": [],
|
28 |
+
"specs": [
|
29 |
+
{
|
30 |
+
"endpoint": '',
|
31 |
+
"route": '/',
|
32 |
+
"rule_filter": lambda rule: True,
|
33 |
+
"model_filter": lambda tag: True,
|
34 |
+
}
|
35 |
+
],
|
36 |
+
"static_url_path": "/flasgger_static",
|
37 |
+
"swagger_ui": True,
|
38 |
+
"specs_route": "/apidocs/"
|
39 |
+
|
40 |
+
}
|
41 |
+
|
42 |
+
swagger= Swagger(application, template=swagger_template, config=swagger_config)
|
43 |
+
# Swagger(application)
|
44 |
+
|
45 |
+
# chargement du modèle
|
46 |
+
modele=pickle.load(open("model.pkl","rb"))
|
47 |
+
|
48 |
+
@application.route('/')
|
49 |
+
def welcome():
|
50 |
+
return "Bienvenu dans le site d'authentification"
|
51 |
+
|
52 |
+
|
53 |
+
|
54 |
+
|
55 |
+
|
56 |
+
@application.route('/predict',methods=["Get"])
|
57 |
+
def predict_note_authentication():
|
58 |
+
|
59 |
+
"""Let's Authenticate the Banks Note
|
60 |
+
This is using docstrings for specifications.
|
61 |
+
---
|
62 |
+
parameters:
|
63 |
+
- name: variance
|
64 |
+
in: query
|
65 |
+
type: number
|
66 |
+
required: true
|
67 |
+
- name: skewness
|
68 |
+
in: query
|
69 |
+
type: number
|
70 |
+
required: true
|
71 |
+
- name: curtosis
|
72 |
+
in: query
|
73 |
+
type: number
|
74 |
+
required: true
|
75 |
+
- name: entropy
|
76 |
+
in: query
|
77 |
+
type: number
|
78 |
+
required: true
|
79 |
+
responses:
|
80 |
+
200:
|
81 |
+
description: The output values
|
82 |
+
|
83 |
+
"""
|
84 |
+
variance = request.args.get("variance")
|
85 |
+
skewness = request.args.get("skewness")
|
86 |
+
curtosis = request.args.get("curtosis")
|
87 |
+
entropy = request.args.get("entropy")
|
88 |
+
prediction = modele.predict([[variance, skewness, curtosis, entropy]])
|
89 |
+
print(prediction)
|
90 |
+
return "Alors vraissemblablement la réponse est "+str(prediction)
|
91 |
+
|
92 |
+
@application.route('/predict_file',methods=["POST"])
|
93 |
+
|
94 |
+
|
95 |
+
def predict_note_file():
|
96 |
+
"""Let's Authenticate the Banks Note
|
97 |
+
This is using docstrings for specifications.
|
98 |
+
---
|
99 |
+
parameters:
|
100 |
+
- name: file
|
101 |
+
in: formData
|
102 |
+
type: file
|
103 |
+
required: true
|
104 |
+
|
105 |
+
responses:
|
106 |
+
200:
|
107 |
+
description: The output values
|
108 |
+
|
109 |
+
"""
|
110 |
+
df_test=pd.read_csv(request.files.get("file"))
|
111 |
+
print(df_test.head())
|
112 |
+
prediction=modele.predict(df_test)
|
113 |
+
|
114 |
+
return str(list(prediction))
|
115 |
+
|
116 |
+
if __name__=='__main__': # si 1 est exécuté alors l'application (codé en bas) sera mis en exécution
|
117 |
+
application.run()
|
118 |
+
|
119 |
+
|
requirements.txt.bak
ADDED
@@ -0,0 +1,16 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
Flask==1.1.1
|
2 |
+
gunicorn==19.9.0
|
3 |
+
itsdangerous==1.1.0
|
4 |
+
Jinja2==2.10.1
|
5 |
+
MarkupSafe==1.1.1
|
6 |
+
Werkzeug==0.15.5
|
7 |
+
numpy>=1.9.2
|
8 |
+
scipy>=0.15.1
|
9 |
+
scikit-learn
|
10 |
+
matplotlib>=1.4.3
|
11 |
+
pandas>=0.19
|
12 |
+
flasgger==0.9.4
|
13 |
+
streamlit
|
14 |
+
|
15 |
+
|
16 |
+
|