summaryrefslogtreecommitdiff
path: root/PVCM/cama/fr/ma34 ACP -- Exercice.ipynb
blob: 9f213771782fc21ce3f0459061959b36beb6038c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861
1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1874
1875
1876
1877
1878
1879
1880
1881
1882
1883
1884
1885
1886
1887
1888
1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905
1906
1907
1908
1909
1910
1911
1912
1913
1914
1915
1916
1917
1918
1919
1920
1921
1922
1923
1924
1925
1926
1927
1928
1929
1930
1931
1932
1933
1934
1935
1936
1937
1938
1939
1940
1941
1942
1943
1944
1945
1946
1947
1948
1949
1950
1951
1952
1953
1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983
1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
2027
2028
2029
2030
2031
2032
2033
2034
2035
2036
2037
2038
2039
2040
2041
2042
2043
2044
{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "import numpy as np\n",
    "import numpy.linalg as lin\n",
    "import matplotlib.pylab as plt\n",
    "import plotly.graph_objects as go\n",
    "np.set_printoptions(precision=3, linewidth=150, suppress=True)\n",
    "\n",
    "%matplotlib inline\n",
    "%config InlineBackend.figure_format = 'retina'\n",
    "\n",
    "np.random.seed(0)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "lang": "fr"
   },
   "source": [
    "## Exercice : Nuage de points en 3D\n",
    "\n",
    "On a des résultats de mesures et on sait qu'on doit avoir une relation\n",
    "quadratique entre x et z :\n",
    "\n",
    "$$  z = \\alpha \\, x^2 + \\beta \\, x + \\gamma $$\n",
    "\n",
    "Comment trouver ces 3 coefficients ?\n",
    "\n",
    "Bien sûr on va faire une analyse en composante principale mais attention, cela\n",
    "ne marche que pour les relations linéaires (ca nous donne un vecteur). Aussi\n",
    "il faut introduire une nouvelle variable pour que notre équation soit linéaire.\n",
    "\n",
    "Comment écrire notre équation pour qu'elle soit linéaire suivant 2 variables ?\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### réponse :\n",
    "\n",
    "On pose $y = x^2$"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "lang": "fr"
   },
   "source": [
    "### Données de l'expérience\n",
    "\n",
    "Fabriquer un nuage de point 2D avec l'équation \n",
    "\n",
    "$$  z = -1.3 \\, x^2 + 0.2 \\, x + 1.45 + U(-1,1)$$ \n",
    "\n",
    "où U est la loi uniforme qui simule du bruit."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 33,
   "metadata": {},
   "outputs": [],
   "source": [
    "N = 50\n",
    "x = 6 * np.random.random(N) - 3  # x varie entre -3 et 3\n",
    "z = -1.3 * np.square(x) + 0.2 * x + 1.54 + (2 * np.random.random(N) - 1)\n",
    "nuage = np.array([x,z])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 34,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAABFYAAANlCAYAAABWiX3rAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAewgAAHsIBbtB1PgAAdu9JREFUeJzt3QmUXGWZP+AvkECMIEkImyQShARQUZAkCgRBkIggmxjUERBwAdwyqAOjjmzKfwYcxMgIQQeCoAwMLrigDBhZBCOETUGBxEgwEWQLiBAgCfT/vHesmupOdS23q7u25zmnT9+quvfWrbW7fvV+7zesp6enJwEAAABQt7Xq3wQAAACAIFgBAAAAyEmwAgAAAJCTYAUAAAAgJ8EKAAAAQE6CFQAAAICcBCsAAAAAOQlWAAAAAHISrAAAAADkJFgBAAAAyEmwAgAAAJCTYAUAAAAgJ8EKAAAAQE6CFQAAAICcBCsAAAAAOQlWAAAAAHISrAAAAADkJFgBAAAAyEmwAgAAAJCTYAUAoAUdeeSRadiwYdnPRRdd1OzDaVvuRwAGm2AFgLa1ZMmS4gem+InT9dhjjz2K255yyimDdpwAAHQuwQoAADTY9ddfXwxuI8QFoHMJVgAAAAByGp53QwAAaHXRV0VvFQAGk4oVAAAAgJwEKwAAAAA5CVYAoM6pWlesWJHOPffcNH369LTJJpukddddN02YMCG9733vSzfffHNDr3/ixIlrzHq0bNmy9IUvfCG94Q1vSKNHj04vf/nL07bbbps+8YlPpAcffDDXPhsxXe1zzz2XrrzyyvTJT36yeN+ss846ab311suu8+CDD04XXHBBWrlyZV33wZNPPpm+9KUvpSlTpqQxY8Zk+9tmm23Shz70obRgwYLieqUzRNXiiSeeSGeddVbae++9s8dv5MiR2f35mte8Jn3sYx9Lt912WxoscT8deOCBafPNN8+eP+PHj8+O45JLLkmrV6/Otc+enp70gx/8IH3gAx9IkydPThtssEF2m+K2HXTQQelb3/pW7n2XEzNp9Z1V69lnn01f//rX02677ZY23XTT7Pq32GKL9P73vz/dcMMNdd+eK664IntdbbXVVtnjHj+x/A//8A/pu9/9brZOI56/5W5L3FcXX3xxetvb3lZ8nDbbbLPsvvzJT35S9X5561vfWjwvbnvp87PwE6+Lcn7xi1+kD37wg2n77bfPnpPDhw9Po0aNyp4ncd/+4z/+Y3YM9b6WABgkPQDQph544IH4VFX8idP12H333YvbnnzyyWXX+cAHPlBcZ+7cuT2/+93verbbbrte19v356STTmrQLezp2WKLLXrdvh/84Ac9G2ywQb/X/bKXvaznJz/5SV37rKbvfVDOr3/965711luv4v1S+Jk4cWLPHXfcUdPt/8UvftGzySab9LuvtdZaq+eUU07J1i09v5r/+I//qHg/xs+wYcN6jj766J4XXnihp1H+9re/9ey7774Vr3f69Ok9Dz/8cE33e8FvfvObnh122KHqfb/NNttkz+FGiNdM6evnvvvuq/ra+PCHP9yzevXqqvteuHBhz4477lj19uy00049ixcvrrivWu7Hvrdl2bJlPbvsskvF6z7qqKN6XnzxxYr7qvYTr8VSzzzzTM8BBxxQ8/bf/OY3q96XAAw+zWsBoEYPPfRQ9u31ww8/nH2LXPhW/vHHH8++Yf7rX/+arXfaaadlVQ/vec97Gnr9P//5z9Oxxx6bXnzxxfSqV70q7bzzzukVr3hFeuCBB7KpXeMb9qgaOfTQQ9M999yTttxyyzRUoqrkmWeeyZY33njj9NrXvjb7dj2qaaLC5w9/+EO69dZbs2OMKpndd9893XHHHWnrrbfud5+//vWv0zvf+c5s+xDf8E+dOjXbd3xTH/tbtGhRViEwbty4mo81vu2fPXt28XRsG/dlPJbPP/98uvPOO7P7L7KaCy+8MHvcr7rqqrTWWgMr9F21alXab7/90o033lg8L67zLW95S1p//fWz++imm27KfqK659WvfnVN+4397b///unpp5/OTo8YMSK7nyZNmpQtx/0d+4zbdv/996dddtklzZ8/P2233XapUeK5/453vCN7LkZlR0wvHJUyURV03XXXpaeeeipb75vf/GZ2HFEJ0p977703e3489thjxfOicmOHHXbIngPx+Nx9993Z+bfffnt2e+I+iCqdRojn8T777JM9B6JKJF7ncVv+9re/Zbfl0UcfzdabO3duVjl14okn9tp+2rRpWcXTn//856wyKbzyla/MHtO+Ntxww16nDzvssPSjH/2oeDpeHzvuuGMaO3Zs9vyJ+yRuey2VZgAMoSEIbwCgIypW1l133ez3iSee2PPss8/2Wu+JJ57o2XPPPYvrvvrVr+556aWXegaqtLokrv/lL395zyWXXLLGvu+5556ezTffvNe36UNdsfK5z32u5+677+53P4888kjP4YcfXtzXXnvt1e+6zz33XM+kSZOK62655ZY9t9566xrrXX755T2jRo0qPjbVKlYuuOCC4jqveMUrsm/8V65cWbZSpvT+POOMM3oG6rTTTutVDXP66aevUb1x//3397zhDW/I1llnnXWq3u9R2bLxxhsX1zviiCN6HnrooTXW+8tf/tJz8MEHF9fbfvvta6ocqaS0MqNwrHvvvXd2TKVWrFjR89GPfrTX43PppZeW3WdUBxVuf/zEbbv22mvXWO9//ud/esaNG1dc741vfGPZxzFPxUrhuRTbxeu6VLzu3/e+9xXXjSqtqDIp57rrriuuF+811dx111299vvTn/6033WjSudLX/pSz49+9KOq+wVg8AlWAGhbQx2sxM9nP/vZfvcXH14j+CisG2HDQJWGIPFh/Gc/+1m/68YQoNIPZqtWrRqyYKUe73jHO4r7+/3vf192nfPOO6+4TgQnf/jDH/rd3/e///01hkiU8/TTT/eMHj26GARUe3zi2EaOHJmtv+GGG64RptXjqaeeym5H4fgKw5fKefTRR3s222yzXrenv/s9hioV1vnkJz9Z8RgiSCkN/y677LKegeg75CWGIkUg1p/DDjus13CwcsNoLrzwwuI6I0aMqDhkLIK24cOHF9f/1re+1ZBgJX4iPOlP3MYJEyZUvR/rDVbOOeec4vqf//znq64PQOvQvBYAarTRRhulk046qd/Lo1lrDPUoiKEqjRTDYmKIQn/23XffbGhJYThDDKloRdFMtHR4UznR5LZ06E40LO1PDLEobRTanxjWUxiS8tGPfjS96U1vqrh+DJWJRrAhhrRcffXVKa9LL720OKQphkh99rOfrfg8O/XUU6vuM4aFfPvb386W43E/44wzKq6/9tprp9NPP714+jvf+U5qpGgEHM1q+/OVr3wlGyYUYijLtddeu8Y6559/fnH5uOOOy4bB9CeGO334wx8unj7vvPNSI0TD5TjW/sRtjIa6jX6dF4ZyFZ4DALQPwQoA1Cj6WFT64BhKPwg2ug/CzJkzK14e/SdipqDBuv5aRYAQPWeij8m//Mu/pFmzZqWPf/zjxZ//+q//Kq571113rbF99LKI/iulfSeqqWWdn/70p8XlmFWmFnvu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l3qGHgHAYBmsz9+Clb/78Y9/nA477LD09NNPl7188uTJWeCy9dZbN/R6BSsAQDuqNSwRqgDQKgbr87ehQCmlO++8M73nPe/JQpX11lsvnX766elXv/pVmjdvXvrwhz+crbNw4cK03377pb/97W/NPlwAgKarZcYgoQoA3cCsQDEOe9as9Nxzz6Xhw4ena665Ju28887Fy/bcc880adKkdMIJJ2ThyllnnZVOOeWUph4vAEArqDQjk1AFgG7R9UOBbr311vSmN70pWz7mmGPSnDlz1ljnpZdeSq973evSvffem0aPHp0effTRNGLEiIZcv6FAAEC76xuijB41Ij21YlXxtFAFgFZgKNAgufLKK4vLRx11VNl11lprrXTEEUdky0899VS67rrrhuz4AADabViQUAWAbtL1wcpNN92U/X75y1+edtppp37X23333YvLN99885AcGwBAu4jwJCpVSsVpoQoAna7rg5UY3hNitp/osdKfbbfddo1tAAD4v+FApZUqIU73bWgLAJ2mq5vXPv/88+nxxx/PlquNrRozZkxW1fLss89mY7HqGcNVycMPP1zzvgAA2q3HSmlDWwDoRF0drJROnRzTLFdTCFaeeeaZmq+j0BgHAKAT9Tf7T+n5whUAOtla3V6xUrDOOutUXX/dddfNfsfUzAAA3a7SlMp9G9rGeoYFAdCJurpiZeTIkcXllStXVl3/hRdeyH6/7GUvq/k6qg0biqFA06ZNq3l/AACtHqoUFE6rXAGgk3V1sLL++usXl2sZ3hPDgGodNlTQqHmxAQDaKVQpEK4A0OnW6vaKlQ033LCmJrNPPvlkMVjRNwUA6FYLliyvOVQpKDcsKPYDAJ2gq4OV8JrXvCb7/Yc//CGtXr263/Xuu+///oHYbrvthuTYAABazdSJY9OsvSbVHKqUC1di+9gPAHSCrh4KFKZPn55++ctfZtUot99+e3rTm95Udr0bbrihuLzrrrsO4RECALSW4/eenKZPGld3OBLhypSJY4QqAHSUrq9YOeigg4rLc+fOLbvOSy+9lC6++OJsefTo0emtb33rkB0fAEAryhuOCFUA6DRdH6zEjDy77bZbtnzBBRek+fPnr7HOWWedle69995sedasWWnEiBFDfpwAAABA6+n6oUBh9uzZ2fCe5557Ls2YMSN97nOfy6pS4vRll12WvvGNb2Tr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LgA0unKlr9KQpO/65apchCoAALURrFRwyy23pK9+9avZ8vjx49Nxxx1X9z4mTJgwCEcGALUrF5L0DVeEKgAA+RgK1I9HHnkkvfvd786qVYYNG5a+9a1vpVGjRjX7sABgDdUa1fYnwpPRo0b0Oi9OC1UAADqsYiWCjYGaO3duOvLII2ta929/+1vab7/9isN4/u3f/i3tueeeua536dKlVYcCTZs2Lde+AaCWUKVck9rCtn37scTpOF+4AgDQQcHKUHr++efTgQcemG6//fbs9Gc+85l0wgkn5N5fDCECgKEOVaLypDQ06Ruu9N22dP3+ghgAANo0WCnMyjMQm222WdV1YthPNKi97rrrstMf+tCHsua1ANBOoUqhR0rfdfpbLre+cAUAoIOClW237T2N5GB46aWX0uGHH55+/OMfZ6ff8573pPPPP3/QrxcABiNU6W+2oL7bVZstqPR8AADWpHnt3x1zzDHpsssuy5b333//9O1vfzuttZa7B4DWsmDJ8ppClYI4HefnXT+uK4IcAADKkxyklD71qU+l//zP/8yW99prr3TFFVek4cPbopgHgC4zdeLYNGuvSWucX2mK5Dh/98kb9TovTldaX7gCAFCbrg9WTjnllHT22Wdny7vsskv64Q9/mNZdd91mHxYA9Gv6pHE1hyqFKpcbFj7W67w4Hef3p1y4Uml9AIBu1dVlGeecc0469dRTs+XNN988nXnmmemBBx6ouM0222yTRowYMURHCAD9V63MnreoaqjSd/2oVIlQJU7H+ZWU9lypZX0AgG40rKenpyd1qT322CPdcMMNdW0TwcvEiRMbdgzLli1LEyZMyJaXLl1qemYAahYVJPWEHYX1824HANDOlg3S5++uHwoEAO2q3rCjsH7e7QAAWFNXDwW6/vrrm30IAAAAQBtTsQIAAACQk2AFAAAAICfBCgAAAEBOghUAAACAnAQrAAAAADkJVgAAAAByEqwAAAAA5CRYAQAAAMhJsAIAAACQk2AFAAAAICfBCgAAAEBOghUAAACAnAQrAAAAADkJVgAAAAByEqwAAAAA5CRYAQAAAMhJsAIAAACQk2AFAAAAICfBCgAAAEBOghUAAACAnAQrAAAAADkJVgCgxSxYsnxItwMAID/BCgC0kLOvXZhmzpmfzrt+cV3bxfqxXWwPAMDQEawAQIuIipPZ8xZly2dc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ePWdrlUTTGgttQzRE64AUE7XByuPPfZYeu9735uFKjvssEO6+uqrs+E/pXbdddf0oQ99KK1cubJpxwlAZzbB9IEMmq+evkfCFQD66voeK5/97GfTE088kUaNGpWuvPLKNUKVUuuss86QHhsA7U8TTGhtC5Ysr7vvUbn+SbEfALpTVwcrTz75ZLr00kuz5cMOOyxtscUWzT4kADqIJpjQ+qZOHJtm7TWp7r5HpeFKbB/7AaA7dfVQoOib8txzz2XLBxxwQPH86Kvy0EMPpfXWWy+rYBk2bFgTjxKAdqQJJrSP4/eenKZPGld3OBKv2SkTxwhVALpcVwcrv/71r4vL22+/fVqwYEH6/Oc/n+bNm5deeuml7PyNNtooHXrooekLX/hCxWFC/Vm2bFnFyx9++OEcRw5AK9MEE9pP3nBEqAJAVwcrv//973tNtxwNalevXr1Gc9uvf/3r6Xvf+17W2PYNb3hDXdcxYcKEhh0vAK1PE0wAgO7S1T1Wli//vyZjMcVyDPn50pe+lP70pz+lF154If3ud79LRx55ZHb5X/7yl3TQQQelp59+uolHDEAr0wQTAKD7dHXFyrPPPltcjumWL7744nT44YcXz3vNa16T5s6dm80G9I1vfCMtWbIknXfeeenEE0+s+TqWLl1adSjQtGnTct4CAFqxCebseYvqboJZCFU0wQQAaC/Denp6elKLa0Tz2AhICtUnBa973euyqpTw+te/Pv3mN78pu21Mx7z55ptnVSw77rhjuuOOO1KjRA+WwnChCGHGjx/fsH0D0BxRcZInHMm7HQAAzfv83dVDgdZff/3i8owZM/pdb8MNN0xTpkzJliN8Wbly5ZAcHwDtSRNMAIDu0RZDge69994B72OzzTZb47xIqgozA1VrMlu4PGYLit4sm2666YCPCQAAAGhvbRGsbLvt/zX1a6TXvva16YorrsiWX3zxxYrrll4+fHhb3G0AAADAIOvqoUBvectbist//OMfK667ePHi7PfIkSPT2LFKtQEAAADBStpoo42y5R//+Mf9Vq088MAD6a677sqWd91117TWWl19twEAAAB/19UJwdprr50+85nPZMsPPvhg+uIXv7jGOqtXr04f/ehHs94q4dhjjx3y4wQAAABaU1cHK+GTn/xkeuMb35gtn3rqqel973tfuvrqq7MplaP/SlS1xOmw7777pkMOOaTJRwwAAAC0iq7vwho9U37yk5+k/fffP91+++3psssuy376ilAlzh82bFhTjhMAAABoPV1fsVKYijmmXZ4zZ07afffds74rI0aMyKZUPuCAA9L3v//9dNVVV6X111+/2YcKAAAAtJCur1gpnUL5mGOOyX4AAAAAaqFiBQAAACAnwQoAAABAToIVAAAAgJwEKwAAAAA5CVYAYIAWLFk+pNsBANA6BCsAMABnX7swzZwzP513/eK6tov1Y7vYHgCA9iVYAYCcouJk9rxF2fIZV99Xc7gS68X6IbZXuQIA0L4EKwCQ09SJY9OJ+2xbPF1LuFIaqoTYPvYDAEB7EqwAwAAct8dWNYcr5UKV2B4AgPYlWAGAIQhXhCoAAJ1JsAIAgxyuCFWgO5ghDKA7CVYAYBDDlR1Ou0aoAl3ADGEA3UuwAgCDGK48tWJVcVmoAp3JDGEA3U2wAgANFuHJ6FEjep0Xp4Uq0JnMEAbQ3QQrANBg8YGptFIlxOl6hwgA7cMMYQDdS7ACAA3U9wNTaeVKPUMEgPZjhjCA7iRYAYAGKfeB6a6TZtQ9RABoX2YIA+g+w5t9AADQCSp9YCr8Llxe+O0DFXSmcq/582/sPURQqALQOVSsAMAA1fItdD39F4D2Z4YwgO4hWAGAAaintF+4At3FDGEA3UGwAgA5LViyvO5+CeXCldgP0HnMEAbQHQQrAJDT1Ilj06y9JtVd2l8arsT2sR+gs5ghDKB7aF4LAANw/N6T0/RJ4+oORyJcmTJxjFAFumiIYOn5mlgDdA4VKwAwQHnDEaEKdN8MYfosAXQewQoAADSAGcIAupNgBQAABsgMYQDdS7ACAAADYIYwgO4mWAEAgAEwQxhAdzMrEAAADJAZwgC6l4oVAABoADOEAXQnwQoAAABAToIVAAAAgJwEKwAAMAB5Z/MxCxBAZxCsAABATmdfuzDNnDM/nXf94rq2i/Vju9gegPYmWAEAgJwVJ7PnLcqWz7j6vprDlVgv1g+xvcoVgPYmWAEAgJyz+Zy4z7bF07WEK6WhSojtzQoE0N4EKwAAkNNxe2xVc7hSLlSJ7QFob4IVAAAY5HBFqALQuQQrAAAwiOGKUAWgsw1v9gEAAEAnKIQlhRAlfp9/4+L01IpVxXWEKgCdR8UKAAAMUuWKUAWg8wlWAACggSI8GT1qRK/z4rRQBaAzCVYAAKCBoqdKaaVKiNPVpmIGoD0JVgAAoEH6NqotrVypNBUzAO1LsAIAAA1Qbvafu06aUXUqZgDam2AFAAAGqNKUypWmYgag/QlWAABgkEKVAuEKQOcSrAAAwCCGKgXCFYDOJFgBAIAcFixZXnOoUilcif0A0L4EKwAAkMPUiWPTrL0m1RyqlAtXYvvYDwDta3izDwAAANrV8XtPTtMnjas7HIlwZcrEMUIVgA6gYgUAAAYgbzgiVAHoDIIVAAAAgJwEKwAAAAA5CVYAAAAAchKsAAAAAOQkWAEAAADISbACAAAAkJNgBQAAACAnwQoAAABAToIVAAAAgJwEKwAAAAA5CVYAAAAAchKsAAAAAOQkWAEAAADISbACAAAAkJNgBQAAACAnwQoAAABAToIVAAAAgJwEKwAAAAA5CVYAAAAAchKsAAAAAOQkWAEAAADISbACAAAAkJNgBQAAACAnwQoAAABAToIVAAAAgJwEKwAAAAA5CVYAAAAAchKsAAAAAOQkWAEAAADISbDyd1dffXV673vfm1796lenUaNGpZEjR6YJEyakAw88MF1++eXppZdeavYhAgAAAC1meOpyL7zwQnr/+9+fvve9761x2bJly7KfH/3oR+nrX/969nv06NFNOU4AAACg9XR9xconP/nJYqiy8cYbp3//939Pv/jFL9Ivf/nLdO6556YtttgiuyxOR0ULAAAAQMGwnp6entSlHnnkkfTKV74yG+YzZsyY9Nvf/jaNHz++1zpPP/10esMb3pCWLFmSnV6wYEGaMmVKw44hKmJiyFFYunTpGtcPAAAAtO7n766uWLnllluKvVOOOuqosnfqK17xinT88ccXT8+fP39IjxEAAABoXV0drKxcubK4HE1r+7PVVluV3QYAAADobl0drGyzzTbF5T/+8Y/9rrd48eKy2wAAAADdrauDle233z7tsssu2fJFF12UHnrooTXW+dvf/pa++tWvFqtaZsyYMeTHCQAAALSmrp9uee7cuWmfffZJDzzwQHrjG9+YTjjhhOz38OHD0z333JPOPPPM7LJx48al73znO2mdddapuzlOJQ8//PAAbwEAAADQLF09K1DBE088kc4777x0xhlnpGeeeabXZSNGjEizZs3KfvJ0DB42bFjN65oVCAAAAAaHWYEG0Y9//OOsGqVvqBJWrVqV/vu//ztdeumlSQYFAAAAtF2wElUfA/2JHirlfPrTn86mWr7vvvvSQQcdlG6++eYsYHnuuefSHXfckV32pz/9KZ144onp3e9+d3rxxRfrOvZIwSr93HrrrQ26lwAAAICh1tU9Vq666qr0la98JVs+8sgjs34rpXbcccd04YUXZuVBX/ziF9P3v//9dO6556ZPfOITNV+HoT0AAADQudqix0pUkwzUZpttljbYYINe5x188MHpyiuvzCpaonpk8803L7vt888/nzbaaKOskmWHHXZId955Z2r1MV4AAADA4H/+bouKlW233XZQ9nvvvfdmvzfeeON+Q5UwcuTI9NrXvjbdcsstDQl5AAAAgM7QFj1WBktMqRxWr15ddd1oYlu6DQAAAEBXBytbbrllcbrlQvVKOcuXL0/33HNPr20AAAAAujpY2X///YvL//iP/5hWrly5xjovvfRS+uQnP1m87J3vfOeQHiMAAADQutqiee1gibAkmtEWqlW23377bMafN7zhDWnttddOv//979N5552X5s+fn12+ySabZJUr48aNa9gxaF4LAAAAg6+rm9cOlnXWWSf97Gc/SwceeGD6zW9+k+6+++70kY98pOy6MQQopltuZKgCAAAAtLeuDlbCFltskRYsWJAuu+yy9N3vfjfdcccd6bHHHktRyDN27Nj0+te/Ph100EHpiCOOSC9/+cubfbgAAABAC+n6YCWMGDEiHX744dkPAAAAQK26unktAAAAwEAIVgAAAAByEqwAAAAA5CRYAQAAAMhJsAIAAACQk2AFAAAAICfBCgAAAEBOghUAAACAnAQrAAAAADkJVgDoeguWLB/S7QAA6ByCFQC62tnXLkwz58xP512/uK7tYv3YLrYHAKB7CVYA6FpRcTJ73qJs+Yyr76s5XIn1Yv0Q26tcAQDoXoIVALrW1Ilj04n7bFs8XUu4UhqqhNg+9gMAQHcSrADQ1Y7bY6uaw5VyoUpsDwBA9xKsAND1aglXhCoAAJQjWAGAKuGKUAUAgP4M7/cSAOgyhbCkEKLE7/NvXJyeWrGquI5QBQCAUipWAKBC5YpQBQCASgQrANBHhCejR43odV6cFqoAANCXYAUA+oieKqWVKiFOV5uKGQCA7iNYAaCjLFiyfEDb9W1UW1q5UmkqZgAAupNgBYCOcfa1C9PMOfPrDj9i/dju/d/89Rqz/9x10oyqUzEDANC9BCsAdISoOJk9b1Hd4UdphcrNi58o26i20lTMAAB0N8EKAB1h6sSxdYcffYf9VJr9R7gCAEA5ghUAOkY94Uc9oUqe/QMA0B0EKwB0lFrCjzyhSqX9522YCwBA+xOsANBV4UrfUGXXrTasOVQpt/9Ze03KhiEBANCdhjf7AABgMBRCkkKIEr/Pv3FxemrFquI6hTAlKk7qDUdiuykTxwhVAAC6nIoVALqmcqVcqBLyhiNCFQAABCsAdLQIT0aPGtHrvDhd67AfAACoRLACQEeLniqllSohTpvNBwCARhCsANCx+jaqLa1cMVUyAACNIFgBoCtCleipctdJM6pOxQwAAPUQrADQFaFKoadKpamYAQCgXoIVALomVCkQrgAA0CiCFQC6KlQpEK4AANAIghUAOsKCJctrDlUqhSuxHwAAqJVgBYCOMHXi2DRrr0k1hyrlwpXYPvYDAAC1Gl7zmgDQ4o7fe3KaPmlc3eFIhCtTJo4RqgAAUDcVKwB0lLzhiFAFAIA8BCsAAAAAOQlWAAAAAHISrAAAAADkJFgBAAAAyEmwAgAAAJCTYAUAAAAgJ8EKAAAAQE6CFQAAAICcBCsAAAAAOQlWAAAAAHISrAAAAADkJFgBAAAAyEmwAgAAAJCTYAUAAAAgJ8EKAB1hwZLlQ7odAAAEwQoAbe/saxemmXPmp/OuX1zXdrF+bBfbAwBAHoIVANpaVJzMnrcoWz7j6vtqDldivVg/xPYqVwAAyEOwAkBbmzpxbDpxn22Lp2sJV0pDlRDbx34AAKBeghUA2t5xe2xVc7hSLlSJ7QEAIA/BCgBdE64IVQAAaDTBCgBdEa4IVQAAGAzDB2WvANAkhbCkEKLE7/NvXJyeWrGquI5QBQCARlGxAkDHV64IVQAAGCyCFQA6UoQno0eN6HVenBaqAADQSIIVADpS9FQprVQJcbraVMwAQ2XBkuVDuh0Ag0OwAkDH6duotrRypdJUzABD5exrF6aZc+bX/X4U68d2sT0ArUGwAkBHKTf7z10nzag6FTPAUImKk9nzFtX9flT6/hbbq1wBaA2CFQA6RqUplStNxQwwlKZOHFv3+1G597fYDwDNJ1gBoONDlQLhCtAq6nk/quX9DYDmEawA0Pbq+dAhXAFaRS3vR0IVgNYnWAGgrUWPgXo/dJT7MKNXAdBq4YpQBaA9DG/2AQDAQESPgVl7TcoaOdbzoaOwXnxoie31KgCapfT9qPD7/Bt7TxkvVAFoXYIVANre8XtPTtMnjas7HIkPKVMmjhGqAC0XrghVANqHoUAAdIS84YhQBWgVEZ6MHjWi13lxWqgC0NoEKwAA0AKip0pppUqI0xpsA7Q2wQoAADRZ30a1pZUrZi8DaG2CFQAAaKJys//cddIMU8MDtAnBCgAANEmlKZUrTcUMQOsQrAAAQIuFKgXCFYDWJ1gBAIAWDFUKhCsArU2wAgAAQ2jBkuU1hyqVwpXYDwDNJ1gBAIAhNHXi2DRrr0k1hyrlwpXYPvYDQPMNT23qmWeeSXfccUe69dZbs58FCxakJUuWZJdtscUWxeVa3XPPPemcc85JP//5z9NDDz2U1ltvvbTtttum97///elDH/pQGj68be8qAABazPF7T07TJ42rOxyJcGXKxDFCFYAW0rZpwf7775+uv/76huzrm9/8Zvr4xz+eVq5cWTzv+eefTzfddFP2M3fu3HTVVVelcePGNeT6AAAgbzgiVAFoLW07FKinp6e4PHbs2DRjxoysyqReP/3pT9Oxxx6bhSqbbLJJ+trXvpZuueWW9LOf/Sy9613vytaJipiDDz44vfjiiw29DQAAAEB7a9uKlX/4h39IxxxzTJo6dWraeuuts/MmTpyYDRGq1apVq9InPvGJ9NJLL6VXvOIV6eabb05bbfV/Y1z32Wef9LGPfSyde+65WeXKJZdcko488shBuT0AAABA+2nbipWPfOQj6X3ve18xVMnjBz/4QfrjH/+YLX/2s5/tFaoUfPnLX05jxowpLgMAAAC0fbDSCFdeeWVxub9KlFGjRqVDDz00W/7973+fFi5cOGTHBwAAALS2rg5WYnhP2GabbdKmm27a73q77757cTmGCwEAAAC0dY+VgYpeLEuXLs2WY1rlSkovv/fee+u6nmXLllW8/OGHH65rfwAAAEDr6NpgpTTwGD9+fMV1J0yYUFwuhDG1Kt0WAAAA6CxdOxTob3/7W3G52jTNL3/5y4vL9cw6BAAAAHS2rq1Yef7554vL66yzTsV111133eLyc889V9f1VKtwiaFA06ZNq2ufAAAAQBcEK8OGDRvwPubOndvvjD0DMXLkyOLyypUrK677wgsvFJdf9rKX1XU91YYZAQAAAO2ra4cCrb/++jUP73n22WdrHjYEAAAAdI9BrVipdwadcjbbbLM0GDbffPOaZ+4pHc6jGS0AAAAwJMFKtWmMm12xEiFJhCb33XdfxXVLL99uu+2G4OgAAACAdtC1Q4HC9OnTs9/3339/+stf/tLvejfccENxeddddx2SYwMAAABaX1cHKwcddFBx+aKLLiq7zooVK9J///d/Z8uvec1r0uTJk4fs+AAAAIDW1tXBysEHH5xe/epXZ8v/+q//mhYvXrzGOv/0T/+UnnzyyeIyAAAAwJD0WBlMf/jDH9JNN93U67zC7D7xu28Fyj777JM23XTTXueNGDEinXPOOWn//fdPTz/9dDbM51/+5V/StGnTsjDlm9/8Zvre975XHDZ0+OGHD/rtAgAAANrHsJ6enp7UhiI4Oeqoo2pe/7rrrkt77LFH2csiQPn4xz+eVq5cWfbyCFquuuqqNG7cuNRoMSNRYaahaKQ7fvz4hl8HAAAAdLtlg/T5u6uHAhV8+MMfTrfffnv2O4YGjRw5Mm244YZZlcp5552Xbr755kEJVQAAAID21rYVK51CxQoAAAAMPhUrAAAAAC1GsAIAAACQk2AFAAAAICfBCgAAAEBOghUAAACAnAQrAAAAADkJVgDoKAuWLB/S7QAA6G6CFQA6xtnXLkwz58xP512/uK7tYv3YLrYHAIB6CFYA6AhRcTJ73qJs+Yyr76s5XIn1Yv0Q26tcAQCgHoIVADrC1Ilj04n7bFs8XUu4UhqqhNg+9gMAALUSrADQMY7bY6uaw5VyoUpsDwAA9RCsANB14YpQBQCARhGsANBV4YpQBQCARhre0L0BQIsohCWFECV+n3/j4vTUilXFdYQqAAAMlIoVALqmckWoAgBAowlWAOhoEZ6MHjWi13lxWqgCAEAjCFYA6GjRU6W0UiXE6WpTMQMAQC0EKwB0rL6NaksrVypNxQwAALUSrADQkcrN/nPXSTOqTsUMAAD1EKwA0HEqTalcaSpmAACol2AFgK4JVQqEKwAANIpgBYCuClUKhCsAADSCYAWAjrBgyfKaQ5VK4UrsBwAAaiVYAaAjTJ04Ns3aa1LNoUq5cCW2j/0AAECthte8JgC0uOP3npymTxpXdzgS4cqUiWOEKgAA1E3FCgAdJW84IlQBACAPwQoAAABAToIVAAAAgJwEKwAAAAA5CVYAAAAAchKsAAAAAOQkWAEAAADISbACAAAAkJNgBQAAACAnwQoAAABAToIVAAAAgJwEKwAAAAA5CVYAAAAAchKsAAAAAOQkWAEAAADISbACAAAAkJNgBQAAACAnwQoAAABAToIVAAAAgJwEKwAAAAA5CVYAAAAAchKsAAAAAOQ0PO+GNMbq1auLyw8//HBTjwUAAAA61cMln7lLP4sPlGClyR577LHi8rRp05p6LAAAANAtn8UnTpzYkH0ZCgQAAACQ07Cenp6evBszcM8//3y6++67s+WNNtooDR+uiKhVS8YKFUW33npr2myzzZp9SAwxzwGC5wGeAwTPAzwHCJ4H7Wf16tXFUSPbb799GjlyZEP261N8k8UDOXXq1GYfBnWIN8zx48c3+zBoIs8BgucBngMEzwM8BwieB+2jUcN/ShkKBAAAAJCTYAUAAAAgJ8EKAAAAQE6CFQAAAICcBCsAAAAAOQlWAAAAAHISrAAAAADkNKynp6cn78YAAAAA3UzFCgAAAEBOghUAAACAnAQrAAAAADkJVgAAAAByEqwAAAAA5CRYAQAAAMhJsAIAAACQk2AFAAAAICfBCgAAAEBOghX4u1NOOSUNGzasrp/YJo/rr79+0K+D/PbYY4+aH59G+dWvfpUOO+ywtMUWW6SRI0emTTfdNL397W9P//Vf/9Ww66B2S5YsSeecc0465JBD0qRJk9KoUaOyx2X8+PHpoIMOSpdddllavXr1gK/He0HzPPjgg+nTn/502nbbbdPLX/7yNHbs2DR16tT05S9/Oa1YsaJh1/Ozn/0sHXzwwdlzZ911181+x+k4n+a47bbb0mmnnZZmzJhRfFzWW2+9NHny5HTUUUelm266acj/r4j3AoZOrY9L/D/QCPG3PJ5v8bc9/pbE3/r4mz9//vyG7J/B/V9vIK9T7wPdY3izDwDa2TbbbNPsQ6ADxB/dL37xi+mll14qnvfII4+ka665Jvv5zne+k7773e9m/4wx+L7whS+k008/PfX09Kxx2Z///Ofs54c//GH6yle+kj0ur3rVq5pynOT34x//OPtQ8/TTTxfPizAlPnDHz3/+53+mq666Km299da5ryNezx/5yEfSBRdcUPY5dOWVV6YPfehD6fzzz09rreV7rqHylre8Jf3yl79c4/yVK1emRYsWZT8XXXRROuKII9I3v/nNtM466zTlOOkMzz33XHr3u9+dfvrTn/Y6/09/+lP2tz0Cl5NOOimdfPLJTTtGahPv0/FFC/RHsAJ/99GPfjT741fJiy++mP1TFv+Mv+IVr8i+uR6oCy+8MPuWtD8bb7zxgK+DfKZMmZLmzp07qNcRH6pOPfXUbHmrrbZKn/vc59L222+fHnrooTR79ux03XXXZR/wjj766HTppZcO6rHwvx5++OEsVIkqhqgs2GuvvbJ/piLYuvfee9PXvva1tGDBguznbW97W7rjjjuyb7sHynvB0LjzzjvTe97znuwDTzxun/3sZ9Nb3/rW7HRUIsWH6YULF6b99tsvC1nWX3/9XNfz+c9/vhiq7LjjjumEE07IXuOLFy9OZ555ZnYcEeBstNFG6f/9v//X4FtJf+K9Nbzyla9MM2fOTLvttlsWjsbf96geOOuss7Lg6+KLL06rVq1q2Pvu3XffXfHyLbfcsiHXQ32OO+647P+//sTfgYGIv92FUCXeZ2bNmpU99+L5EK/7eD+IL1c222yzLIhl6MT/d88++2zFdX7/+99nfy9C/C+w+eabD+g6vQ90uB6gZj/96U/jK+zs54Mf/GDu/Vx33XXF/cQyrWX33XfPHpv4PZieeOKJng022CC7rle96lU9jz32WK/LV69e3bP//vt7rgyxE044oeeMM87oefrpp8teHo/LoYceWnxcTj311NzX5b1g6O22227Z/T18+PCeX/3qV2tcfuaZZxYfk5NPPjnXddx///3Z/mMfU6ZM6VmxYkWvy5999tns/MJxLFq0KPftoT777bdfz+WXX569jsuJ9+HJkycXnwM33HBD7uuK509hP7SWgb7GazFv3rzi9cTf8r7PuXiuxd/+uHz06NE9y5cvH7RjIf//A4XH8JJLLsm1D+8D3UPtKdQhvsEqiDJhGIj4tvqvf/1rtnzGGWekcePG9bp87bXXTueee272O0TvBwZfPBZRXdBfpULhcSkMEYjhQLSHW2+9tTgM5IMf/GDaeeed11gn+q5st9122XJUjUXVQr2++tWvFnvwRK+el73sZb0uj549cX6I9c4+++xct4f6/eQnP0mHHnpo8X21r3gfjqqVAq9v8vr3f//37Pfw4cN7/S0vfa7F35vw1FNPZf8T0DpiOGcM1wpR3fiud72r2YdEixOsQI1i+E/0VSiU6kX5MAxE9FgIMaysvz/Y0VgxhpuEefPmpb/97W9DeoyUt+GGG6bXv/712XKUctNer7kQTUr7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fXzWWWedrH9GmD9/fsUx2IWy0ChLrfStF4NTnhvDAsL++++fjb2OWaOGkveCxomZl0JUoxSGdZVTWoq966671nUdW265ZfFxqlbSfeONN2a/N9988zRx4sS6roeBiWl0owq18F4ePZM+9rGPtd3fElrzsZk6dWr2d77a+0D87Y9efoVt6p19iMaJmXoKf+832mijIZ2dx/tAZxCsQD+iXLxQAhpT7sbPUIohSPGPX9h9992H9Lqp/kE3ysUL8o7Fj6n3wtNPP52+//3vl10nSoh//vOfZ8sxLWTpuG0G16c+9amsUXHhvo9mlv1VOAwm7wWNU3jNhblz5/ZbpVQI1aPpYEyrXu83j4WhJPFNdOFDU19xfuGb6ljfN5ZDZ8WKFVkj6jvuuCM7/fnPfz6deOKJTTmW0go4r+/W6rsT0yyHrbbaKgs/6xF/q+PvRoi/4f0NC4y//fE/QIjmyTTPz372s2zK7fAP//APQ/r33vtAh2j2tETQqs4555zi9GdnnXVWzds98MADxe123333NS5fvnx5z3XXXVdxHzHF6ujRo4tTrN522225bgP1+8UvflHXdMv7779/rudBeOKJJ4pT6W6xxRY9jz/+eK/LV69ene2/sJ9qzxsa5+STTy7e77vssks2LXK9vBe0pt122y27P2Na3V/96ldrXH7mmWcWH7d4HvQVj1nh8ngvKOf+++/vWXvttbN1pkyZ0rNixYpel8fpOL9wHAsXLmzgLaSSF154oWfGjBnFx3DWrFm59jN37tyKz5Pf/va3PYsWLaq4j/PPP7+4j0033TTX+wz1+9GPftSzatWqmqdbLvc/YLXHv+906gcccED2N73UY4891vOqV70quzze5+NvAs1zyCGHFB+v22+/vaZtvA9QSo8V6EfhG8tIrKO/SqPEN8/xDejrX//67NvTnXbaKWugGf02/vSnP2V9XaIjeWFoSMw+EuswNL71rW+lAw44IPvZY489smmVY0aW6OofQwe+8Y1vFEs2YyrO2bNn576usWPHpjPOOCMde+yx6cEHH0xvetObsm9Ot99++6yR4le/+tViw9T3ve992fEw+KLPwqmnnpotx7eUZ555ZvbtZSXxPKm3hNt7QXPEazaG9zz33HPZTDCf+9znsschTkcZeLzGC32QPv3pT+e6jtj2n/7pn7LhJdEMMa4vKiLim+/Fixdnr/s777wzWzfW01dh6MR76TXXXJMtx3TpMcPbPffc0+/6MZwjHs96xd+LaHQdz60YUhDv69E8OSoeo1LpO9/5TvE44jUfz7uYfp3B94lPfCIb9nHIIYeknXfeORuGF9McR8+d66+/PqseiOXC8MG8Q8Ti+RWzusX7yo9+9KOsn88//uM/ZkM97r777nT66adn7/Uh3hOGqlEq5RuWx9/c8LrXvS698Y1vbMh+vQ90mV4xC5C59957i+nxvvvu29BvqUsvr/QT33aecsopPS+99FIDbxnVlFajVPrZfvvte373u9/1u59aKlYKTjrppKwaob/riufgc889Nwi3lnLi8arlOVD6E493X94LWvsb61e84hX93ueTJ0/u91vGWipWwosvvthz9NFHV3xsP/jBD2brMXTqfW1HNWGeb6pLL6/0s+GGG/ZceeWVQ3DLKYjHtJbHJioY+qtgraVipVCdFn/D+7uOtdZaq+L2DI3zzjuv+JhE1WKtvA9QSsUKVJjDfjCa1sY3FdGrIRqW3nrrrdm0avHNyPPPP5822GCD7JvvqEyIhFszw6EX3yrvsMMO2eMTlSkx3jZmhorGsTHldjSPffe7352NhW7ULFFRHRFNFL/+9a9nM5Y88sgjWW+H6Otz1FFHZd+w0nm8FzRPNCL+7W9/m1WvXHXVVVn/g6hM2HrrrdPMmTPTxz/+8TRq1KgBXUc0Ob7ggguyb8XjW8gFCxZkj++4ceOyJpXRGHkomyMytPbdd9/s8Y/Xd1Qnxft69G6LbCeqFeP9fZ999klHHnlkVhXJ0FamRkPZeGxiRqh4XUafk/XWWy+b7niXXXbJZoSJapaBikqYeI+59NJL00UXXZR+85vfpKeeeir7f2K33XbL3msacT005v/++L+ukVXq3ge6y7BIV5p9EAAAAADtyKxAAAAAADkJVgAAAAByEqwAAAAA5CRYAQAAAMhJsAIAAACQk2AFAAAAICfBCgAAAEBOghUAAACAnAQrAAAAADkJVgAAAAByEqwAAAAA5CRYAQAAAMhJsAIAAACQk2AFAAAAICfBCgAAAEBOghUAAACAnAQrAAAAADkJVgAAAAByEqwAAAAA5CRYAQAAAMhJsAIAAACQk2AFAAAAICfBCgAAAEBOghUAAACAnAQrAAAAACmf/w+eiLMGS1RniwAAAABJRU5ErkJggg==",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {
      "image/png": {
       "height": 434,
       "width": 555
      }
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.plot(nuage[0], nuage[1], 'x')\n",
    "plt.title('Un nuage de points')\n",
    "plt.axis('equal');"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "lang": "fr"
   },
   "source": [
    "### Calculs pour trouver les caractéristiques de notre nuage\n",
    "\n",
    "Fabriquer à partir de notre nuage de points 2D un nuage de points 3D en introduisant la nouvelle\n",
    "variable qu'on a choisit.\n",
    "\n",
    "Le nouveau nuage s'appelle `nuage3D`."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 35,
   "metadata": {},
   "outputs": [],
   "source": [
    "y = np.square(x)\n",
    "nuage3D = np.array([x,y,z])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 36,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "application/vnd.plotly.v1+json": {
       "config": {
        "plotlyServerURL": "https://plot.ly"
       },
       "data": [
        {
         "mode": "markers",
         "type": "scatter3d",
         "x": {
          "bdata": "041t7U0R8r+og7drVtnyPxgcLdm9eOe/nHF9XQ/C/r9FUN9uv9AGwFx4ifOixQTAdD++vcE48T+QBYAPycfRv0C9RvrDF8w/RMZJ/ksKA0DMJdH0SIkHQIMfhyqKLfu/YAjBrZ5P7z96dVralrj2v0zrn5I9AgfA+DqU7unN+D9EmyUtQkfxv6xMgJD7X+a/KNrKd/b04D+AjTzK2Mf/PwxXADC3w+g/bgTfmSHjAUBNA+VSbr31v9zBn4rMnPw/DWnXn88t/r+Enbxk57sFQAAIzT22//E/Fv6I7q5P+78ybGAxSnkFQDRGkCaDKfY/RFY8VCGf978DtoIUpYX7v4CIk9rP9Ls/3AG7EajEBsDi2ScmNxX8v6BT8Dy469y/8Fl9EMwo6L9QF1/rXPnLv0szwzX/WPW/7MVhy5+p4D+Yg3vEDncBQDtv87/EWwLAwOEpNb6xuj8KV/OoJakBwBgldCSL0fQ/wGfinN/047+QL1c4LR/ZPwSnivm2Z/6/iZ8CWRwMAcDANAgodliyvw==",
          "dtype": "f8"
         },
         "y": {
          "bdata": "6pJKDQJn9D/XglmsijT2P9z9c3xYN+E/vSagqXWQDUB8mo31WEQgQDVYAKSg9xpA63SOCGWJ8j/cMTDkScKzP8TKY5yoqag/1gJWHHuoFkAnOkPZpU8hQDwwsPYZFQdA1cAyiwmj7j+xltI1+CEAQNyv7qo4iyBA6UTN6Qs6A0CoTFL8qajyPzoRKJgzSt8/bAawW5P40T93UuUdFJAPQAM0ssw/KuM/B5KusD//E0CTQPhaBIr9P7GS+kFmlQlA4ZHo4CZ2DECdRVQm3oUdQEZXYQxaP/Q/MDr9nT1PB0C89x81+tEcQE5sZV6Usv4/NYpuPNdvAUA/rSq6tKsHQONZ5KdvbIg/mw+tph8zIEDw3IaTLqUIQGRZyMhKI8o/kJL6G2Y94j9YP038Y3SoPzyMVvSMe/w/nuGn3EVa0T8txj5NdRATQCGTXgeJEBVA08X6WrBEhj/h0e4ybH4TQLrA9CKUFvs/7tr/xDbk2D8WSuUH1bjDP96j4DnH4wxAa1DdZ8UpEkDRXzPx8gh1Pw==",
          "dtype": "f8"
         },
         "z": {
          "bdata": "nGkSTOc75L96ueYqC0brP+B0alO8l/M/CgP1EvU1CcDzIsbUzJchwLXpBctVJyHAqGaRWY6g1j9QCLXwStn4PzJ3fYupjwNAcKCP1+oNF8AQK0gOykgjwPzC5qDczArAAD+QQux33r90CnefYzXgv1BhckPT5SLAXIXIGA2H5r8SL5ZxFR3kv5qOIVYy/+0/kG6u1q4q2j/4jcKCd8MJwJbivMZj8P0/HtgQlyISDsBfpYaQq0n3v9Bnwr90YvW/OC7j0Zv9D8DkgoA6rHMawECjxI/KCvA/QR8YP0Ha/7/eKtszhh0cwCAMr5PlSLI/6WeTLpMFAMDDp4SX+j3/vwINKdhxg/w/ZIv/tKgQJcBu4idpq/gIwPixWVCOv94/FBslu2XJ+T/W+lGASUH2P/FdvIuLvfC/Upok+zgh+T+zaGYrq+0RwI60/OHw9hnA2gCWiROHAUD7v1hI5W0XwPDTt+3pMdi/yiGZVlru1j8OajLhAqXjPwTxIj1tewbAN+UKlDq/DsC6/YggeYYDQA==",
          "dtype": "f8"
         }
        }
       ],
       "layout": {
        "template": {
         "data": {
          "bar": [
           {
            "error_x": {
             "color": "#2a3f5f"
            },
            "error_y": {
             "color": "#2a3f5f"
            },
            "marker": {
             "line": {
              "color": "#E5ECF6",
              "width": 0.5
             },
             "pattern": {
              "fillmode": "overlay",
              "size": 10,
              "solidity": 0.2
             }
            },
            "type": "bar"
           }
          ],
          "barpolar": [
           {
            "marker": {
             "line": {
              "color": "#E5ECF6",
              "width": 0.5
             },
             "pattern": {
              "fillmode": "overlay",
              "size": 10,
              "solidity": 0.2
             }
            },
            "type": "barpolar"
           }
          ],
          "carpet": [
           {
            "aaxis": {
             "endlinecolor": "#2a3f5f",
             "gridcolor": "white",
             "linecolor": "white",
             "minorgridcolor": "white",
             "startlinecolor": "#2a3f5f"
            },
            "baxis": {
             "endlinecolor": "#2a3f5f",
             "gridcolor": "white",
             "linecolor": "white",
             "minorgridcolor": "white",
             "startlinecolor": "#2a3f5f"
            },
            "type": "carpet"
           }
          ],
          "choropleth": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "choropleth"
           }
          ],
          "contour": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "contour"
           }
          ],
          "contourcarpet": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "contourcarpet"
           }
          ],
          "heatmap": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "heatmap"
           }
          ],
          "histogram": [
           {
            "marker": {
             "pattern": {
              "fillmode": "overlay",
              "size": 10,
              "solidity": 0.2
             }
            },
            "type": "histogram"
           }
          ],
          "histogram2d": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "histogram2d"
           }
          ],
          "histogram2dcontour": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "histogram2dcontour"
           }
          ],
          "mesh3d": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "mesh3d"
           }
          ],
          "parcoords": [
           {
            "line": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "parcoords"
           }
          ],
          "pie": [
           {
            "automargin": true,
            "type": "pie"
           }
          ],
          "scatter": [
           {
            "fillpattern": {
             "fillmode": "overlay",
             "size": 10,
             "solidity": 0.2
            },
            "type": "scatter"
           }
          ],
          "scatter3d": [
           {
            "line": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatter3d"
           }
          ],
          "scattercarpet": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattercarpet"
           }
          ],
          "scattergeo": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattergeo"
           }
          ],
          "scattergl": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattergl"
           }
          ],
          "scattermap": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattermap"
           }
          ],
          "scattermapbox": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattermapbox"
           }
          ],
          "scatterpolar": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterpolar"
           }
          ],
          "scatterpolargl": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterpolargl"
           }
          ],
          "scatterternary": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterternary"
           }
          ],
          "surface": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "surface"
           }
          ],
          "table": [
           {
            "cells": {
             "fill": {
              "color": "#EBF0F8"
             },
             "line": {
              "color": "white"
             }
            },
            "header": {
             "fill": {
              "color": "#C8D4E3"
             },
             "line": {
              "color": "white"
             }
            },
            "type": "table"
           }
          ]
         },
         "layout": {
          "annotationdefaults": {
           "arrowcolor": "#2a3f5f",
           "arrowhead": 0,
           "arrowwidth": 1
          },
          "autotypenumbers": "strict",
          "coloraxis": {
           "colorbar": {
            "outlinewidth": 0,
            "ticks": ""
           }
          },
          "colorscale": {
           "diverging": [
            [
             0,
             "#8e0152"
            ],
            [
             0.1,
             "#c51b7d"
            ],
            [
             0.2,
             "#de77ae"
            ],
            [
             0.3,
             "#f1b6da"
            ],
            [
             0.4,
             "#fde0ef"
            ],
            [
             0.5,
             "#f7f7f7"
            ],
            [
             0.6,
             "#e6f5d0"
            ],
            [
             0.7,
             "#b8e186"
            ],
            [
             0.8,
             "#7fbc41"
            ],
            [
             0.9,
             "#4d9221"
            ],
            [
             1,
             "#276419"
            ]
           ],
           "sequential": [
            [
             0,
             "#0d0887"
            ],
            [
             0.1111111111111111,
             "#46039f"
            ],
            [
             0.2222222222222222,
             "#7201a8"
            ],
            [
             0.3333333333333333,
             "#9c179e"
            ],
            [
             0.4444444444444444,
             "#bd3786"
            ],
            [
             0.5555555555555556,
             "#d8576b"
            ],
            [
             0.6666666666666666,
             "#ed7953"
            ],
            [
             0.7777777777777778,
             "#fb9f3a"
            ],
            [
             0.8888888888888888,
             "#fdca26"
            ],
            [
             1,
             "#f0f921"
            ]
           ],
           "sequentialminus": [
            [
             0,
             "#0d0887"
            ],
            [
             0.1111111111111111,
             "#46039f"
            ],
            [
             0.2222222222222222,
             "#7201a8"
            ],
            [
             0.3333333333333333,
             "#9c179e"
            ],
            [
             0.4444444444444444,
             "#bd3786"
            ],
            [
             0.5555555555555556,
             "#d8576b"
            ],
            [
             0.6666666666666666,
             "#ed7953"
            ],
            [
             0.7777777777777778,
             "#fb9f3a"
            ],
            [
             0.8888888888888888,
             "#fdca26"
            ],
            [
             1,
             "#f0f921"
            ]
           ]
          },
          "colorway": [
           "#636efa",
           "#EF553B",
           "#00cc96",
           "#ab63fa",
           "#FFA15A",
           "#19d3f3",
           "#FF6692",
           "#B6E880",
           "#FF97FF",
           "#FECB52"
          ],
          "font": {
           "color": "#2a3f5f"
          },
          "geo": {
           "bgcolor": "white",
           "lakecolor": "white",
           "landcolor": "#E5ECF6",
           "showlakes": true,
           "showland": true,
           "subunitcolor": "white"
          },
          "hoverlabel": {
           "align": "left"
          },
          "hovermode": "closest",
          "mapbox": {
           "style": "light"
          },
          "paper_bgcolor": "white",
          "plot_bgcolor": "#E5ECF6",
          "polar": {
           "angularaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "bgcolor": "#E5ECF6",
           "radialaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           }
          },
          "scene": {
           "xaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           },
           "yaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           },
           "zaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           }
          },
          "shapedefaults": {
           "line": {
            "color": "#2a3f5f"
           }
          },
          "ternary": {
           "aaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "baxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "bgcolor": "#E5ECF6",
           "caxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           }
          },
          "title": {
           "x": 0.05
          },
          "xaxis": {
           "automargin": true,
           "gridcolor": "white",
           "linecolor": "white",
           "ticks": "",
           "title": {
            "standoff": 15
           },
           "zerolinecolor": "white",
           "zerolinewidth": 2
          },
          "yaxis": {
           "automargin": true,
           "gridcolor": "white",
           "linecolor": "white",
           "ticks": "",
           "title": {
            "standoff": 15
           },
           "zerolinecolor": "white",
           "zerolinewidth": 2
          }
         }
        }
       }
      }
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig = go.Figure(data=[go.Scatter3d(x=nuage3D[0], y=nuage3D[1], z=nuage3D[2], mode='markers')])\n",
    "fig.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "lang": "fr"
   },
   "source": [
    "Calculer la matrice de covariance de notre nuage et ses vecteurs propres (on stockera les vecteurs propres dans la variable `vec`)."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 37,
   "metadata": {},
   "outputs": [],
   "source": [
    "cov = np.cov(nuage3D)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 38,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[19.165  2.778  0.139]\n",
      "[[ 0.068 -0.984 -0.162]\n",
      " [-0.585 -0.171  0.793]\n",
      " [ 0.808 -0.041  0.587]]\n"
     ]
    }
   ],
   "source": [
    "val, vec = lin.eig(cov)\n",
    "vec = vec[:,np.argsort(val)[::-1]]\n",
    "print(val)\n",
    "print(vec)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 39,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "application/vnd.plotly.v1+json": {
       "config": {
        "plotlyServerURL": "https://plot.ly"
       },
       "data": [
        {
         "mode": "markers",
         "type": "scatter3d",
         "x": {
          "bdata": "041t7U0R8r+og7drVtnyPxgcLdm9eOe/nHF9XQ/C/r9FUN9uv9AGwFx4ifOixQTAdD++vcE48T+QBYAPycfRv0C9RvrDF8w/RMZJ/ksKA0DMJdH0SIkHQIMfhyqKLfu/YAjBrZ5P7z96dVralrj2v0zrn5I9AgfA+DqU7unN+D9EmyUtQkfxv6xMgJD7X+a/KNrKd/b04D+AjTzK2Mf/PwxXADC3w+g/bgTfmSHjAUBNA+VSbr31v9zBn4rMnPw/DWnXn88t/r+Enbxk57sFQAAIzT22//E/Fv6I7q5P+78ybGAxSnkFQDRGkCaDKfY/RFY8VCGf978DtoIUpYX7v4CIk9rP9Ls/3AG7EajEBsDi2ScmNxX8v6BT8Dy469y/8Fl9EMwo6L9QF1/rXPnLv0szwzX/WPW/7MVhy5+p4D+Yg3vEDncBQDtv87/EWwLAwOEpNb6xuj8KV/OoJakBwBgldCSL0fQ/wGfinN/047+QL1c4LR/ZPwSnivm2Z/6/iZ8CWRwMAcDANAgodliyvw==",
          "dtype": "f8"
         },
         "y": {
          "bdata": "6pJKDQJn9D/XglmsijT2P9z9c3xYN+E/vSagqXWQDUB8mo31WEQgQDVYAKSg9xpA63SOCGWJ8j/cMTDkScKzP8TKY5yoqag/1gJWHHuoFkAnOkPZpU8hQDwwsPYZFQdA1cAyiwmj7j+xltI1+CEAQNyv7qo4iyBA6UTN6Qs6A0CoTFL8qajyPzoRKJgzSt8/bAawW5P40T93UuUdFJAPQAM0ssw/KuM/B5KusD//E0CTQPhaBIr9P7GS+kFmlQlA4ZHo4CZ2DECdRVQm3oUdQEZXYQxaP/Q/MDr9nT1PB0C89x81+tEcQE5sZV6Usv4/NYpuPNdvAUA/rSq6tKsHQONZ5KdvbIg/mw+tph8zIEDw3IaTLqUIQGRZyMhKI8o/kJL6G2Y94j9YP038Y3SoPzyMVvSMe/w/nuGn3EVa0T8txj5NdRATQCGTXgeJEBVA08X6WrBEhj/h0e4ybH4TQLrA9CKUFvs/7tr/xDbk2D8WSuUH1bjDP96j4DnH4wxAa1DdZ8UpEkDRXzPx8gh1Pw==",
          "dtype": "f8"
         },
         "z": {
          "bdata": "nGkSTOc75L96ueYqC0brP+B0alO8l/M/CgP1EvU1CcDzIsbUzJchwLXpBctVJyHAqGaRWY6g1j9QCLXwStn4PzJ3fYupjwNAcKCP1+oNF8AQK0gOykgjwPzC5qDczArAAD+QQux33r90CnefYzXgv1BhckPT5SLAXIXIGA2H5r8SL5ZxFR3kv5qOIVYy/+0/kG6u1q4q2j/4jcKCd8MJwJbivMZj8P0/HtgQlyISDsBfpYaQq0n3v9Bnwr90YvW/OC7j0Zv9D8DkgoA6rHMawECjxI/KCvA/QR8YP0Ha/7/eKtszhh0cwCAMr5PlSLI/6WeTLpMFAMDDp4SX+j3/vwINKdhxg/w/ZIv/tKgQJcBu4idpq/gIwPixWVCOv94/FBslu2XJ+T/W+lGASUH2P/FdvIuLvfC/Upok+zgh+T+zaGYrq+0RwI60/OHw9hnA2gCWiROHAUD7v1hI5W0XwPDTt+3pMdi/yiGZVlru1j8OajLhAqXjPwTxIj1tewbAN+UKlDq/DsC6/YggeYYDQA==",
          "dtype": "f8"
         }
        },
        {
         "type": "scatter3d",
         "x": [
          0,
          -0.3383254783235541
         ],
         "y": [
          0,
          2.9250660566388476
         ],
         "z": [
          0,
          -4.040980627894224
         ]
        },
        {
         "type": "scatter3d",
         "x": [
          0,
          -0.9844262587221044
         ],
         "y": [
          0,
          -0.17088398485428757
         ],
         "z": [
          0,
          -0.04127474843920637
         ]
        }
       ],
       "layout": {
        "template": {
         "data": {
          "bar": [
           {
            "error_x": {
             "color": "#2a3f5f"
            },
            "error_y": {
             "color": "#2a3f5f"
            },
            "marker": {
             "line": {
              "color": "#E5ECF6",
              "width": 0.5
             },
             "pattern": {
              "fillmode": "overlay",
              "size": 10,
              "solidity": 0.2
             }
            },
            "type": "bar"
           }
          ],
          "barpolar": [
           {
            "marker": {
             "line": {
              "color": "#E5ECF6",
              "width": 0.5
             },
             "pattern": {
              "fillmode": "overlay",
              "size": 10,
              "solidity": 0.2
             }
            },
            "type": "barpolar"
           }
          ],
          "carpet": [
           {
            "aaxis": {
             "endlinecolor": "#2a3f5f",
             "gridcolor": "white",
             "linecolor": "white",
             "minorgridcolor": "white",
             "startlinecolor": "#2a3f5f"
            },
            "baxis": {
             "endlinecolor": "#2a3f5f",
             "gridcolor": "white",
             "linecolor": "white",
             "minorgridcolor": "white",
             "startlinecolor": "#2a3f5f"
            },
            "type": "carpet"
           }
          ],
          "choropleth": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "choropleth"
           }
          ],
          "contour": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "contour"
           }
          ],
          "contourcarpet": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "contourcarpet"
           }
          ],
          "heatmap": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "heatmap"
           }
          ],
          "histogram": [
           {
            "marker": {
             "pattern": {
              "fillmode": "overlay",
              "size": 10,
              "solidity": 0.2
             }
            },
            "type": "histogram"
           }
          ],
          "histogram2d": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "histogram2d"
           }
          ],
          "histogram2dcontour": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "histogram2dcontour"
           }
          ],
          "mesh3d": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "mesh3d"
           }
          ],
          "parcoords": [
           {
            "line": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "parcoords"
           }
          ],
          "pie": [
           {
            "automargin": true,
            "type": "pie"
           }
          ],
          "scatter": [
           {
            "fillpattern": {
             "fillmode": "overlay",
             "size": 10,
             "solidity": 0.2
            },
            "type": "scatter"
           }
          ],
          "scatter3d": [
           {
            "line": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatter3d"
           }
          ],
          "scattercarpet": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattercarpet"
           }
          ],
          "scattergeo": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattergeo"
           }
          ],
          "scattergl": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattergl"
           }
          ],
          "scattermap": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattermap"
           }
          ],
          "scattermapbox": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattermapbox"
           }
          ],
          "scatterpolar": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterpolar"
           }
          ],
          "scatterpolargl": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterpolargl"
           }
          ],
          "scatterternary": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterternary"
           }
          ],
          "surface": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "surface"
           }
          ],
          "table": [
           {
            "cells": {
             "fill": {
              "color": "#EBF0F8"
             },
             "line": {
              "color": "white"
             }
            },
            "header": {
             "fill": {
              "color": "#C8D4E3"
             },
             "line": {
              "color": "white"
             }
            },
            "type": "table"
           }
          ]
         },
         "layout": {
          "annotationdefaults": {
           "arrowcolor": "#2a3f5f",
           "arrowhead": 0,
           "arrowwidth": 1
          },
          "autotypenumbers": "strict",
          "coloraxis": {
           "colorbar": {
            "outlinewidth": 0,
            "ticks": ""
           }
          },
          "colorscale": {
           "diverging": [
            [
             0,
             "#8e0152"
            ],
            [
             0.1,
             "#c51b7d"
            ],
            [
             0.2,
             "#de77ae"
            ],
            [
             0.3,
             "#f1b6da"
            ],
            [
             0.4,
             "#fde0ef"
            ],
            [
             0.5,
             "#f7f7f7"
            ],
            [
             0.6,
             "#e6f5d0"
            ],
            [
             0.7,
             "#b8e186"
            ],
            [
             0.8,
             "#7fbc41"
            ],
            [
             0.9,
             "#4d9221"
            ],
            [
             1,
             "#276419"
            ]
           ],
           "sequential": [
            [
             0,
             "#0d0887"
            ],
            [
             0.1111111111111111,
             "#46039f"
            ],
            [
             0.2222222222222222,
             "#7201a8"
            ],
            [
             0.3333333333333333,
             "#9c179e"
            ],
            [
             0.4444444444444444,
             "#bd3786"
            ],
            [
             0.5555555555555556,
             "#d8576b"
            ],
            [
             0.6666666666666666,
             "#ed7953"
            ],
            [
             0.7777777777777778,
             "#fb9f3a"
            ],
            [
             0.8888888888888888,
             "#fdca26"
            ],
            [
             1,
             "#f0f921"
            ]
           ],
           "sequentialminus": [
            [
             0,
             "#0d0887"
            ],
            [
             0.1111111111111111,
             "#46039f"
            ],
            [
             0.2222222222222222,
             "#7201a8"
            ],
            [
             0.3333333333333333,
             "#9c179e"
            ],
            [
             0.4444444444444444,
             "#bd3786"
            ],
            [
             0.5555555555555556,
             "#d8576b"
            ],
            [
             0.6666666666666666,
             "#ed7953"
            ],
            [
             0.7777777777777778,
             "#fb9f3a"
            ],
            [
             0.8888888888888888,
             "#fdca26"
            ],
            [
             1,
             "#f0f921"
            ]
           ]
          },
          "colorway": [
           "#636efa",
           "#EF553B",
           "#00cc96",
           "#ab63fa",
           "#FFA15A",
           "#19d3f3",
           "#FF6692",
           "#B6E880",
           "#FF97FF",
           "#FECB52"
          ],
          "font": {
           "color": "#2a3f5f"
          },
          "geo": {
           "bgcolor": "white",
           "lakecolor": "white",
           "landcolor": "#E5ECF6",
           "showlakes": true,
           "showland": true,
           "subunitcolor": "white"
          },
          "hoverlabel": {
           "align": "left"
          },
          "hovermode": "closest",
          "mapbox": {
           "style": "light"
          },
          "paper_bgcolor": "white",
          "plot_bgcolor": "#E5ECF6",
          "polar": {
           "angularaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "bgcolor": "#E5ECF6",
           "radialaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           }
          },
          "scene": {
           "xaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           },
           "yaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           },
           "zaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           }
          },
          "shapedefaults": {
           "line": {
            "color": "#2a3f5f"
           }
          },
          "ternary": {
           "aaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "baxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "bgcolor": "#E5ECF6",
           "caxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           }
          },
          "title": {
           "x": 0.05
          },
          "xaxis": {
           "automargin": true,
           "gridcolor": "white",
           "linecolor": "white",
           "ticks": "",
           "title": {
            "standoff": 15
           },
           "zerolinecolor": "white",
           "zerolinewidth": 2
          },
          "yaxis": {
           "automargin": true,
           "gridcolor": "white",
           "linecolor": "white",
           "ticks": "",
           "title": {
            "standoff": 15
           },
           "zerolinecolor": "white",
           "zerolinewidth": 2
          }
         }
        }
       }
      }
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig = go.Figure(data=[go.Scatter3d(x=nuage3D[0], y=nuage3D[1], z=nuage3D[2], mode='markers'),\n",
    "                     go.Scatter3d(x=[0,-5*vec[0,0]], y=[0,-5*vec[1,0]], z=[0,-5*vec[2,0]]),\n",
    "                     go.Scatter3d(x=[0,vec[0,1]], y=[0,vec[1,1]], z=[0,vec[2,1]])])\n",
    "fig.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "lang": "fr"
   },
   "source": [
    "Que peut-on déduire de notre premier vecteur propre ?"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### réponse\n",
    "\n",
    "Peu de variation en x"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "np.float64(-1.317313754879973)"
      ]
     },
     "execution_count": 18,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "penteY = vec[2,0] / vec[1,0]\n",
    "penteY"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "lang": "fr"
   },
   "source": [
    "Créer un nuage de point en 2D qui ne prend plus en compte l'impact du coefficient\n",
    "que l'on vient de trouver.\n",
    "\n",
    "On appelle ce nouveau nuage `nuage2D` (ce n'est pas le même que notre `nuage` initial)."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {},
   "outputs": [],
   "source": [
    "nuage2D = np.array([nuage3D[0], nuage3D[2] - penteY * nuage3D[1]])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAABC0AAAM6CAYAAACl+LmmAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAewgAAHsIBbtB1PgAASj5JREFUeJzt3X+UXHV9P/53NASIWJMQsOgGFyERVCo9JOlRwi9DghYQkAaLX0QorT+qbYy2YPUYkWoVFWPkDxNEROoPFI7FI3gQpGAA0wJKjqBiQiSYhVRBiKDhRyL7Pe/LZ9bJMrs7d7J35n3vfTzOydk7k7kzd3fu3Lnv532/368Jg4ODgwEAAAAgMc/p9QYAAAAAtCK0AAAAAJIktAAAAACSJLQAAAAAkiS0AAAAAJIktAAAAACSJLQAAAAAkiS0AAAAAJIktAAAAACSJLQAAAAAkiS0AAAAAJIktAAAAACSJLQAAAAAkiS0AAAAAJIktAAAAACSJLQAAAAAkjQxVNgTTzwR7rzzzmx5jz32CBMnVvrXBQAAgJ7Ytm1bePDBB7PlAw88MOyyyy7j8ryVbsXHwGLu3Lm93gwAAACojVtvvTXMmTNnXJ7L8BAAAAAgSZXuaRGHhDQnPXvttVdPtwcAAACqaNOmTUMjHZrb4juq0qFF8xwWMbDo6+vr6fYAAABA1U0cx/kkDQ8BAAAAkiS0AAAAAJIktAAAAACS1LPQ4uyzzw4TJkwY+nfjjTf2alMAAACABPUktFizZk34zGc+04uXBgAAAEqi66HF008/Hd72treFbdu2hT333LPbLw8AAACURNdDi8997nPhtttuC/vvv38488wzu/3yAAAAQEl0NbT41a9+FT70oQ9lyytWrAiTJk3q5ssDAAAAJdLV0OJd73pX+P3vfx/e+ta3hsMPP7ybLw0AAACUTNdCi29+85vhqquuCtOmTQuf/vSnu/WyAAAAQElN7MaLbN68OSxevDhbPu+888L06dPH5XkHBgZG/f9NmzaNy+sAAAAAFQ0tzjrrrPB///d/4ZBDDhnXyTdnzJgxbs8FAAAA1Gx4yE033RQuuuiiMHHixGzyzQkTJhT9kgAAAEAFFNrT4qmnngpve9vbwuDgYFiyZEl45StfOa7Pv3HjxjGHh8ydO3dcXxMAAACoQGjxH//xH+Huu+8Oe++9d/jwhz887s/f19c37s8JAAAAVHx4SAwrPv7xj2fLF1xwQXje855X1EsBAAAAFVRYT4tly5Zlw0Ne+tKXhi1btoTLLrvsWY+56667hpb/+7//O5usMzruuOOEHAAAAFBzhYUWTz75ZPbzl7/8ZTjllFPGfPy///u/Dy3fe++9QgsAAACoucKrhwAAAAAkFVpccsklWdWQ0f41T855ww03DN3f399f1GYBAAAAJaGnBQAAAJAkoQUAAACQJKEFAAAAkCShBQAAAJCknoYW55xzztDkm0cccUQvNwUAAABIjJ4WAAAAQJKEFgAAAECShBYAAABAkoQWAAAAQJKEFgAAAECShBYAAABAkoQWAAAAQJKEFgAAAECShBYAAABAkoQWAAAAQJKEFgAAAECShBYAAABAkoQWAAAAQJKEFgAAAECShBYAAABAkoQWAAAAQJKEFgAAAECShBYAAABAkoQWAAAAQJKEFgAAAECShBYAAABAkoQWAAAAQJKEFgAAAECShBYAAABAkoQWAAAAQJKEFgAAAECShBYAAABAkoQWAAAAQJKEFgAAAECShBYAAABAkoQWAAAAQJKEFgAAAECShBYAAABAkoQWAAAAQJKEFgAAAECShBYAAABAkoQWAAAAQJKEFgAAAECShBYAAABAkoQWAAAAQJKEFgAAAECShBYAAABAkoQWAAAAQJKEFgAAAECShBYAAABAkoQWAAAAQJKEFgAAAECShBYAAABAkoQWAAAAQJKEFgAAAECShBYAAABAkoQWAAAAQJKEFgAAAECShBYAAABAkoQWAAAAQJKEFgAAAECShBYAAABAkoQWAAAAQJKEFgAAAECShBYAAABAkoQWAAAAQJKEFgAAAECShBYAAABAkoQWAAAAQJKEFgAAAECShBYAAABAkoQWAAAAQJKEFgAAAECShBYAAABAkoQWAAAAQJKEFgAAAECShBYAAABAkoQWAAAAQJKEFgAAAECShBYAAABAkoQWAAAAQJKEFgAAAECShBYAAABAkoQWAAAAQJKEFgAAAECShBYAAABAkoQWAAAAQJKEFgAAAECShBYAAABAkoQWAAAAQJKEFgAAAECShBYAAABAkoQWAAAAQJKEFgAAAECShBYAAABAkoQWAAAAQJKEFgAAAECShBYAAABAkoQWAAAAQJKEFgAAAECShBYAAABAkoQWAAAAQJKEFgAAAECShBYAAABAkoQWAAAAQJKEFgAAAECShBYAAABAkoQWAAAAQJKEFgAAAECShBYAAABAkoQWAAAAQJKEFgAAAECShBYAAABAkoQWAAAAQJKEFgAAAECShBYAAABAkoQWAAAAQJKEFgAAAECShBYAAABAkoQWAAAAQJKEFgAAAECShBYAAABAkoQWAAAAQJKEFgAAAECShBYAAABAkoQWAAAAQJKEFgAAAECShBYAAABAkoQWAAAAQJKEFgAAAECShBYAAABAkoQWAAAAQJKEFgAAAECShBYAAABAkoQWAAAAQJKEFgAAAECSJhb1xI8++mj47ne/G2677bZw++23h/vvvz88+OCD4fHHHw9TpkwJL3/5y8Nf//VfhzPPPDPsvvvuRW0GAAAAUFITBgcHB4t44u9///thwYIFYz5u+vTp4Stf+Uo4+uijx30bBgYGwowZM7LljRs3hr6+vnF/DQAAgDK6bcPDYU7/tK6tR7UNFNT+LqynRRQ3+MgjjwwHH3xwtrzXXnuFp59+OvtlrrjiivCtb30rPPTQQ+ENb3hDuPXWW8OrXvWqIjcHAACAEMKy69aG5devC2e/bv/wziP2bXu9z9+4Ppx3zd1h8fyZYcmCWYVuIxTa0+KPf/xjeO5znzvqY6688spw4oknZsvxZwwxxpOeFgAAAM/uKbFoxeqh2+0GF43AouHyd7xajwsKb38XNhHnWIFFdMIJJ4SXvexl2fJNN91U1KYAAADw/8SgIQYVDTGIiIFEnsAiri+woBbVQ57//OdnP5944olebwoAAEAtxJ4V7QYXrQKLPENKoLShxS9+8YuwZs2abHn//f/0gQEAAKD3wYXAgtqFFlu2bAnr1q0Ln/nMZ8Lhhx8etm3blt3/nve8p9ubAgAAUGujBRcCC1JQaPWQhksuuSScccYZI/7/+9///vDmN7+5o4k+RrNp06bczwkAAFAnjSCiEVDEnytXrQ+bt2wdeozAgkqHFiM56KCDwoUXXhjmzJnT0fqNmUkBAAAYv+BCYEGthofEKiF33nln9u/WW28NX//617MSp3E+i1NOOSVcddVV3dgMAAAARhCDiSmTd9ruvnhbYEEvTRgcHBzs1Yv/53/+Z3jrW98aJkyYEL74xS+G008/fdyHh8ydO3fc68QCAADpu23Dwx2V5ex0vbIbPodFg54WtNs+b4yGGM/2d0+rh7zlLW8JixYtCk8//XR497vfHR5++OFc68c/wmj/9tprr8K2HQAASNey69aGRStWj1jGcyTx8XG9uH6dA4vmHhejlUOFovU0tIiOP/747Ocf/vCHcM011/R6cwAAgJKLPSWWX78ud4O7ueEe14/PUwetqoSsWbpwzHKoUIvQYo899hhavu+++3q6LQAAQPnFoR15G9ytGu51GCIyWlnT0cqhQm1Ci/vvv39oebfdduvptgAAANWQp8E9WsO9ytr5vQUXhLqHFpdffvnQ8oEHHtjTbQEAAKqjnQa3wGLs31twQSVDi0suuSQ88cQToz5m2bJl4bvf/W62vM8++4RDDz20qM0BAABqaLQGd10DizhXR97fu9XfsS5zflDRkqf9/f3hscceCyeddFKYN29e2HfffbPhH/G+O++8M3z1q18Nt9xyS/bYSZMmhauvvjocddRRpSi5AgAAlL86xuYtW2sXWDTE6ihxstG8v3fj77h4/sywZMGsQreRcimq/V1oaNHOxJrxF7n44ovDggULxn0bhBYAAMBIwUVdA4uG2FOik8lGO12PahsoqP09MRTke9/7XtZ7IvamuOeee8Kvf/3r8Nvf/jbsuuuuYc899wwHHXRQOPbYY8PJJ58cJk+eXNRmAAAAZGIwsXLV+u16WMQeF3UMLKJOgweBBd1UWGjxspe9LPv33ve+t6iXAAAAyNXTojmwiOLteH9dgwtIXc+rhwAAAPRiTosG1TAgXUILAACg0lpVCVmzdKEynlACQgsAAKCyRitrOlo5VCANQgsAAKB2gUWD4ALSJrQAAABqGVg0CC4gXUILAACgUm7b8HDbgcVowUV8HqC3hBYAAEClzOmfFhbPn9l2YNEquIjrx+cBemtij18fAABg3C1ZMCvMmzk9d/AQg4vZ/VMFFpAIPS0AAIBK6jR4EFhAOoQWAAAAQJKEFgAAAECShBYAAABAkoQWAAAAQJKEFgAAAECShBYAAABAkoQWAAAAQJKEFgAAAECShBYAAABAkoQWAAAAQJKEFgAAAECShBYAAABAkoQWAAAAQJKEFgAAAECShBYAAABAkoQWAAAAQJKEFgAAAECShBYAAABAkoQWAAAAQJKEFgAAAECShBYAAABAkoQWAAAAQJKEFgAAAECShBYAAABAkoQWAAAAQJKEFgAAAECShBYAAABAkoQWAAAAQJKE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AAAAIElCCwAAACBJQgsAAAAgSUILAAAAIElCCwAAACBJQgsAAAAgSUILAAAAIElCCwAAACBJQgsAAAAgSUILAAAAIElCCwAAACBJQgsAAAAgSUILAAAAIElCCwAAACBJQgsAAAAgSUILAAAAIElCCwAAACBJQgsAAAAgSUILAAAAIElCCwAAACBJQgsAAAAgSUILAAAAIElCCwAAACBJQgsAAAAgSUILAAAAIElCCwAAACBJQgsAAAAgSUILAAAAIElCCwAAACBJQgsAAAAgSUILAAAAIElCCwAAACBJQgsAAAAgSUILAAAAIElCCwAAACBJQgsAAAAgSUILAAAAIElCCwAAACBJQgsAAAAgSUILAAAAIElCCwAAACBJQgsAAAAgSUILAAAAIElCCwAAACBJQgsAAAAgSUILAAAAIElCCwAAACBJQgsAAAAgSUILAAAAIElCCwAAACBJQgsAAAAgSUILAAAAIElCCwAAACBJQgsAAAAgSUILAAAAIElCCwAAACBJQgsAAAAgSRNDhW3btm1oedOmTT3dFgAAAKiqTU1t7ua2+I6qdGjx4IMPDi3PnTu3p9sCAAAAdfDggw+G/v7+cXkuw0MAAACAJE0YHBwcDBX1xBNPhDvvvDNb3mOPPcLEiRML7w7T6NFx6623hr322qvQ16N+7GMUzT5GN9jPKJp9jG6wn1G0su1j27ZtGxrtcOCBB4ZddtllXJ630sND4h9pzpw5PXntuEP19fX15LWpB/sYRbOP0Q32M4pmH6Mb7GcUba+S7GPjNSSkmeEhAAAAQJKEFgAAAECShBYAAABAkoQWAAAAQJKEFgAAAECShBYAAABAkoQWAAAAQJImDA4ODvZ6IwAAAACG09MCAAAASJLQAgAAAEiS0AIAAABIktACAAAASJLQAgAAAEiS0AIAAABIktACAAAASJLQAgAAAEiS0AIAAABIktACAAAASJLQokuuvvrqcM4554RjjjkmHHDAAWH69Olhp512ClOnTg0HH3xweN/73hd+8Ytf9HozKbkNGzaECy64IJx00klh5syZYfLkyWGXXXYJfX194YQTTgiXXXZZ2LZtW683kxL7/e9/H1atWhU+/elPh5NPPjnss88+YcKECdm//v7+Xm8eJXDfffdl33n7779/eN7znhemTZsW5syZEz71qU+FLVu29HrzKLHf/OY34aqrrgpLly4Nr3/967Nzrcbx6fTTT+/15lEBt99+ezj33HPDwoULs3OrnXfeOey2225h1qxZ4Ywzzgg333xzrzeREnv00Uezc/X4HXn44YeH/fbbL7zgBS8IkyZNCnvuuWc44ogjwic/+cnw29/+NtTNhMHBwcFeb0TVxUZiDCjGEh8TD4Tvf//7u7JdVMuHPvSh8LGPfSyM9ZGOjYMrrrgi7L333l3bNqrjyCOPDDfeeGPL/3vJS16SBWcwku985zvh1FNPzU7MWokn/jHkjydqkFcMJ0by1re+NVxyySVd3R6q5bDDDgs33XTTmI877bTTwhe+8IWsoQl5fP/73w8LFiwY83HTp08PX/nKV8LRRx8d6mJirzegLmJKFtOxv/qrvwovfelLw1577ZVdBX/ggQeyBsDFF18cfve734V/+7d/C1OmTAnveMc7er3JlMymTZuywCJeuTzxxBPD/Pnzs94WsafFz3/+8/C5z30u3Hbbbdm/o446Kvz4xz/Org5AHs2hWLxCPnv27PDDH/4w64EBo7njjjvCm970pvD4449nx574fRdDsHg7XlmKJ/lr167NeiTGq5nPf/7ze73JlFgM5mNvnmuvvbbXm0JFxHP26EUvelFYtGhROPTQQ7P97I9//GNYvXp1OP/888P9998fLr300rB169bwta99rdebTAnNmDEj+26MPfHjcmwzPv3002FgYCC76Pitb30rPPTQQ+ENb3hDuPXWW8OrXvWqUAd6WnRJPKA997nPHfH/77333mznfOSRR8Iee+yRNUBHezwMd/bZZ4fdd989vPOd72x5sh/3wTe/+c3hm9/8Znb7Ix/5SNaFFvK48MILs/0r9thpXA2Pw0Jil389LWjnKuXEiROzIUavfvWrt/v/ODzkrLPOypY//OEPZ0MqIY+438RjU/z3whe+MDsexSFskZ4W7Khjjz0260URh+C2OkePDclDDjkkC1+jH/zgB9lxD8arvRhdeeWV2cXJKP6MIUYdCC0SEntXrFy5Mlu+6667wite8YpebxIVE8fAxSsETz31VDjwwAPDT37yk15vEhUgtGAs8WpQ7GkYvf3tbw8rVqx41mPilaRXvvKVWc+w2OMwzk/QztBKGInQgm6Lc6ocd9xx2fI//dM/Zb1cYbztv//+2VyIcZjIgw8+GOrARJwJab46/sQTT/R0W6im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",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {
      "image/png": {
       "height": 413,
       "width": 534
      }
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.plot(nuage2D[0], nuage2D[1], 'x')\n",
    "plt.axis('equal');"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "lang": "fr"
   },
   "source": [
    "Que peut-on en déduire ?\n",
    "\n",
    "#### réponse\n",
    "\n",
    "...."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "metadata": {},
   "outputs": [],
   "source": [
    "alpha = penteY"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 41,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[[ 1.067 -1.38   1.411  2.773 -1.507  0.457  0.552  0.434 -1.662  2.716 -0.317  2.078  1.197 -1.215  1.883 -0.621  2.287  0.488  2.29   1.155  1.352\n",
      "   0.008  2.737  0.864 -0.457  0.638 -2.885 -1.191  0.961 -1.26   0.708 -0.427 -2.187 -1.21   0.42   0.545  0.446  0.919  0.913 -0.411  2.379 -0.795\n",
      "  -0.385  2.352  1.837  1.223 -2.399  2.517  1.285  2.993]\n",
      " [ 1.072  2.033  1.182  2.459  0.525  2.331  2.27   1.768  1.07   1.349  1.873  1.938  2.248  2.055  2.929  2.134  1.111  1.362  2.549  1.137  1.884\n",
      "   0.65   1.617  0.763  2.04   1.123  0.798  2.183  2.157  0.379  1.02   1.701  1.34   0.799  2.495  1.882  1.704  1.918  2.197  1.085  1.91   0.812\n",
      "   0.838  2.995  2.445  1.791  0.615  1.662  0.942  2.163]]\n"
     ]
    }
   ],
   "source": [
    "val, vec = lin.eig(np.cov(nuage2D))\n",
    "beta = vec[1,0] / vec[0,0]\n",
    "print(nuage2D)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 42,
   "metadata": {},
   "outputs": [],
   "source": [
    "m = nuage2D.mean(axis=1)\n",
    "gamma = - beta * m[0] + m[1]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 43,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Les coefficients de z fonction polynomiale de degré 2 en x sont :\n",
      "\n",
      "alpha = -1.317313754879973\n",
      "beta  = 0.23616632610874383\n",
      "gamma = 1.5052386897088508\n"
     ]
    }
   ],
   "source": [
    "print(\"Les coefficients de z fonction polynomiale de degré 2 en x sont :\\n\")\n",
    "print(f\"alpha = {alpha}\")\n",
    "print(f\"beta  = {beta}\")\n",
    "print(f\"gamma = {gamma}\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "lang": "fr"
   },
   "source": [
    "Vous pouvez tout relancer en changer la valeur de la graine de l'aléatoire. Vous allez voir que parfois le\n",
    "bruit perturbe bien plus les résultats."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.13.2"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}