Azarthehulk commited on
Commit
efbf80d
1 Parent(s): 085fc1c

Upload pca_assignment.ipynb

Browse files

given some data points as x1,x2 and that are in the decimal points
here we will be standeredise the data using the sklearn laibrary standerdiseScaling class,
and doing covariance and then next we calculated the eigen values and eigen vectors from the liner algebra class in the sklearn,
then we applied our pca to cahnge the dimentionality according to their covariance and egenvectors.

Files changed (1) hide show
  1. pca_assignment.ipynb +563 -0
pca_assignment.ipynb ADDED
@@ -0,0 +1,563 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "cells": [
3
+ {
4
+ "cell_type": "code",
5
+ "execution_count": 1,
6
+ "id": "4b07db50",
7
+ "metadata": {},
8
+ "outputs": [],
9
+ "source": [
10
+ "import pandas as pd"
11
+ ]
12
+ },
13
+ {
14
+ "cell_type": "code",
15
+ "execution_count": 16,
16
+ "id": "0e46369a",
17
+ "metadata": {},
18
+ "outputs": [],
19
+ "source": [
20
+ "import numpy as np"
21
+ ]
22
+ },
23
+ {
24
+ "cell_type": "code",
25
+ "execution_count": 2,
26
+ "id": "604cc2e1",
27
+ "metadata": {},
28
+ "outputs": [],
29
+ "source": [
30
+ "data={\n",
31
+ " \"x1\":[2.5,0.5,2.2,1.9,3.1,2.3,2.0,1.0,1.5,1.1],\n",
32
+ " \"x2\":[2.4,0.7,2.9,2.2,3.0,2.7,1.6,1.1,1.6,0.9]\n",
33
+ "}"
34
+ ]
35
+ },
36
+ {
37
+ "cell_type": "code",
38
+ "execution_count": 3,
39
+ "id": "580be2ef",
40
+ "metadata": {},
41
+ "outputs": [],
42
+ "source": [
43
+ "df=pd.DataFrame(data)"
44
+ ]
45
+ },
46
+ {
47
+ "cell_type": "code",
48
+ "execution_count": 4,
49
+ "id": "af756531",
50
+ "metadata": {},
51
+ "outputs": [
52
+ {
53
+ "data": {
54
+ "text/html": [
55
+ "<div>\n",
56
+ "<style scoped>\n",
57
+ " .dataframe tbody tr th:only-of-type {\n",
58
+ " vertical-align: middle;\n",
59
+ " }\n",
60
+ "\n",
61
+ " .dataframe tbody tr th {\n",
62
+ " vertical-align: top;\n",
63
+ " }\n",
64
+ "\n",
65
+ " .dataframe thead th {\n",
66
+ " text-align: right;\n",
67
+ " }\n",
68
+ "</style>\n",
69
+ "<table border=\"1\" class=\"dataframe\">\n",
70
+ " <thead>\n",
71
+ " <tr style=\"text-align: right;\">\n",
72
+ " <th></th>\n",
73
+ " <th>x1</th>\n",
74
+ " <th>x2</th>\n",
75
+ " </tr>\n",
76
+ " </thead>\n",
77
+ " <tbody>\n",
78
+ " <tr>\n",
79
+ " <th>0</th>\n",
80
+ " <td>2.5</td>\n",
81
+ " <td>2.4</td>\n",
82
+ " </tr>\n",
83
+ " <tr>\n",
84
+ " <th>1</th>\n",
85
+ " <td>0.5</td>\n",
86
+ " <td>0.7</td>\n",
87
+ " </tr>\n",
88
+ " <tr>\n",
89
+ " <th>2</th>\n",
90
+ " <td>2.2</td>\n",
91
+ " <td>2.9</td>\n",
92
+ " </tr>\n",
93
+ " <tr>\n",
94
+ " <th>3</th>\n",
95
+ " <td>1.9</td>\n",
96
+ " <td>2.2</td>\n",
97
+ " </tr>\n",
98
+ " <tr>\n",
99
+ " <th>4</th>\n",
100
+ " <td>3.1</td>\n",
101
+ " <td>3.0</td>\n",
102
+ " </tr>\n",
103
+ " <tr>\n",
104
+ " <th>5</th>\n",
105
+ " <td>2.3</td>\n",
106
+ " <td>2.7</td>\n",
107
+ " </tr>\n",
108
+ " <tr>\n",
109
+ " <th>6</th>\n",
110
+ " <td>2.0</td>\n",
111
+ " <td>1.6</td>\n",
112
+ " </tr>\n",
113
+ " <tr>\n",
114
+ " <th>7</th>\n",
115
+ " <td>1.0</td>\n",
116
+ " <td>1.1</td>\n",
117
+ " </tr>\n",
118
+ " <tr>\n",
119
+ " <th>8</th>\n",
120
+ " <td>1.5</td>\n",
121
+ " <td>1.6</td>\n",
122
+ " </tr>\n",
123
+ " <tr>\n",
124
+ " <th>9</th>\n",
125
+ " <td>1.1</td>\n",
126
+ " <td>0.9</td>\n",
127
+ " </tr>\n",
128
+ " </tbody>\n",
129
+ "</table>\n",
130
+ "</div>"
131
+ ],
132
+ "text/plain": [
133
+ " x1 x2\n",
134
+ "0 2.5 2.4\n",
135
+ "1 0.5 0.7\n",
136
+ "2 2.2 2.9\n",
137
+ "3 1.9 2.2\n",
138
+ "4 3.1 3.0\n",
139
+ "5 2.3 2.7\n",
140
+ "6 2.0 1.6\n",
141
+ "7 1.0 1.1\n",
142
+ "8 1.5 1.6\n",
143
+ "9 1.1 0.9"
144
+ ]
145
+ },
146
+ "execution_count": 4,
147
+ "metadata": {},
148
+ "output_type": "execute_result"
149
+ }
150
+ ],
151
+ "source": [
152
+ "df"
153
+ ]
154
+ },
155
+ {
156
+ "cell_type": "code",
157
+ "execution_count": 9,
158
+ "id": "4936d72b",
159
+ "metadata": {},
160
+ "outputs": [
161
+ {
162
+ "data": {
163
+ "text/plain": [
164
+ "(10, 2)"
165
+ ]
166
+ },
167
+ "execution_count": 9,
168
+ "metadata": {},
169
+ "output_type": "execute_result"
170
+ }
171
+ ],
172
+ "source": [
173
+ "df.shape"
174
+ ]
175
+ },
176
+ {
177
+ "cell_type": "code",
178
+ "execution_count": 14,
179
+ "id": "c3d493bb",
180
+ "metadata": {},
181
+ "outputs": [
182
+ {
183
+ "name": "stdout",
184
+ "output_type": "stream",
185
+ "text": [
186
+ "<class 'pandas.core.frame.DataFrame'>\n"
187
+ ]
188
+ }
189
+ ],
190
+ "source": [
191
+ "print(type(df))"
192
+ ]
193
+ },
194
+ {
195
+ "cell_type": "code",
196
+ "execution_count": 5,
197
+ "id": "e071a809",
198
+ "metadata": {},
199
+ "outputs": [],
200
+ "source": [
201
+ "#for stderdizing the data with preprocessor class\n",
202
+ "from sklearn.preprocessing import StandardScaler"
203
+ ]
204
+ },
205
+ {
206
+ "cell_type": "code",
207
+ "execution_count": 7,
208
+ "id": "18b72826",
209
+ "metadata": {},
210
+ "outputs": [],
211
+ "source": [
212
+ "std_data=StandardScaler().fit_transform(df)"
213
+ ]
214
+ },
215
+ {
216
+ "cell_type": "code",
217
+ "execution_count": 10,
218
+ "id": "abad0bf1",
219
+ "metadata": {},
220
+ "outputs": [
221
+ {
222
+ "data": {
223
+ "text/plain": [
224
+ "(10, 2)"
225
+ ]
226
+ },
227
+ "execution_count": 10,
228
+ "metadata": {},
229
+ "output_type": "execute_result"
230
+ }
231
+ ],
232
+ "source": [
233
+ "std_data.shape"
234
+ ]
235
+ },
236
+ {
237
+ "cell_type": "code",
238
+ "execution_count": 8,
239
+ "id": "0bc25f21",
240
+ "metadata": {},
241
+ "outputs": [
242
+ {
243
+ "data": {
244
+ "text/plain": [
245
+ "array([[ 0.92627881, 0.61016865],\n",
246
+ " [-1.7585873 , -1.506743 ],\n",
247
+ " [ 0.52354889, 1.23278973],\n",
248
+ " [ 0.12081898, 0.36112022],\n",
249
+ " [ 1.73173864, 1.35731394],\n",
250
+ " [ 0.6577922 , 0.9837413 ],\n",
251
+ " [ 0.25506228, -0.38602507],\n",
252
+ " [-1.08737078, -1.00864614],\n",
253
+ " [-0.41615425, -0.38602507],\n",
254
+ " [-0.95312747, -1.25769457]])"
255
+ ]
256
+ },
257
+ "execution_count": 8,
258
+ "metadata": {},
259
+ "output_type": "execute_result"
260
+ }
261
+ ],
262
+ "source": [
263
+ "std_data"
264
+ ]
265
+ },
266
+ {
267
+ "cell_type": "code",
268
+ "execution_count": 15,
269
+ "id": "df9cca8c",
270
+ "metadata": {},
271
+ "outputs": [
272
+ {
273
+ "name": "stdout",
274
+ "output_type": "stream",
275
+ "text": [
276
+ "<class 'numpy.ndarray'>\n"
277
+ ]
278
+ }
279
+ ],
280
+ "source": [
281
+ "print(type(std_data))"
282
+ ]
283
+ },
284
+ {
285
+ "cell_type": "code",
286
+ "execution_count": 17,
287
+ "id": "555a8b94",
288
+ "metadata": {},
289
+ "outputs": [],
290
+ "source": [
291
+ "sample_sets=std_data\n",
292
+ "\n",
293
+ "co_data=np.matmul(sample_sets.T,sample_sets)"
294
+ ]
295
+ },
296
+ {
297
+ "cell_type": "code",
298
+ "execution_count": 18,
299
+ "id": "f16eb66b",
300
+ "metadata": {},
301
+ "outputs": [
302
+ {
303
+ "data": {
304
+ "text/plain": [
305
+ "array([[10. , 9.25929273],\n",
306
+ " [ 9.25929273, 10. ]])"
307
+ ]
308
+ },
309
+ "execution_count": 18,
310
+ "metadata": {},
311
+ "output_type": "execute_result"
312
+ }
313
+ ],
314
+ "source": [
315
+ "co_data"
316
+ ]
317
+ },
318
+ {
319
+ "cell_type": "code",
320
+ "execution_count": 19,
321
+ "id": "6f256d58",
322
+ "metadata": {},
323
+ "outputs": [
324
+ {
325
+ "data": {
326
+ "text/plain": [
327
+ "(2, 2)"
328
+ ]
329
+ },
330
+ "execution_count": 19,
331
+ "metadata": {},
332
+ "output_type": "execute_result"
333
+ }
334
+ ],
335
+ "source": [
336
+ "co_data.shape"
337
+ ]
338
+ },
339
+ {
340
+ "cell_type": "code",
341
+ "execution_count": 25,
342
+ "id": "81764c46",
343
+ "metadata": {},
344
+ "outputs": [],
345
+ "source": [
346
+ "from scipy.linalg import eigh \n",
347
+ "values, vectors = eigh(co_data, eigvals=(0,1))"
348
+ ]
349
+ },
350
+ {
351
+ "cell_type": "code",
352
+ "execution_count": 26,
353
+ "id": "42bb4049",
354
+ "metadata": {},
355
+ "outputs": [
356
+ {
357
+ "data": {
358
+ "text/plain": [
359
+ "array([ 0.74070727, 19.25929273])"
360
+ ]
361
+ },
362
+ "execution_count": 26,
363
+ "metadata": {},
364
+ "output_type": "execute_result"
365
+ }
366
+ ],
367
+ "source": [
368
+ "values"
369
+ ]
370
+ },
371
+ {
372
+ "cell_type": "code",
373
+ "execution_count": 27,
374
+ "id": "5aeea5cb",
375
+ "metadata": {},
376
+ "outputs": [
377
+ {
378
+ "data": {
379
+ "text/plain": [
380
+ "array([[-0.70710678, 0.70710678],\n",
381
+ " [ 0.70710678, 0.70710678]])"
382
+ ]
383
+ },
384
+ "execution_count": 27,
385
+ "metadata": {},
386
+ "output_type": "execute_result"
387
+ }
388
+ ],
389
+ "source": [
390
+ "vectors"
391
+ ]
392
+ },
393
+ {
394
+ "cell_type": "code",
395
+ "execution_count": 33,
396
+ "id": "8aa63112",
397
+ "metadata": {},
398
+ "outputs": [],
399
+ "source": [
400
+ "from sklearn import decomposition\n",
401
+ "pca = decomposition.PCA()\n",
402
+ "pca.n_components = 1\n",
403
+ "pca_data = pca.fit_transform(sample_sets)"
404
+ ]
405
+ },
406
+ {
407
+ "cell_type": "code",
408
+ "execution_count": 35,
409
+ "id": "2c690fcd",
410
+ "metadata": {},
411
+ "outputs": [
412
+ {
413
+ "data": {
414
+ "text/plain": [
415
+ "array([[-1.08643242],\n",
416
+ " [ 2.3089372 ],\n",
417
+ " [-1.24191895],\n",
418
+ " [-0.34078247],\n",
419
+ " [-2.18429003],\n",
420
+ " [-1.16073946],\n",
421
+ " [ 0.09260467],\n",
422
+ " [ 1.48210777],\n",
423
+ " [ 0.56722643],\n",
424
+ " [ 1.56328726]])"
425
+ ]
426
+ },
427
+ "execution_count": 35,
428
+ "metadata": {},
429
+ "output_type": "execute_result"
430
+ }
431
+ ],
432
+ "source": [
433
+ "pca_data"
434
+ ]
435
+ },
436
+ {
437
+ "cell_type": "code",
438
+ "execution_count": 36,
439
+ "id": "74d44bb1",
440
+ "metadata": {},
441
+ "outputs": [
442
+ {
443
+ "data": {
444
+ "text/plain": [
445
+ "(10, 1)"
446
+ ]
447
+ },
448
+ "execution_count": 36,
449
+ "metadata": {},
450
+ "output_type": "execute_result"
451
+ }
452
+ ],
453
+ "source": [
454
+ "pca_data.shape"
455
+ ]
456
+ },
457
+ {
458
+ "cell_type": "code",
459
+ "execution_count": 37,
460
+ "id": "106cb61b",
461
+ "metadata": {},
462
+ "outputs": [],
463
+ "source": [
464
+ "import matplotlib.pyplot as plt"
465
+ ]
466
+ },
467
+ {
468
+ "cell_type": "code",
469
+ "execution_count": 51,
470
+ "id": "d6d6c8f8",
471
+ "metadata": {},
472
+ "outputs": [
473
+ {
474
+ "name": "stderr",
475
+ "output_type": "stream",
476
+ "text": [
477
+ "No artists with labels found to put in legend. Note that artists whose label start with an underscore are ignored when legend() is called with no argument.\n"
478
+ ]
479
+ },
480
+ {
481
+ "data": {
482
+ "image/png": "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\n",
483
+ "text/plain": [
484
+ "<Figure size 432x288 with 1 Axes>"
485
+ ]
486
+ },
487
+ "metadata": {
488
+ "needs_background": "light"
489
+ },
490
+ "output_type": "display_data"
491
+ }
492
+ ],
493
+ "source": [
494
+ "plt.plot(df)\n",
495
+ "plt.plot(\"original data\")\n",
496
+ "plt.legend()\n",
497
+ "plt.show()"
498
+ ]
499
+ },
500
+ {
501
+ "cell_type": "code",
502
+ "execution_count": 50,
503
+ "id": "1940011f",
504
+ "metadata": {},
505
+ "outputs": [
506
+ {
507
+ "data": {
508
+ "image/png": "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\n",
509
+ "text/plain": [
510
+ "<Figure size 432x288 with 1 Axes>"
511
+ ]
512
+ },
513
+ "metadata": {
514
+ "needs_background": "light"
515
+ },
516
+ "output_type": "display_data"
517
+ }
518
+ ],
519
+ "source": [
520
+ "plt.plot(pca_data)\n",
521
+ "plt.title(\"after applying pca on data\")\n",
522
+ "plt.show()"
523
+ ]
524
+ },
525
+ {
526
+ "cell_type": "code",
527
+ "execution_count": null,
528
+ "id": "2efbfe65",
529
+ "metadata": {},
530
+ "outputs": [],
531
+ "source": []
532
+ },
533
+ {
534
+ "cell_type": "code",
535
+ "execution_count": null,
536
+ "id": "df88b872",
537
+ "metadata": {},
538
+ "outputs": [],
539
+ "source": []
540
+ }
541
+ ],
542
+ "metadata": {
543
+ "kernelspec": {
544
+ "display_name": "Python 3 (ipykernel)",
545
+ "language": "python",
546
+ "name": "python3"
547
+ },
548
+ "language_info": {
549
+ "codemirror_mode": {
550
+ "name": "ipython",
551
+ "version": 3
552
+ },
553
+ "file_extension": ".py",
554
+ "mimetype": "text/x-python",
555
+ "name": "python",
556
+ "nbconvert_exporter": "python",
557
+ "pygments_lexer": "ipython3",
558
+ "version": "3.9.12"
559
+ }
560
+ },
561
+ "nbformat": 4,
562
+ "nbformat_minor": 5
563
+ }