├── .gitattributes
├── Data PreProcessing
├── Data PreProcessing.ipynb
├── Students_marks.csv
└── data.csv
├── Frequency Distribution
└── Frequency Distribution.ipynb
├── Inferential Stats
├── 1 way Anova.ipynb
├── 2 way Anova.ipynb
├── Central Limit Theorem.ipynb
├── Chi square.ipynb
├── Confidence Interval.ipynb
├── T-Test.ipynb
├── Z test.ipynb
└── sampling.ipynb
├── Measure of Central Tendency
└── Measure of central Tendency.ipynb
├── Measure of Dispersion
└── Measure of Dispersion.ipynb
├── Measure of Shape
└── Measure of Shape.ipynb
└── README.md
/.gitattributes:
--------------------------------------------------------------------------------
1 | # Auto detect text files and perform LF normalization
2 | * text=auto
3 |
--------------------------------------------------------------------------------
/Data PreProcessing/Data PreProcessing.ipynb:
--------------------------------------------------------------------------------
1 | {
2 | "cells": [
3 | {
4 | "cell_type": "code",
5 | "execution_count": 1,
6 | "id": "6c811ddb",
7 | "metadata": {},
8 | "outputs": [],
9 | "source": [
10 | "import numpy as np\n",
11 | "import pandas as pd\n",
12 | "from matplotlib import pyplot as plt"
13 | ]
14 | },
15 | {
16 | "cell_type": "code",
17 | "execution_count": 9,
18 | "id": "278a0f03",
19 | "metadata": {},
20 | "outputs": [],
21 | "source": [
22 | "data = pd.read_csv(\"Students_marks.csv\")"
23 | ]
24 | },
25 | {
26 | "cell_type": "code",
27 | "execution_count": 10,
28 | "id": "5ab8e338",
29 | "metadata": {},
30 | "outputs": [
31 | {
32 | "data": {
33 | "text/html": [
34 | "
\n",
35 | "\n",
48 | "
\n",
49 | " \n",
50 | " \n",
51 | " | \n",
52 | " Roll No. | \n",
53 | " Name | \n",
54 | " Data Structure | \n",
55 | " Mathematics | \n",
56 | " Operating System | \n",
57 | "
\n",
58 | " \n",
59 | " \n",
60 | " \n",
61 | " 0 | \n",
62 | " 1 | \n",
63 | " Avneet | \n",
64 | " 25 | \n",
65 | " 19 | \n",
66 | " 17 | \n",
67 | "
\n",
68 | " \n",
69 | " 1 | \n",
70 | " 2 | \n",
71 | " Jay | \n",
72 | " 23 | \n",
73 | " 21 | \n",
74 | " 14 | \n",
75 | "
\n",
76 | " \n",
77 | " 2 | \n",
78 | " 3 | \n",
79 | " Sadaf | \n",
80 | " 28 | \n",
81 | " 23 | \n",
82 | " 21 | \n",
83 | "
\n",
84 | " \n",
85 | " 3 | \n",
86 | " 4 | \n",
87 | " Prakash | \n",
88 | " 21 | \n",
89 | " 27 | \n",
90 | " 25 | \n",
91 | "
\n",
92 | " \n",
93 | " 4 | \n",
94 | " 5 | \n",
95 | " Sarita | \n",
96 | " 23 | \n",
97 | " 22 | \n",
98 | " 9 | \n",
99 | "
\n",
100 | " \n",
101 | "
\n",
102 | "
"
103 | ],
104 | "text/plain": [
105 | " Roll No. Name Data Structure Mathematics Operating System\n",
106 | "0 1 Avneet 25 19 17\n",
107 | "1 2 Jay 23 21 14\n",
108 | "2 3 Sadaf 28 23 21\n",
109 | "3 4 Prakash 21 27 25\n",
110 | "4 5 Sarita 23 22 9"
111 | ]
112 | },
113 | "execution_count": 10,
114 | "metadata": {},
115 | "output_type": "execute_result"
116 | }
117 | ],
118 | "source": [
119 | "data.head()"
120 | ]
121 | },
122 | {
123 | "cell_type": "code",
124 | "execution_count": 11,
125 | "id": "8a521628",
126 | "metadata": {},
127 | "outputs": [
128 | {
129 | "data": {
130 | "text/html": [
131 | "\n",
132 | "\n",
145 | "
\n",
146 | " \n",
147 | " \n",
148 | " | \n",
149 | " Roll No. | \n",
150 | " Data Structure | \n",
151 | " Mathematics | \n",
152 | " Operating System | \n",
153 | "
\n",
154 | " \n",
155 | " \n",
156 | " \n",
157 | " count | \n",
158 | " 10.00000 | \n",
159 | " 10.000000 | \n",
160 | " 10.00000 | \n",
161 | " 10.00000 | \n",
162 | "
\n",
163 | " \n",
164 | " mean | \n",
165 | " 5.50000 | \n",
166 | " 40.700000 | \n",
167 | " 23.10000 | \n",
168 | " 19.90000 | \n",
169 | "
\n",
170 | " \n",
171 | " std | \n",
172 | " 3.02765 | \n",
173 | " 52.493492 | \n",
174 | " 3.60401 | \n",
175 | " 5.95259 | \n",
176 | "
\n",
177 | " \n",
178 | " min | \n",
179 | " 1.00000 | \n",
180 | " 21.000000 | \n",
181 | " 18.00000 | \n",
182 | " 9.00000 | \n",
183 | "
\n",
184 | " \n",
185 | " 25% | \n",
186 | " 3.25000 | \n",
187 | " 23.000000 | \n",
188 | " 21.25000 | \n",
189 | " 15.50000 | \n",
190 | "
\n",
191 | " \n",
192 | " 50% | \n",
193 | " 5.50000 | \n",
194 | " 24.000000 | \n",
195 | " 22.50000 | \n",
196 | " 21.50000 | \n",
197 | "
\n",
198 | " \n",
199 | " 75% | \n",
200 | " 7.75000 | \n",
201 | " 25.750000 | \n",
202 | " 24.75000 | \n",
203 | " 24.50000 | \n",
204 | "
\n",
205 | " \n",
206 | " max | \n",
207 | " 10.00000 | \n",
208 | " 190.000000 | \n",
209 | " 30.00000 | \n",
210 | " 28.00000 | \n",
211 | "
\n",
212 | " \n",
213 | "
\n",
214 | "
"
215 | ],
216 | "text/plain": [
217 | " Roll No. Data Structure Mathematics Operating System\n",
218 | "count 10.00000 10.000000 10.00000 10.00000\n",
219 | "mean 5.50000 40.700000 23.10000 19.90000\n",
220 | "std 3.02765 52.493492 3.60401 5.95259\n",
221 | "min 1.00000 21.000000 18.00000 9.00000\n",
222 | "25% 3.25000 23.000000 21.25000 15.50000\n",
223 | "50% 5.50000 24.000000 22.50000 21.50000\n",
224 | "75% 7.75000 25.750000 24.75000 24.50000\n",
225 | "max 10.00000 190.000000 30.00000 28.00000"
226 | ]
227 | },
228 | "execution_count": 11,
229 | "metadata": {},
230 | "output_type": "execute_result"
231 | }
232 | ],
233 | "source": [
234 | "data.describe()"
235 | ]
236 | },
237 | {
238 | "cell_type": "code",
239 | "execution_count": 12,
240 | "id": "6c586532",
241 | "metadata": {},
242 | "outputs": [
243 | {
244 | "data": {
245 | "text/html": [
246 | "\n",
247 | "\n",
260 | "
\n",
261 | " \n",
262 | " \n",
263 | " | \n",
264 | " Roll No. | \n",
265 | " Name | \n",
266 | " Data Structure | \n",
267 | " Mathematics | \n",
268 | " Operating System | \n",
269 | "
\n",
270 | " \n",
271 | " \n",
272 | " \n",
273 | " 0 | \n",
274 | " 1 | \n",
275 | " Avneet | \n",
276 | " 25 | \n",
277 | " 19 | \n",
278 | " 17 | \n",
279 | "
\n",
280 | " \n",
281 | " 1 | \n",
282 | " 2 | \n",
283 | " Jay | \n",
284 | " 23 | \n",
285 | " 21 | \n",
286 | " 14 | \n",
287 | "
\n",
288 | " \n",
289 | " 2 | \n",
290 | " 3 | \n",
291 | " Sadaf | \n",
292 | " 28 | \n",
293 | " 23 | \n",
294 | " 21 | \n",
295 | "
\n",
296 | " \n",
297 | " 3 | \n",
298 | " 4 | \n",
299 | " Prakash | \n",
300 | " 21 | \n",
301 | " 27 | \n",
302 | " 25 | \n",
303 | "
\n",
304 | " \n",
305 | " 4 | \n",
306 | " 5 | \n",
307 | " Sarita | \n",
308 | " 23 | \n",
309 | " 22 | \n",
310 | " 9 | \n",
311 | "
\n",
312 | " \n",
313 | " 5 | \n",
314 | " 6 | \n",
315 | " Vasudha | \n",
316 | " 190 | \n",
317 | " 30 | \n",
318 | " 28 | \n",
319 | "
\n",
320 | " \n",
321 | " 6 | \n",
322 | " 7 | \n",
323 | " Ankur | \n",
324 | " 24 | \n",
325 | " 24 | \n",
326 | " 22 | \n",
327 | "
\n",
328 | " \n",
329 | " 7 | \n",
330 | " 8 | \n",
331 | " Laksh | \n",
332 | " 26 | \n",
333 | " 25 | \n",
334 | " 23 | \n",
335 | "
\n",
336 | " \n",
337 | " 8 | \n",
338 | " 9 | \n",
339 | " Aman | \n",
340 | " 23 | \n",
341 | " 18 | \n",
342 | " 25 | \n",
343 | "
\n",
344 | " \n",
345 | " 9 | \n",
346 | " 10 | \n",
347 | " Rajat | \n",
348 | " 24 | \n",
349 | " 22 | \n",
350 | " 15 | \n",
351 | "
\n",
352 | " \n",
353 | "
\n",
354 | "
"
355 | ],
356 | "text/plain": [
357 | " Roll No. Name Data Structure Mathematics Operating System\n",
358 | "0 1 Avneet 25 19 17\n",
359 | "1 2 Jay 23 21 14\n",
360 | "2 3 Sadaf 28 23 21\n",
361 | "3 4 Prakash 21 27 25\n",
362 | "4 5 Sarita 23 22 9\n",
363 | "5 6 Vasudha 190 30 28\n",
364 | "6 7 Ankur 24 24 22\n",
365 | "7 8 Laksh 26 25 23\n",
366 | "8 9 Aman 23 18 25\n",
367 | "9 10 Rajat 24 22 15"
368 | ]
369 | },
370 | "execution_count": 12,
371 | "metadata": {},
372 | "output_type": "execute_result"
373 | }
374 | ],
375 | "source": [
376 | "data"
377 | ]
378 | },
379 | {
380 | "cell_type": "code",
381 | "execution_count": 13,
382 | "id": "333311d2",
383 | "metadata": {},
384 | "outputs": [],
385 | "source": [
386 | "data.drop(index = 5, axis = 1, inplace = True)"
387 | ]
388 | },
389 | {
390 | "cell_type": "code",
391 | "execution_count": 14,
392 | "id": "854dc7d4",
393 | "metadata": {},
394 | "outputs": [
395 | {
396 | "data": {
397 | "text/html": [
398 | "\n",
399 | "\n",
412 | "
\n",
413 | " \n",
414 | " \n",
415 | " | \n",
416 | " Roll No. | \n",
417 | " Data Structure | \n",
418 | " Mathematics | \n",
419 | " Operating System | \n",
420 | "
\n",
421 | " \n",
422 | " \n",
423 | " \n",
424 | " count | \n",
425 | " 9.000000 | \n",
426 | " 9.000000 | \n",
427 | " 9.000000 | \n",
428 | " 9.000000 | \n",
429 | "
\n",
430 | " \n",
431 | " mean | \n",
432 | " 5.444444 | \n",
433 | " 24.111111 | \n",
434 | " 22.333333 | \n",
435 | " 19.000000 | \n",
436 | "
\n",
437 | " \n",
438 | " std | \n",
439 | " 3.205897 | \n",
440 | " 2.027588 | \n",
441 | " 2.828427 | \n",
442 | " 5.545268 | \n",
443 | "
\n",
444 | " \n",
445 | " min | \n",
446 | " 1.000000 | \n",
447 | " 21.000000 | \n",
448 | " 18.000000 | \n",
449 | " 9.000000 | \n",
450 | "
\n",
451 | " \n",
452 | " 25% | \n",
453 | " 3.000000 | \n",
454 | " 23.000000 | \n",
455 | " 21.000000 | \n",
456 | " 15.000000 | \n",
457 | "
\n",
458 | " \n",
459 | " 50% | \n",
460 | " 5.000000 | \n",
461 | " 24.000000 | \n",
462 | " 22.000000 | \n",
463 | " 21.000000 | \n",
464 | "
\n",
465 | " \n",
466 | " 75% | \n",
467 | " 8.000000 | \n",
468 | " 25.000000 | \n",
469 | " 24.000000 | \n",
470 | " 23.000000 | \n",
471 | "
\n",
472 | " \n",
473 | " max | \n",
474 | " 10.000000 | \n",
475 | " 28.000000 | \n",
476 | " 27.000000 | \n",
477 | " 25.000000 | \n",
478 | "
\n",
479 | " \n",
480 | "
\n",
481 | "
"
482 | ],
483 | "text/plain": [
484 | " Roll No. Data Structure Mathematics Operating System\n",
485 | "count 9.000000 9.000000 9.000000 9.000000\n",
486 | "mean 5.444444 24.111111 22.333333 19.000000\n",
487 | "std 3.205897 2.027588 2.828427 5.545268\n",
488 | "min 1.000000 21.000000 18.000000 9.000000\n",
489 | "25% 3.000000 23.000000 21.000000 15.000000\n",
490 | "50% 5.000000 24.000000 22.000000 21.000000\n",
491 | "75% 8.000000 25.000000 24.000000 23.000000\n",
492 | "max 10.000000 28.000000 27.000000 25.000000"
493 | ]
494 | },
495 | "execution_count": 14,
496 | "metadata": {},
497 | "output_type": "execute_result"
498 | }
499 | ],
500 | "source": [
501 | "data.describe()"
502 | ]
503 | },
504 | {
505 | "cell_type": "code",
506 | "execution_count": 15,
507 | "id": "7beb46ac",
508 | "metadata": {},
509 | "outputs": [
510 | {
511 | "data": {
512 | "image/png": "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\n",
513 | "text/plain": [
514 | ""
515 | ]
516 | },
517 | "metadata": {},
518 | "output_type": "display_data"
519 | }
520 | ],
521 | "source": [
522 | "plt.plot(data[\"Name\"], data[\"Data Structure\"])\n",
523 | "plt.title(\"Marks of students in Data Structure\")\n",
524 | "plt.xlabel(\"Students Name\")\n",
525 | "plt.ylabel(\"Students Marks\")\n",
526 | "plt.show()"
527 | ]
528 | },
529 | {
530 | "cell_type": "code",
531 | "execution_count": null,
532 | "id": "11598e89",
533 | "metadata": {},
534 | "outputs": [],
535 | "source": []
536 | }
537 | ],
538 | "metadata": {
539 | "kernelspec": {
540 | "display_name": "Python 3 (ipykernel)",
541 | "language": "python",
542 | "name": "python3"
543 | },
544 | "language_info": {
545 | "codemirror_mode": {
546 | "name": "ipython",
547 | "version": 3
548 | },
549 | "file_extension": ".py",
550 | "mimetype": "text/x-python",
551 | "name": "python",
552 | "nbconvert_exporter": "python",
553 | "pygments_lexer": "ipython3",
554 | "version": "3.11.1"
555 | }
556 | },
557 | "nbformat": 4,
558 | "nbformat_minor": 5
559 | }
560 |
--------------------------------------------------------------------------------
/Data PreProcessing/Students_marks.csv:
--------------------------------------------------------------------------------
1 | Roll No.,Name,Gender,Data Structure,Mathematics,Operating System,Average marks,Ranking
2 | 1,Avneet ,F,25,19,17,20.33,Good
3 | 2,Jay,M,23,21,14,19.33,Okay
4 | 3,Sadaf ,F,28,23,21,24,Good
5 | 4,Prakash,M,21,27,28,25.33,Very Good
6 | 5,Sarita,F,23,22,9,18,Okay
7 | 6,Vasudha,F,190,30,28,82.66,Very Good
8 | 7,Ankur,M,24,24,22,23.33,Good
9 | 8,Laksh,M,26,25,27,26,Very Good
10 | 9,Aman,M,23,18,25,22,Good
11 | 10,Rajat,M,24,22,15,20.33,Good
12 |
--------------------------------------------------------------------------------
/Inferential Stats/1 way Anova.ipynb:
--------------------------------------------------------------------------------
1 | {
2 | "cells": [
3 | {
4 | "cell_type": "code",
5 | "execution_count": 2,
6 | "id": "0b714302",
7 | "metadata": {},
8 | "outputs": [],
9 | "source": [
10 | "from scipy.stats import f_oneway"
11 | ]
12 | },
13 | {
14 | "cell_type": "markdown",
15 | "id": "d478a556",
16 | "metadata": {},
17 | "source": [
18 | "Performance when each of the engine with different types of oil is applied"
19 | ]
20 | },
21 | {
22 | "cell_type": "code",
23 | "execution_count": 3,
24 | "id": "404662ec",
25 | "metadata": {},
26 | "outputs": [],
27 | "source": [
28 | "performance1 = [89, 89, 88, 78, 79]\n",
29 | "performance2 = [93, 92, 94, 89, 88]\n",
30 | "performance3 = [89, 88, 89, 93, 90]\n",
31 | "performance4 = [81, 78, 81, 92, 82]"
32 | ]
33 | },
34 | {
35 | "cell_type": "code",
36 | "execution_count": 4,
37 | "id": "7bcd5b60",
38 | "metadata": {},
39 | "outputs": [],
40 | "source": [
41 | "alpha = 0.05"
42 | ]
43 | },
44 | {
45 | "cell_type": "code",
46 | "execution_count": 5,
47 | "id": "97b31724",
48 | "metadata": {},
49 | "outputs": [],
50 | "source": [
51 | "stat, pvalue = f_oneway(performance1, performance2, performance3, performance4)"
52 | ]
53 | },
54 | {
55 | "cell_type": "code",
56 | "execution_count": 6,
57 | "id": "4fc90cd7",
58 | "metadata": {},
59 | "outputs": [
60 | {
61 | "data": {
62 | "text/plain": [
63 | "(4.625000000000002, 0.01633645983978022)"
64 | ]
65 | },
66 | "execution_count": 6,
67 | "metadata": {},
68 | "output_type": "execute_result"
69 | }
70 | ],
71 | "source": [
72 | "stat, pvalue"
73 | ]
74 | },
75 | {
76 | "cell_type": "code",
77 | "execution_count": 7,
78 | "id": "10af033d",
79 | "metadata": {},
80 | "outputs": [
81 | {
82 | "name": "stdout",
83 | "output_type": "stream",
84 | "text": [
85 | "Reject the null Hypothesis\n"
86 | ]
87 | }
88 | ],
89 | "source": [
90 | "if(pvalue\n",
50 | "\n",
63 | "\n",
64 | " \n",
65 | " \n",
66 | " | \n",
67 | " Fertilizer | \n",
68 | " Watering | \n",
69 | " height | \n",
70 | "
\n",
71 | " \n",
72 | " \n",
73 | " \n",
74 | " 0 | \n",
75 | " daily | \n",
76 | " daily | \n",
77 | " 14 | \n",
78 | "
\n",
79 | " \n",
80 | " 1 | \n",
81 | " daily | \n",
82 | " daily | \n",
83 | " 16 | \n",
84 | "
\n",
85 | " \n",
86 | " 2 | \n",
87 | " daily | \n",
88 | " daily | \n",
89 | " 15 | \n",
90 | "
\n",
91 | " \n",
92 | " 3 | \n",
93 | " daily | \n",
94 | " daily | \n",
95 | " 15 | \n",
96 | "
\n",
97 | " \n",
98 | " 4 | \n",
99 | " daily | \n",
100 | " daily | \n",
101 | " 16 | \n",
102 | "
\n",
103 | " \n",
104 | " 5 | \n",
105 | " daily | \n",
106 | " daily | \n",
107 | " 13 | \n",
108 | "
\n",
109 | " \n",
110 | " 6 | \n",
111 | " daily | \n",
112 | " daily | \n",
113 | " 12 | \n",
114 | "
\n",
115 | " \n",
116 | " 7 | \n",
117 | " daily | \n",
118 | " daily | \n",
119 | " 11 | \n",
120 | "
\n",
121 | " \n",
122 | " 8 | \n",
123 | " daily | \n",
124 | " daily | \n",
125 | " 14 | \n",
126 | "
\n",
127 | " \n",
128 | " 9 | \n",
129 | " daily | \n",
130 | " daily | \n",
131 | " 15 | \n",
132 | "
\n",
133 | " \n",
134 | " 10 | \n",
135 | " daily | \n",
136 | " daily | \n",
137 | " 16 | \n",
138 | "
\n",
139 | " \n",
140 | " 11 | \n",
141 | " daily | \n",
142 | " daily | \n",
143 | " 16 | \n",
144 | "
\n",
145 | " \n",
146 | " 12 | \n",
147 | " daily | \n",
148 | " daily | \n",
149 | " 17 | \n",
150 | "
\n",
151 | " \n",
152 | " 13 | \n",
153 | " daily | \n",
154 | " daily | \n",
155 | " 18 | \n",
156 | "
\n",
157 | " \n",
158 | " 14 | \n",
159 | " daily | \n",
160 | " daily | \n",
161 | " 14 | \n",
162 | "
\n",
163 | " \n",
164 | " 15 | \n",
165 | " weekly | \n",
166 | " weekly | \n",
167 | " 13 | \n",
168 | "
\n",
169 | " \n",
170 | " 16 | \n",
171 | " weekly | \n",
172 | " weekly | \n",
173 | " 14 | \n",
174 | "
\n",
175 | " \n",
176 | " 17 | \n",
177 | " weekly | \n",
178 | " weekly | \n",
179 | " 14 | \n",
180 | "
\n",
181 | " \n",
182 | " 18 | \n",
183 | " weekly | \n",
184 | " weekly | \n",
185 | " 14 | \n",
186 | "
\n",
187 | " \n",
188 | " 19 | \n",
189 | " weekly | \n",
190 | " weekly | \n",
191 | " 15 | \n",
192 | "
\n",
193 | " \n",
194 | " 20 | \n",
195 | " weekly | \n",
196 | " weekly | \n",
197 | " 16 | \n",
198 | "
\n",
199 | " \n",
200 | " 21 | \n",
201 | " weekly | \n",
202 | " weekly | \n",
203 | " 16 | \n",
204 | "
\n",
205 | " \n",
206 | " 22 | \n",
207 | " weekly | \n",
208 | " weekly | \n",
209 | " 17 | \n",
210 | "
\n",
211 | " \n",
212 | " 23 | \n",
213 | " weekly | \n",
214 | " weekly | \n",
215 | " 18 | \n",
216 | "
\n",
217 | " \n",
218 | " 24 | \n",
219 | " weekly | \n",
220 | " weekly | \n",
221 | " 14 | \n",
222 | "
\n",
223 | " \n",
224 | " 25 | \n",
225 | " weekly | \n",
226 | " weekly | \n",
227 | " 13 | \n",
228 | "
\n",
229 | " \n",
230 | " 26 | \n",
231 | " weekly | \n",
232 | " weekly | \n",
233 | " 14 | \n",
234 | "
\n",
235 | " \n",
236 | " 27 | \n",
237 | " weekly | \n",
238 | " weekly | \n",
239 | " 14 | \n",
240 | "
\n",
241 | " \n",
242 | " 28 | \n",
243 | " weekly | \n",
244 | " weekly | \n",
245 | " 14 | \n",
246 | "
\n",
247 | " \n",
248 | " 29 | \n",
249 | " weekly | \n",
250 | " weekly | \n",
251 | " 15 | \n",
252 | "
\n",
253 | " \n",
254 | "
\n",
255 | ""
256 | ],
257 | "text/plain": [
258 | " Fertilizer Watering height\n",
259 | "0 daily daily 14\n",
260 | "1 daily daily 16\n",
261 | "2 daily daily 15\n",
262 | "3 daily daily 15\n",
263 | "4 daily daily 16\n",
264 | "5 daily daily 13\n",
265 | "6 daily daily 12\n",
266 | "7 daily daily 11\n",
267 | "8 daily daily 14\n",
268 | "9 daily daily 15\n",
269 | "10 daily daily 16\n",
270 | "11 daily daily 16\n",
271 | "12 daily daily 17\n",
272 | "13 daily daily 18\n",
273 | "14 daily daily 14\n",
274 | "15 weekly weekly 13\n",
275 | "16 weekly weekly 14\n",
276 | "17 weekly weekly 14\n",
277 | "18 weekly weekly 14\n",
278 | "19 weekly weekly 15\n",
279 | "20 weekly weekly 16\n",
280 | "21 weekly weekly 16\n",
281 | "22 weekly weekly 17\n",
282 | "23 weekly weekly 18\n",
283 | "24 weekly weekly 14\n",
284 | "25 weekly weekly 13\n",
285 | "26 weekly weekly 14\n",
286 | "27 weekly weekly 14\n",
287 | "28 weekly weekly 14\n",
288 | "29 weekly weekly 15"
289 | ]
290 | },
291 | "execution_count": 5,
292 | "metadata": {},
293 | "output_type": "execute_result"
294 | }
295 | ],
296 | "source": [
297 | "dataframe"
298 | ]
299 | },
300 | {
301 | "cell_type": "code",
302 | "execution_count": 6,
303 | "id": "1e8e9f32",
304 | "metadata": {
305 | "scrolled": true
306 | },
307 | "outputs": [
308 | {
309 | "name": "stdout",
310 | "output_type": "stream",
311 | "text": [
312 | " df sum_sq mean_sq F PR(>F)\n",
313 | "Fertilizer 1.0 0.033333 0.033333 0.012069 0.913305\n",
314 | "Watering 1.0 0.000369 0.000369 0.000133 0.990865\n",
315 | "Fertilizer:Watering 1.0 0.040866 0.040866 0.014796 0.904053\n",
316 | "Residual 28.0 77.333333 2.761905 NaN NaN\n"
317 | ]
318 | }
319 | ],
320 | "source": [
321 | "model = ols('height ~ Fertilizer + Watering + Fertilizer : Watering', data=dataframe).fit()\n",
322 | "\n",
323 | "result = sm.stats.anova_lm(model, type=2)\n",
324 | "\n",
325 | "print(result)"
326 | ]
327 | },
328 | {
329 | "cell_type": "code",
330 | "execution_count": 7,
331 | "id": "df431b57",
332 | "metadata": {},
333 | "outputs": [],
334 | "source": [
335 | "model = ols('height ~ Fertilizer + Watering + Fertilizer : Watering', data=dataframe)"
336 | ]
337 | },
338 | {
339 | "cell_type": "code",
340 | "execution_count": null,
341 | "id": "7b2c4b74",
342 | "metadata": {},
343 | "outputs": [],
344 | "source": []
345 | },
346 | {
347 | "cell_type": "markdown",
348 | "id": "84203d6d",
349 | "metadata": {},
350 | "source": []
351 | }
352 | ],
353 | "metadata": {
354 | "kernelspec": {
355 | "display_name": "Python 3 (ipykernel)",
356 | "language": "python",
357 | "name": "python3"
358 | },
359 | "language_info": {
360 | "codemirror_mode": {
361 | "name": "ipython",
362 | "version": 3
363 | },
364 | "file_extension": ".py",
365 | "mimetype": "text/x-python",
366 | "name": "python",
367 | "nbconvert_exporter": "python",
368 | "pygments_lexer": "ipython3",
369 | "version": "3.11.1"
370 | }
371 | },
372 | "nbformat": 4,
373 | "nbformat_minor": 5
374 | }
375 |
--------------------------------------------------------------------------------
/Inferential Stats/Chi square.ipynb:
--------------------------------------------------------------------------------
1 | {
2 | "cells": [
3 | {
4 | "cell_type": "code",
5 | "execution_count": 3,
6 | "id": "02740abc",
7 | "metadata": {},
8 | "outputs": [],
9 | "source": [
10 | "from scipy.stats import chisquare"
11 | ]
12 | },
13 | {
14 | "cell_type": "code",
15 | "execution_count": 4,
16 | "id": "71b74700",
17 | "metadata": {},
18 | "outputs": [],
19 | "source": [
20 | "chi_square, pvalue =chisquare([48,24,24])"
21 | ]
22 | },
23 | {
24 | "cell_type": "code",
25 | "execution_count": 5,
26 | "id": "84c64655",
27 | "metadata": {},
28 | "outputs": [
29 | {
30 | "data": {
31 | "text/plain": [
32 | "(12.0, 0.002478752176666357)"
33 | ]
34 | },
35 | "execution_count": 5,
36 | "metadata": {},
37 | "output_type": "execute_result"
38 | }
39 | ],
40 | "source": [
41 | "chi_square, pvalue"
42 | ]
43 | },
44 | {
45 | "cell_type": "code",
46 | "execution_count": 6,
47 | "id": "6a2a14fc",
48 | "metadata": {},
49 | "outputs": [],
50 | "source": [
51 | "alpha = 0.01"
52 | ]
53 | },
54 | {
55 | "cell_type": "code",
56 | "execution_count": 7,
57 | "id": "50878e4d",
58 | "metadata": {},
59 | "outputs": [
60 | {
61 | "name": "stdout",
62 | "output_type": "stream",
63 | "text": [
64 | "Dependent (reject H0)\n"
65 | ]
66 | }
67 | ],
68 | "source": [
69 | "if (pvalue < alpha):\n",
70 | " print('Dependent (reject H0)')\n",
71 | "else:\n",
72 | " print('Independent (H0 holds true)')"
73 | ]
74 | },
75 | {
76 | "cell_type": "code",
77 | "execution_count": 8,
78 | "id": "45ae954c",
79 | "metadata": {},
80 | "outputs": [],
81 | "source": [
82 | "chi_square, pvalue =chisquare([5,9,13,7,6])"
83 | ]
84 | },
85 | {
86 | "cell_type": "code",
87 | "execution_count": 9,
88 | "id": "3f39a87a",
89 | "metadata": {},
90 | "outputs": [
91 | {
92 | "data": {
93 | "text/plain": [
94 | "(5.0, 0.2872974951836458)"
95 | ]
96 | },
97 | "execution_count": 9,
98 | "metadata": {},
99 | "output_type": "execute_result"
100 | }
101 | ],
102 | "source": [
103 | "chi_square, pvalue "
104 | ]
105 | },
106 | {
107 | "cell_type": "code",
108 | "execution_count": 10,
109 | "id": "ab7d9ec5",
110 | "metadata": {},
111 | "outputs": [],
112 | "source": [
113 | "alpha = 0.05"
114 | ]
115 | },
116 | {
117 | "cell_type": "code",
118 | "execution_count": 11,
119 | "id": "aaa915fe",
120 | "metadata": {},
121 | "outputs": [
122 | {
123 | "name": "stdout",
124 | "output_type": "stream",
125 | "text": [
126 | "Independent (H0 holds true)\n"
127 | ]
128 | }
129 | ],
130 | "source": [
131 | "if (pvalue < alpha):\n",
132 | " print('Dependent (reject H0)')\n",
133 | "else:\n",
134 | " print('Independent (H0 holds true)')"
135 | ]
136 | },
137 | {
138 | "cell_type": "code",
139 | "execution_count": 12,
140 | "id": "fbc6caf9",
141 | "metadata": {},
142 | "outputs": [],
143 | "source": [
144 | "from scipy.stats import chi2_contingency"
145 | ]
146 | },
147 | {
148 | "cell_type": "code",
149 | "execution_count": 13,
150 | "id": "0b7dab21",
151 | "metadata": {},
152 | "outputs": [],
153 | "source": [
154 | "data = [[207,282,241],[234,242,232]]"
155 | ]
156 | },
157 | {
158 | "cell_type": "code",
159 | "execution_count": 14,
160 | "id": "30162d0c",
161 | "metadata": {},
162 | "outputs": [],
163 | "source": [
164 | "stat, pvalue,dof,exp_freq =chi2_contingency(data)"
165 | ]
166 | },
167 | {
168 | "cell_type": "code",
169 | "execution_count": 16,
170 | "id": "e182b164",
171 | "metadata": {
172 | "scrolled": true
173 | },
174 | "outputs": [
175 | {
176 | "data": {
177 | "text/plain": [
178 | "(4.542228269825232,\n",
179 | " 0.10319714047309392,\n",
180 | " 2,\n",
181 | " array([[223.87343533, 266.00834492, 240.11821975],\n",
182 | " [217.12656467, 257.99165508, 232.88178025]]))"
183 | ]
184 | },
185 | "execution_count": 16,
186 | "metadata": {},
187 | "output_type": "execute_result"
188 | }
189 | ],
190 | "source": [
191 | "stat, pvalue,dof,exp_freq"
192 | ]
193 | },
194 | {
195 | "cell_type": "code",
196 | "execution_count": 15,
197 | "id": "d6d97824",
198 | "metadata": {},
199 | "outputs": [],
200 | "source": [
201 | "outlook_data = [[2,3],[4,0],[3,2]]"
202 | ]
203 | },
204 | {
205 | "cell_type": "code",
206 | "execution_count": 16,
207 | "id": "2e80f782",
208 | "metadata": {},
209 | "outputs": [
210 | {
211 | "data": {
212 | "text/plain": [
213 | "Chi2ContingencyResult(statistic=3.546666666666666, pvalue=0.16976615743981124, dof=2, expected_freq=array([[3.21428571, 1.78571429],\n",
214 | " [2.57142857, 1.42857143],\n",
215 | " [3.21428571, 1.78571429]]))"
216 | ]
217 | },
218 | "execution_count": 16,
219 | "metadata": {},
220 | "output_type": "execute_result"
221 | }
222 | ],
223 | "source": [
224 | "chi2_contingency(outlook_data)"
225 | ]
226 | },
227 | {
228 | "cell_type": "code",
229 | "execution_count": 18,
230 | "id": "5ae0c20a",
231 | "metadata": {},
232 | "outputs": [],
233 | "source": [
234 | "wind_data = [[3,3],[6,2]]"
235 | ]
236 | },
237 | {
238 | "cell_type": "code",
239 | "execution_count": 19,
240 | "id": "56b6f970",
241 | "metadata": {},
242 | "outputs": [
243 | {
244 | "data": {
245 | "text/plain": [
246 | "Chi2ContingencyResult(statistic=0.16203703703703703, pvalue=0.687287949348002, dof=1, expected_freq=array([[3.85714286, 2.14285714],\n",
247 | " [5.14285714, 2.85714286]]))"
248 | ]
249 | },
250 | "execution_count": 19,
251 | "metadata": {},
252 | "output_type": "execute_result"
253 | }
254 | ],
255 | "source": [
256 | "chi2_contingency(wind_data)"
257 | ]
258 | },
259 | {
260 | "cell_type": "code",
261 | "execution_count": 20,
262 | "id": "be05bdc3",
263 | "metadata": {},
264 | "outputs": [],
265 | "source": [
266 | "obs = [3,3,6,2]\n",
267 | "exp = [3.85714286, 2.14285714, 5.14285714, 2.85714286]"
268 | ]
269 | },
270 | {
271 | "cell_type": "code",
272 | "execution_count": 26,
273 | "id": "0f835729",
274 | "metadata": {},
275 | "outputs": [
276 | {
277 | "data": {
278 | "text/plain": [
279 | "Power_divergenceResult(statistic=0.9333333396938274, pvalue=0.8173771570701455)"
280 | ]
281 | },
282 | "execution_count": 26,
283 | "metadata": {},
284 | "output_type": "execute_result"
285 | }
286 | ],
287 | "source": [
288 | "chisquare (obs, exp)"
289 | ]
290 | },
291 | {
292 | "cell_type": "code",
293 | "execution_count": null,
294 | "id": "84d19fd6",
295 | "metadata": {},
296 | "outputs": [],
297 | "source": []
298 | }
299 | ],
300 | "metadata": {
301 | "kernelspec": {
302 | "display_name": "Python 3 (ipykernel)",
303 | "language": "python",
304 | "name": "python3"
305 | },
306 | "language_info": {
307 | "codemirror_mode": {
308 | "name": "ipython",
309 | "version": 3
310 | },
311 | "file_extension": ".py",
312 | "mimetype": "text/x-python",
313 | "name": "python",
314 | "nbconvert_exporter": "python",
315 | "pygments_lexer": "ipython3",
316 | "version": "3.11.1"
317 | }
318 | },
319 | "nbformat": 4,
320 | "nbformat_minor": 5
321 | }
322 |
--------------------------------------------------------------------------------
/Inferential Stats/Confidence Interval.ipynb:
--------------------------------------------------------------------------------
1 | {
2 | "cells": [
3 | {
4 | "cell_type": "markdown",
5 | "id": "11154bb4",
6 | "metadata": {},
7 | "source": [
8 | "Calculate the 90% confidence Intervals of the data set of size(n=20) using the t Distribution using the t.interval() function and passing the alpha parameter to 0.90 in the python."
9 | ]
10 | },
11 | {
12 | "cell_type": "code",
13 | "execution_count": 1,
14 | "id": "e3b00d78",
15 | "metadata": {},
16 | "outputs": [],
17 | "source": [
18 | "import numpy as np \n",
19 | "import scipy.stats as st "
20 | ]
21 | },
22 | {
23 | "cell_type": "code",
24 | "execution_count": 2,
25 | "id": "36f06ed1",
26 | "metadata": {},
27 | "outputs": [],
28 | "source": [
29 | "gfg_data = [1, 1, 1, 2, 2, 2, 3, 3, 3, 3, \n",
30 | " 3, 4, 4, 5, 5, 5, 6, 7, 8, 10] "
31 | ]
32 | },
33 | {
34 | "cell_type": "code",
35 | "execution_count": 3,
36 | "id": "1180a155",
37 | "metadata": {
38 | "scrolled": true
39 | },
40 | "outputs": [
41 | {
42 | "data": {
43 | "text/plain": [
44 | "(2.962098014195961, 4.837901985804038)"
45 | ]
46 | },
47 | "execution_count": 3,
48 | "metadata": {},
49 | "output_type": "execute_result"
50 | }
51 | ],
52 | "source": [
53 | "st.t.interval(confidence = 0.90, df = len(gfg_data)-1,loc = np.mean(gfg_data), scale=st.sem(gfg_data))"
54 | ]
55 | },
56 | {
57 | "cell_type": "code",
58 | "execution_count": 4,
59 | "id": "f2c1c83f",
60 | "metadata": {},
61 | "outputs": [
62 | {
63 | "data": {
64 | "text/plain": [
65 | "3.9"
66 | ]
67 | },
68 | "execution_count": 4,
69 | "metadata": {},
70 | "output_type": "execute_result"
71 | }
72 | ],
73 | "source": [
74 | "np.mean(gfg_data)"
75 | ]
76 | },
77 | {
78 | "cell_type": "markdown",
79 | "id": "3ddcc3c9",
80 | "metadata": {},
81 | "source": [
82 | "Calculate the 90% confidence Intervals of the random data set of size(n=100) using the norm Distribution using the norm.interval() function and passing the alpha parameter to 0.90 in the python."
83 | ]
84 | },
85 | {
86 | "cell_type": "code",
87 | "execution_count": 5,
88 | "id": "846a0514",
89 | "metadata": {},
90 | "outputs": [],
91 | "source": [
92 | "np.random.seed(0)\n",
93 | "gfg_data = np.random.randint(5, 10, 100) "
94 | ]
95 | },
96 | {
97 | "cell_type": "code",
98 | "execution_count": 6,
99 | "id": "d6efa71a",
100 | "metadata": {},
101 | "outputs": [
102 | {
103 | "data": {
104 | "text/plain": [
105 | "(6.722821921612098, 7.197178078387902)"
106 | ]
107 | },
108 | "execution_count": 6,
109 | "metadata": {},
110 | "output_type": "execute_result"
111 | }
112 | ],
113 | "source": [
114 | "st.norm.interval(confidence = 0.90,loc = np.mean(gfg_data), scale=st.sem(gfg_data))"
115 | ]
116 | },
117 | {
118 | "cell_type": "code",
119 | "execution_count": 11,
120 | "id": "a75092a1",
121 | "metadata": {},
122 | "outputs": [
123 | {
124 | "data": {
125 | "text/plain": [
126 | "6.96"
127 | ]
128 | },
129 | "execution_count": 11,
130 | "metadata": {},
131 | "output_type": "execute_result"
132 | }
133 | ],
134 | "source": [
135 | "np.mean(gfg_data)"
136 | ]
137 | }
138 | ],
139 | "metadata": {
140 | "kernelspec": {
141 | "display_name": "Python 3 (ipykernel)",
142 | "language": "python",
143 | "name": "python3"
144 | },
145 | "language_info": {
146 | "codemirror_mode": {
147 | "name": "ipython",
148 | "version": 3
149 | },
150 | "file_extension": ".py",
151 | "mimetype": "text/x-python",
152 | "name": "python",
153 | "nbconvert_exporter": "python",
154 | "pygments_lexer": "ipython3",
155 | "version": "3.11.1"
156 | }
157 | },
158 | "nbformat": 4,
159 | "nbformat_minor": 5
160 | }
161 |
--------------------------------------------------------------------------------
/Inferential Stats/T-Test.ipynb:
--------------------------------------------------------------------------------
1 | {
2 | "cells": [
3 | {
4 | "cell_type": "code",
5 | "execution_count": 1,
6 | "id": "d2ad7b54",
7 | "metadata": {},
8 | "outputs": [],
9 | "source": [
10 | "import numpy as np\n",
11 | "from numpy.random import randn\n",
12 | "import scipy.stats as stats"
13 | ]
14 | },
15 | {
16 | "cell_type": "code",
17 | "execution_count": 2,
18 | "id": "ed11d353",
19 | "metadata": {},
20 | "outputs": [],
21 | "source": [
22 | "sample_mean = 140\n",
23 | "sample_sd = 20\n",
24 | "data = sample_sd*randn(30)+sample_mean"
25 | ]
26 | },
27 | {
28 | "cell_type": "code",
29 | "execution_count": 3,
30 | "id": "238d1909",
31 | "metadata": {},
32 | "outputs": [],
33 | "source": [
34 | "alpha = 0.05"
35 | ]
36 | },
37 | {
38 | "cell_type": "code",
39 | "execution_count": 4,
40 | "id": "c9564642",
41 | "metadata": {},
42 | "outputs": [
43 | {
44 | "name": "stdout",
45 | "output_type": "stream",
46 | "text": [
47 | "mean=139.89 stdv=20.96\n"
48 | ]
49 | }
50 | ],
51 | "source": [
52 | "print('mean=%.2f stdv=%.2f' % (np.mean(data), np.std(data)))"
53 | ]
54 | },
55 | {
56 | "cell_type": "code",
57 | "execution_count": 5,
58 | "id": "1b60b72e",
59 | "metadata": {},
60 | "outputs": [],
61 | "source": [
62 | "t_statistic, p_value = stats.ttest_1samp(a=data, popmean=100)"
63 | ]
64 | },
65 | {
66 | "cell_type": "code",
67 | "execution_count": 6,
68 | "id": "dee96c94",
69 | "metadata": {},
70 | "outputs": [
71 | {
72 | "data": {
73 | "text/plain": [
74 | "(10.250576729298452, 3.753118701693896e-11)"
75 | ]
76 | },
77 | "execution_count": 6,
78 | "metadata": {},
79 | "output_type": "execute_result"
80 | }
81 | ],
82 | "source": [
83 | "t_statistic, p_value"
84 | ]
85 | },
86 | {
87 | "cell_type": "code",
88 | "execution_count": 7,
89 | "id": "19c3ff8c",
90 | "metadata": {
91 | "scrolled": true
92 | },
93 | "outputs": [
94 | {
95 | "name": "stdout",
96 | "output_type": "stream",
97 | "text": [
98 | "Reject Null Hypothesis\n"
99 | ]
100 | }
101 | ],
102 | "source": [
103 | "if(p_value < alpha):\n",
104 | " print(\"Reject Null Hypothesis\")\n",
105 | "else:\n",
106 | " print(\"Fail to Reject NUll Hypothesis\")"
107 | ]
108 | },
109 | {
110 | "cell_type": "code",
111 | "execution_count": 15,
112 | "id": "2065dfc1",
113 | "metadata": {},
114 | "outputs": [],
115 | "source": [
116 | "sample_mean = 24\n",
117 | "sample_sd = 0.7\n",
118 | "data2 = sample_sd*randn(20)+sample_mean"
119 | ]
120 | },
121 | {
122 | "cell_type": "code",
123 | "execution_count": 16,
124 | "id": "e9e3b150",
125 | "metadata": {
126 | "scrolled": false
127 | },
128 | "outputs": [
129 | {
130 | "name": "stdout",
131 | "output_type": "stream",
132 | "text": [
133 | "mean=23.83 stdv=0.81\n"
134 | ]
135 | }
136 | ],
137 | "source": [
138 | "print('mean=%.2f stdv=%.2f' % (np.mean(data2), np.std(data2)))"
139 | ]
140 | },
141 | {
142 | "cell_type": "code",
143 | "execution_count": 17,
144 | "id": "d3026729",
145 | "metadata": {},
146 | "outputs": [],
147 | "source": [
148 | "t_statistic, p_value = stats.ttest_1samp(a=data2, popmean=25)"
149 | ]
150 | },
151 | {
152 | "cell_type": "code",
153 | "execution_count": 18,
154 | "id": "dda7be32",
155 | "metadata": {},
156 | "outputs": [
157 | {
158 | "data": {
159 | "text/plain": [
160 | "(-6.303910919091638, 4.738238730383527e-06)"
161 | ]
162 | },
163 | "execution_count": 18,
164 | "metadata": {},
165 | "output_type": "execute_result"
166 | }
167 | ],
168 | "source": [
169 | "t_statistic, p_value"
170 | ]
171 | },
172 | {
173 | "cell_type": "code",
174 | "execution_count": 12,
175 | "id": "1dadcb05",
176 | "metadata": {},
177 | "outputs": [
178 | {
179 | "name": "stdout",
180 | "output_type": "stream",
181 | "text": [
182 | "Reject Null Hypothesis\n"
183 | ]
184 | }
185 | ],
186 | "source": [
187 | "if(p_value < alpha):\n",
188 | " print(\"Reject Null Hypothesis\")\n",
189 | "else:\n",
190 | " print(\"Fail to Reject NUll Hypothesis\")"
191 | ]
192 | },
193 | {
194 | "cell_type": "code",
195 | "execution_count": null,
196 | "id": "fb3be60f",
197 | "metadata": {},
198 | "outputs": [],
199 | "source": []
200 | }
201 | ],
202 | "metadata": {
203 | "kernelspec": {
204 | "display_name": "Python 3 (ipykernel)",
205 | "language": "python",
206 | "name": "python3"
207 | },
208 | "language_info": {
209 | "codemirror_mode": {
210 | "name": "ipython",
211 | "version": 3
212 | },
213 | "file_extension": ".py",
214 | "mimetype": "text/x-python",
215 | "name": "python",
216 | "nbconvert_exporter": "python",
217 | "pygments_lexer": "ipython3",
218 | "version": "3.11.1"
219 | }
220 | },
221 | "nbformat": 4,
222 | "nbformat_minor": 5
223 | }
224 |
--------------------------------------------------------------------------------
/Inferential Stats/Z test.ipynb:
--------------------------------------------------------------------------------
1 | {
2 | "cells": [
3 | {
4 | "cell_type": "code",
5 | "execution_count": 89,
6 | "id": "5af96aa2",
7 | "metadata": {},
8 | "outputs": [],
9 | "source": [
10 | "import math\n",
11 | "import numpy as np\n",
12 | "import scipy"
13 | ]
14 | },
15 | {
16 | "cell_type": "code",
17 | "execution_count": 88,
18 | "id": "6bfc3f54",
19 | "metadata": {},
20 | "outputs": [],
21 | "source": [
22 | "alpha = 0.05"
23 | ]
24 | },
25 | {
26 | "cell_type": "code",
27 | "execution_count": 87,
28 | "id": "bc95ebe3",
29 | "metadata": {},
30 | "outputs": [],
31 | "source": [
32 | "def z_test(n, sample_mean,null_mean, sd,alternative):\n",
33 | " z_score = (sample_mean-null_mean)/(sd/math.sqrt(n))\n",
34 | " p_value = scipy.stats.norm.sf(z_score)\n",
35 | " print(z_score)\n",
36 | " print(p_value)\n",
37 | " if(alternative == \"larger\" or alternative == \"smaller\"):\n",
38 | " if(p_value < alpha):\n",
39 | " print(\"Reject Null Hypothesis\")\n",
40 | " else:\n",
41 | " print(\"Fail to Reject NUll Hypothesis\")\n",
42 | " elif(alternative == \"two-sided\"):\n",
43 | " if(p_value < alpha/2):\n",
44 | " print(\"Reject Null Hypothesis\")\n",
45 | " else:\n",
46 | " print(\"Fail to Reject NUll Hypothesis\")"
47 | ]
48 | },
49 | {
50 | "cell_type": "code",
51 | "execution_count": 84,
52 | "id": "75b8dcea",
53 | "metadata": {},
54 | "outputs": [
55 | {
56 | "name": "stdout",
57 | "output_type": "stream",
58 | "text": [
59 | "4.714045207910317\n",
60 | "1.2142337364879197e-06\n",
61 | "Reject Null Hypothesis\n"
62 | ]
63 | }
64 | ],
65 | "source": [
66 | "z_test(50,110, 100,15, \"larger\")"
67 | ]
68 | },
69 | {
70 | "cell_type": "code",
71 | "execution_count": 36,
72 | "id": "afe4e1d5",
73 | "metadata": {
74 | "scrolled": true
75 | },
76 | "outputs": [],
77 | "source": [
78 | "mean_iq = 90\n",
79 | "sd_iq = 20/math.sqrt(81)\n",
80 | "data2 = sd_iq*randn(81)+mean_iq"
81 | ]
82 | },
83 | {
84 | "cell_type": "code",
85 | "execution_count": 85,
86 | "id": "1f43eeac",
87 | "metadata": {},
88 | "outputs": [
89 | {
90 | "name": "stdout",
91 | "output_type": "stream",
92 | "text": [
93 | "3.5999999999999996\n",
94 | "0.00015910859015753396\n",
95 | "Reject Null Hypothesis\n"
96 | ]
97 | }
98 | ],
99 | "source": [
100 | "z_test(81,90,82,20,\"larger\")"
101 | ]
102 | },
103 | {
104 | "cell_type": "code",
105 | "execution_count": 38,
106 | "id": "c6bbea08",
107 | "metadata": {},
108 | "outputs": [],
109 | "source": [
110 | " ztest_score, p_value = ztest(data2,value = null_mean, alternative='larger')"
111 | ]
112 | },
113 | {
114 | "cell_type": "code",
115 | "execution_count": 39,
116 | "id": "6a95ea9f",
117 | "metadata": {},
118 | "outputs": [
119 | {
120 | "name": "stdout",
121 | "output_type": "stream",
122 | "text": [
123 | "Reject Null Hypothesis\n"
124 | ]
125 | }
126 | ],
127 | "source": [
128 | "if(p_value < alpha):\n",
129 | " print(\"Reject Null Hypothesis\")\n",
130 | "else:\n",
131 | " print(\"Fail to Reject NUll Hypothesis\")"
132 | ]
133 | }
134 | ],
135 | "metadata": {
136 | "kernelspec": {
137 | "display_name": "Python 3 (ipykernel)",
138 | "language": "python",
139 | "name": "python3"
140 | },
141 | "language_info": {
142 | "codemirror_mode": {
143 | "name": "ipython",
144 | "version": 3
145 | },
146 | "file_extension": ".py",
147 | "mimetype": "text/x-python",
148 | "name": "python",
149 | "nbconvert_exporter": "python",
150 | "pygments_lexer": "ipython3",
151 | "version": "3.11.1"
152 | }
153 | },
154 | "nbformat": 4,
155 | "nbformat_minor": 5
156 | }
157 |
--------------------------------------------------------------------------------
/Measure of Central Tendency/Measure of central Tendency.ipynb:
--------------------------------------------------------------------------------
1 | {
2 | "cells": [
3 | {
4 | "cell_type": "markdown",
5 | "id": "ff8c0258",
6 | "metadata": {},
7 | "source": [
8 | "The mean (or average), the median, and the mode are usually the initial things data analysts look at in any sample data when trying to find the information about the data."
9 | ]
10 | },
11 | {
12 | "cell_type": "markdown",
13 | "id": "f94b730e",
14 | "metadata": {},
15 | "source": [
16 | "# Mean"
17 | ]
18 | },
19 | {
20 | "cell_type": "markdown",
21 | "id": "c5b6394d",
22 | "metadata": {},
23 | "source": [
24 | "Mean is average for a given set of data.\n",
25 | "\n",
26 | "To calculate the arithmetic mean of a set of data we must first add up (sum) all of the data values\n",
27 | "(x) and then divide the result by the number of values (n)."
28 | ]
29 | },
30 | {
31 | "cell_type": "code",
32 | "execution_count": 58,
33 | "id": "1c24685e",
34 | "metadata": {},
35 | "outputs": [],
36 | "source": [
37 | "import pandas as pd\n",
38 | "import numpy as np\n",
39 | "import seaborn as sns\n",
40 | "import statistics"
41 | ]
42 | },
43 | {
44 | "cell_type": "code",
45 | "execution_count": 41,
46 | "id": "272583c8",
47 | "metadata": {},
48 | "outputs": [],
49 | "source": [
50 | "data = [1, 2, 3, 4, 4, 4, 4, 5, 6, 7, 7, 7, 8]"
51 | ]
52 | },
53 | {
54 | "cell_type": "code",
55 | "execution_count": 46,
56 | "id": "6b2f57ac",
57 | "metadata": {},
58 | "outputs": [
59 | {
60 | "data": {
61 | "text/plain": [
62 | "62"
63 | ]
64 | },
65 | "execution_count": 46,
66 | "metadata": {},
67 | "output_type": "execute_result"
68 | }
69 | ],
70 | "source": [
71 | "1+2+3+4+4+4+4+5+6+7+7+7+8"
72 | ]
73 | },
74 | {
75 | "cell_type": "code",
76 | "execution_count": 47,
77 | "id": "41cb2d79",
78 | "metadata": {},
79 | "outputs": [
80 | {
81 | "data": {
82 | "text/plain": [
83 | "4.769230769230769"
84 | ]
85 | },
86 | "execution_count": 47,
87 | "metadata": {},
88 | "output_type": "execute_result"
89 | }
90 | ],
91 | "source": [
92 | "62/13"
93 | ]
94 | },
95 | {
96 | "cell_type": "code",
97 | "execution_count": 43,
98 | "id": "fbbd597e",
99 | "metadata": {},
100 | "outputs": [
101 | {
102 | "data": {
103 | "text/plain": [
104 | "4.769230769230769"
105 | ]
106 | },
107 | "execution_count": 43,
108 | "metadata": {},
109 | "output_type": "execute_result"
110 | }
111 | ],
112 | "source": [
113 | "statistics.mean(data)"
114 | ]
115 | },
116 | {
117 | "cell_type": "code",
118 | "execution_count": 3,
119 | "id": "9a32bfc9",
120 | "metadata": {},
121 | "outputs": [],
122 | "source": [
123 | "df = sns.load_dataset(\"mpg\")"
124 | ]
125 | },
126 | {
127 | "cell_type": "code",
128 | "execution_count": 4,
129 | "id": "4abbf356",
130 | "metadata": {},
131 | "outputs": [
132 | {
133 | "data": {
134 | "text/html": [
135 | "\n",
136 | "\n",
149 | "
\n",
150 | " \n",
151 | " \n",
152 | " | \n",
153 | " mpg | \n",
154 | " cylinders | \n",
155 | " displacement | \n",
156 | " horsepower | \n",
157 | " weight | \n",
158 | " acceleration | \n",
159 | " model_year | \n",
160 | " origin | \n",
161 | " name | \n",
162 | "
\n",
163 | " \n",
164 | " \n",
165 | " \n",
166 | " 0 | \n",
167 | " 18.0 | \n",
168 | " 8 | \n",
169 | " 307.0 | \n",
170 | " 130.0 | \n",
171 | " 3504 | \n",
172 | " 12.0 | \n",
173 | " 70 | \n",
174 | " usa | \n",
175 | " chevrolet chevelle malibu | \n",
176 | "
\n",
177 | " \n",
178 | " 1 | \n",
179 | " 15.0 | \n",
180 | " 8 | \n",
181 | " 350.0 | \n",
182 | " 165.0 | \n",
183 | " 3693 | \n",
184 | " 11.5 | \n",
185 | " 70 | \n",
186 | " usa | \n",
187 | " buick skylark 320 | \n",
188 | "
\n",
189 | " \n",
190 | "
\n",
191 | "
"
192 | ],
193 | "text/plain": [
194 | " mpg cylinders displacement horsepower weight acceleration \\\n",
195 | "0 18.0 8 307.0 130.0 3504 12.0 \n",
196 | "1 15.0 8 350.0 165.0 3693 11.5 \n",
197 | "\n",
198 | " model_year origin name \n",
199 | "0 70 usa chevrolet chevelle malibu \n",
200 | "1 70 usa buick skylark 320 "
201 | ]
202 | },
203 | "execution_count": 4,
204 | "metadata": {},
205 | "output_type": "execute_result"
206 | }
207 | ],
208 | "source": [
209 | "df.head(2)"
210 | ]
211 | },
212 | {
213 | "cell_type": "code",
214 | "execution_count": 5,
215 | "id": "1b158e47",
216 | "metadata": {},
217 | "outputs": [
218 | {
219 | "data": {
220 | "text/plain": [
221 | "2970.424623115578"
222 | ]
223 | },
224 | "execution_count": 5,
225 | "metadata": {},
226 | "output_type": "execute_result"
227 | }
228 | ],
229 | "source": [
230 | "df[\"weight\"].mean()"
231 | ]
232 | },
233 | {
234 | "cell_type": "code",
235 | "execution_count": 6,
236 | "id": "aa911757",
237 | "metadata": {},
238 | "outputs": [
239 | {
240 | "data": {
241 | "text/plain": [
242 | "15.568090452261307"
243 | ]
244 | },
245 | "execution_count": 6,
246 | "metadata": {},
247 | "output_type": "execute_result"
248 | }
249 | ],
250 | "source": [
251 | "df[\"acceleration\"].mean()"
252 | ]
253 | },
254 | {
255 | "cell_type": "code",
256 | "execution_count": 8,
257 | "id": "f10b70cd",
258 | "metadata": {},
259 | "outputs": [
260 | {
261 | "data": {
262 | "text/plain": [
263 | "193.42587939698493"
264 | ]
265 | },
266 | "execution_count": 8,
267 | "metadata": {},
268 | "output_type": "execute_result"
269 | }
270 | ],
271 | "source": [
272 | "df[\"displacement\"].mean()"
273 | ]
274 | },
275 | {
276 | "cell_type": "code",
277 | "execution_count": 9,
278 | "id": "0422c22f",
279 | "metadata": {
280 | "scrolled": false
281 | },
282 | "outputs": [
283 | {
284 | "name": "stderr",
285 | "output_type": "stream",
286 | "text": [
287 | "C:\\Users\\GFG19189\\AppData\\Local\\Temp\\ipykernel_12056\\3698961737.py:1: FutureWarning: The default value of numeric_only in DataFrame.mean is deprecated. In a future version, it will default to False. In addition, specifying 'numeric_only=None' is deprecated. Select only valid columns or specify the value of numeric_only to silence this warning.\n",
288 | " df.mean()\n"
289 | ]
290 | },
291 | {
292 | "data": {
293 | "text/plain": [
294 | "mpg 23.514573\n",
295 | "cylinders 5.454774\n",
296 | "displacement 193.425879\n",
297 | "horsepower 104.469388\n",
298 | "weight 2970.424623\n",
299 | "acceleration 15.568090\n",
300 | "model_year 76.010050\n",
301 | "dtype: float64"
302 | ]
303 | },
304 | "execution_count": 9,
305 | "metadata": {},
306 | "output_type": "execute_result"
307 | }
308 | ],
309 | "source": [
310 | "df.mean()"
311 | ]
312 | },
313 | {
314 | "cell_type": "markdown",
315 | "id": "505395a1",
316 | "metadata": {},
317 | "source": [
318 | "# Median"
319 | ]
320 | },
321 | {
322 | "cell_type": "markdown",
323 | "id": "a1b303b1",
324 | "metadata": {},
325 | "source": [
326 | "When the values in a set of data are arranged in ascending or descending order, then the value of the middle term in that set is known as the median of the set.\n",
327 | "\n",
328 | "The median is a better measure of the middle when there are extreme measures in the data set."
329 | ]
330 | },
331 | {
332 | "cell_type": "code",
333 | "execution_count": 48,
334 | "id": "ebbe0612",
335 | "metadata": {},
336 | "outputs": [
337 | {
338 | "data": {
339 | "text/plain": [
340 | "[1, 2, 3, 4, 4, 4, 4, 5, 6, 7, 7, 7, 8]"
341 | ]
342 | },
343 | "execution_count": 48,
344 | "metadata": {},
345 | "output_type": "execute_result"
346 | }
347 | ],
348 | "source": [
349 | "data"
350 | ]
351 | },
352 | {
353 | "cell_type": "markdown",
354 | "id": "ee4b75de",
355 | "metadata": {},
356 | "source": [
357 | "median = 4"
358 | ]
359 | },
360 | {
361 | "cell_type": "code",
362 | "execution_count": 49,
363 | "id": "36fb2b5f",
364 | "metadata": {},
365 | "outputs": [
366 | {
367 | "data": {
368 | "text/plain": [
369 | "4"
370 | ]
371 | },
372 | "execution_count": 49,
373 | "metadata": {},
374 | "output_type": "execute_result"
375 | }
376 | ],
377 | "source": [
378 | "statistics.median(data)"
379 | ]
380 | },
381 | {
382 | "cell_type": "code",
383 | "execution_count": 11,
384 | "id": "98aee804",
385 | "metadata": {},
386 | "outputs": [
387 | {
388 | "data": {
389 | "text/plain": [
390 | "2803.5"
391 | ]
392 | },
393 | "execution_count": 11,
394 | "metadata": {},
395 | "output_type": "execute_result"
396 | }
397 | ],
398 | "source": [
399 | "df[\"weight\"].median()"
400 | ]
401 | },
402 | {
403 | "cell_type": "code",
404 | "execution_count": 12,
405 | "id": "e53b87d7",
406 | "metadata": {},
407 | "outputs": [
408 | {
409 | "data": {
410 | "text/plain": [
411 | "93.5"
412 | ]
413 | },
414 | "execution_count": 12,
415 | "metadata": {},
416 | "output_type": "execute_result"
417 | }
418 | ],
419 | "source": [
420 | "df[\"horsepower\"].median()"
421 | ]
422 | },
423 | {
424 | "cell_type": "code",
425 | "execution_count": 13,
426 | "id": "0bc4e059",
427 | "metadata": {},
428 | "outputs": [
429 | {
430 | "data": {
431 | "text/plain": [
432 | "15.5"
433 | ]
434 | },
435 | "execution_count": 13,
436 | "metadata": {},
437 | "output_type": "execute_result"
438 | }
439 | ],
440 | "source": [
441 | "df[\"acceleration\"].median()"
442 | ]
443 | },
444 | {
445 | "cell_type": "code",
446 | "execution_count": 14,
447 | "id": "c3a47baa",
448 | "metadata": {
449 | "scrolled": true
450 | },
451 | "outputs": [
452 | {
453 | "name": "stderr",
454 | "output_type": "stream",
455 | "text": [
456 | "C:\\Users\\GFG19189\\AppData\\Local\\Temp\\ipykernel_12056\\530051474.py:1: FutureWarning: The default value of numeric_only in DataFrame.median is deprecated. In a future version, it will default to False. In addition, specifying 'numeric_only=None' is deprecated. Select only valid columns or specify the value of numeric_only to silence this warning.\n",
457 | " df.median()\n"
458 | ]
459 | },
460 | {
461 | "data": {
462 | "text/plain": [
463 | "mpg 23.0\n",
464 | "cylinders 4.0\n",
465 | "displacement 148.5\n",
466 | "horsepower 93.5\n",
467 | "weight 2803.5\n",
468 | "acceleration 15.5\n",
469 | "model_year 76.0\n",
470 | "dtype: float64"
471 | ]
472 | },
473 | "execution_count": 14,
474 | "metadata": {},
475 | "output_type": "execute_result"
476 | }
477 | ],
478 | "source": [
479 | "df.median()"
480 | ]
481 | },
482 | {
483 | "cell_type": "markdown",
484 | "id": "37744fa2",
485 | "metadata": {},
486 | "source": [
487 | "The median uses the position rather than the specific value of each data entry.\n",
488 | "If the extreme values of a data set change, the median usually does not change.\n",
489 | "\n",
490 | "This is why the median is often used as the average for house prices. If one mansion costing several million dollars sells in a community of much-lower-priced\n",
491 | "homes, the median selling price for houses in the community would be affected\n",
492 | "very little, if at all."
493 | ]
494 | },
495 | {
496 | "cell_type": "markdown",
497 | "id": "7eeb19ef",
498 | "metadata": {},
499 | "source": [
500 | "# Mode"
501 | ]
502 | },
503 | {
504 | "cell_type": "markdown",
505 | "id": "6896cb16",
506 | "metadata": {},
507 | "source": [
508 | "The mode of a data set is the value that occurs most frequently."
509 | ]
510 | },
511 | {
512 | "cell_type": "code",
513 | "execution_count": 42,
514 | "id": "4c11555f",
515 | "metadata": {},
516 | "outputs": [
517 | {
518 | "data": {
519 | "text/plain": [
520 | "[1, 2, 3, 4, 4, 4, 4, 5, 6, 7, 7, 7, 8]"
521 | ]
522 | },
523 | "execution_count": 42,
524 | "metadata": {},
525 | "output_type": "execute_result"
526 | }
527 | ],
528 | "source": [
529 | "data "
530 | ]
531 | },
532 | {
533 | "cell_type": "code",
534 | "execution_count": 40,
535 | "id": "a4de4859",
536 | "metadata": {},
537 | "outputs": [
538 | {
539 | "data": {
540 | "text/plain": [
541 | "4"
542 | ]
543 | },
544 | "execution_count": 40,
545 | "metadata": {},
546 | "output_type": "execute_result"
547 | }
548 | ],
549 | "source": [
550 | "statistics.mode(data)"
551 | ]
552 | },
553 | {
554 | "cell_type": "code",
555 | "execution_count": 17,
556 | "id": "ea401955",
557 | "metadata": {},
558 | "outputs": [
559 | {
560 | "data": {
561 | "text/plain": [
562 | "0 4\n",
563 | "Name: cylinders, dtype: int64"
564 | ]
565 | },
566 | "execution_count": 17,
567 | "metadata": {},
568 | "output_type": "execute_result"
569 | }
570 | ],
571 | "source": [
572 | "df[\"cylinders\"].mode()"
573 | ]
574 | },
575 | {
576 | "cell_type": "code",
577 | "execution_count": 51,
578 | "id": "fea0bddb",
579 | "metadata": {
580 | "scrolled": true
581 | },
582 | "outputs": [
583 | {
584 | "data": {
585 | "text/html": [
586 | "\n",
587 | "\n",
600 | "
\n",
601 | " \n",
602 | " \n",
603 | " | \n",
604 | " mpg | \n",
605 | " cylinders | \n",
606 | " displacement | \n",
607 | " horsepower | \n",
608 | " weight | \n",
609 | " acceleration | \n",
610 | " model_year | \n",
611 | " origin | \n",
612 | " name | \n",
613 | "
\n",
614 | " \n",
615 | " \n",
616 | " \n",
617 | " 0 | \n",
618 | " 13.0 | \n",
619 | " 4.0 | \n",
620 | " 97.0 | \n",
621 | " 150.0 | \n",
622 | " 1985 | \n",
623 | " 14.5 | \n",
624 | " 73.0 | \n",
625 | " usa | \n",
626 | " ford pinto | \n",
627 | "
\n",
628 | " \n",
629 | " 1 | \n",
630 | " NaN | \n",
631 | " NaN | \n",
632 | " NaN | \n",
633 | " NaN | \n",
634 | " 2130 | \n",
635 | " NaN | \n",
636 | " NaN | \n",
637 | " NaN | \n",
638 | " NaN | \n",
639 | "
\n",
640 | " \n",
641 | "
\n",
642 | "
"
643 | ],
644 | "text/plain": [
645 | " mpg cylinders displacement horsepower weight acceleration \\\n",
646 | "0 13.0 4.0 97.0 150.0 1985 14.5 \n",
647 | "1 NaN NaN NaN NaN 2130 NaN \n",
648 | "\n",
649 | " model_year origin name \n",
650 | "0 73.0 usa ford pinto \n",
651 | "1 NaN NaN NaN "
652 | ]
653 | },
654 | "execution_count": 51,
655 | "metadata": {},
656 | "output_type": "execute_result"
657 | }
658 | ],
659 | "source": [
660 | "df.mode(axis = 0, dropna = False)"
661 | ]
662 | },
663 | {
664 | "cell_type": "code",
665 | "execution_count": 35,
666 | "id": "e46f3549",
667 | "metadata": {
668 | "scrolled": true
669 | },
670 | "outputs": [
671 | {
672 | "data": {
673 | "text/plain": [
674 | "1"
675 | ]
676 | },
677 | "execution_count": 35,
678 | "metadata": {},
679 | "output_type": "execute_result"
680 | }
681 | ],
682 | "source": [
683 | "len(df[df[\"cylinders\"]==4])"
684 | ]
685 | },
686 | {
687 | "cell_type": "markdown",
688 | "id": "721a301c",
689 | "metadata": {},
690 | "source": [
691 | " Changing just one number in a data set can change the mode dramatically"
692 | ]
693 | },
694 | {
695 | "cell_type": "code",
696 | "execution_count": 52,
697 | "id": "5bb08b58",
698 | "metadata": {},
699 | "outputs": [
700 | {
701 | "data": {
702 | "text/plain": [
703 | "4"
704 | ]
705 | },
706 | "execution_count": 52,
707 | "metadata": {},
708 | "output_type": "execute_result"
709 | }
710 | ],
711 | "source": [
712 | "len(df[df[\"weight\"]==1985])"
713 | ]
714 | },
715 | {
716 | "cell_type": "code",
717 | "execution_count": 53,
718 | "id": "7bcfb506",
719 | "metadata": {},
720 | "outputs": [
721 | {
722 | "data": {
723 | "text/plain": [
724 | "4"
725 | ]
726 | },
727 | "execution_count": 53,
728 | "metadata": {},
729 | "output_type": "execute_result"
730 | }
731 | ],
732 | "source": [
733 | "len(df[df[\"weight\"]==2130])"
734 | ]
735 | },
736 | {
737 | "cell_type": "code",
738 | "execution_count": 56,
739 | "id": "a9241e9e",
740 | "metadata": {},
741 | "outputs": [
742 | {
743 | "data": {
744 | "text/html": [
745 | "\n",
746 | "\n",
759 | "
\n",
760 | " \n",
761 | " \n",
762 | " | \n",
763 | " mpg | \n",
764 | " cylinders | \n",
765 | " displacement | \n",
766 | " horsepower | \n",
767 | " weight | \n",
768 | " acceleration | \n",
769 | " model_year | \n",
770 | "
\n",
771 | " \n",
772 | " \n",
773 | " \n",
774 | " count | \n",
775 | " 398.000000 | \n",
776 | " 398.000000 | \n",
777 | " 398.000000 | \n",
778 | " 392.000000 | \n",
779 | " 398.000000 | \n",
780 | " 398.000000 | \n",
781 | " 398.000000 | \n",
782 | "
\n",
783 | " \n",
784 | " mean | \n",
785 | " 23.514573 | \n",
786 | " 5.454774 | \n",
787 | " 193.425879 | \n",
788 | " 104.469388 | \n",
789 | " 2970.424623 | \n",
790 | " 15.568090 | \n",
791 | " 76.010050 | \n",
792 | "
\n",
793 | " \n",
794 | " std | \n",
795 | " 7.815984 | \n",
796 | " 1.701004 | \n",
797 | " 104.269838 | \n",
798 | " 38.491160 | \n",
799 | " 846.841774 | \n",
800 | " 2.757689 | \n",
801 | " 3.697627 | \n",
802 | "
\n",
803 | " \n",
804 | " min | \n",
805 | " 9.000000 | \n",
806 | " 3.000000 | \n",
807 | " 68.000000 | \n",
808 | " 46.000000 | \n",
809 | " 1613.000000 | \n",
810 | " 8.000000 | \n",
811 | " 70.000000 | \n",
812 | "
\n",
813 | " \n",
814 | " 25% | \n",
815 | " 17.500000 | \n",
816 | " 4.000000 | \n",
817 | " 104.250000 | \n",
818 | " 75.000000 | \n",
819 | " 2223.750000 | \n",
820 | " 13.825000 | \n",
821 | " 73.000000 | \n",
822 | "
\n",
823 | " \n",
824 | " 50% | \n",
825 | " 23.000000 | \n",
826 | " 4.000000 | \n",
827 | " 148.500000 | \n",
828 | " 93.500000 | \n",
829 | " 2803.500000 | \n",
830 | " 15.500000 | \n",
831 | " 76.000000 | \n",
832 | "
\n",
833 | " \n",
834 | " 75% | \n",
835 | " 29.000000 | \n",
836 | " 8.000000 | \n",
837 | " 262.000000 | \n",
838 | " 126.000000 | \n",
839 | " 3608.000000 | \n",
840 | " 17.175000 | \n",
841 | " 79.000000 | \n",
842 | "
\n",
843 | " \n",
844 | " max | \n",
845 | " 46.600000 | \n",
846 | " 8.000000 | \n",
847 | " 455.000000 | \n",
848 | " 230.000000 | \n",
849 | " 5140.000000 | \n",
850 | " 24.800000 | \n",
851 | " 82.000000 | \n",
852 | "
\n",
853 | " \n",
854 | "
\n",
855 | "
"
856 | ],
857 | "text/plain": [
858 | " mpg cylinders displacement horsepower weight \\\n",
859 | "count 398.000000 398.000000 398.000000 392.000000 398.000000 \n",
860 | "mean 23.514573 5.454774 193.425879 104.469388 2970.424623 \n",
861 | "std 7.815984 1.701004 104.269838 38.491160 846.841774 \n",
862 | "min 9.000000 3.000000 68.000000 46.000000 1613.000000 \n",
863 | "25% 17.500000 4.000000 104.250000 75.000000 2223.750000 \n",
864 | "50% 23.000000 4.000000 148.500000 93.500000 2803.500000 \n",
865 | "75% 29.000000 8.000000 262.000000 126.000000 3608.000000 \n",
866 | "max 46.600000 8.000000 455.000000 230.000000 5140.000000 \n",
867 | "\n",
868 | " acceleration model_year \n",
869 | "count 398.000000 398.000000 \n",
870 | "mean 15.568090 76.010050 \n",
871 | "std 2.757689 3.697627 \n",
872 | "min 8.000000 70.000000 \n",
873 | "25% 13.825000 73.000000 \n",
874 | "50% 15.500000 76.000000 \n",
875 | "75% 17.175000 79.000000 \n",
876 | "max 24.800000 82.000000 "
877 | ]
878 | },
879 | "execution_count": 56,
880 | "metadata": {},
881 | "output_type": "execute_result"
882 | }
883 | ],
884 | "source": [
885 | "df.describe()"
886 | ]
887 | },
888 | {
889 | "cell_type": "code",
890 | "execution_count": null,
891 | "id": "d97c9fec",
892 | "metadata": {},
893 | "outputs": [],
894 | "source": []
895 | }
896 | ],
897 | "metadata": {
898 | "kernelspec": {
899 | "display_name": "Python 3 (ipykernel)",
900 | "language": "python",
901 | "name": "python3"
902 | },
903 | "language_info": {
904 | "codemirror_mode": {
905 | "name": "ipython",
906 | "version": 3
907 | },
908 | "file_extension": ".py",
909 | "mimetype": "text/x-python",
910 | "name": "python",
911 | "nbconvert_exporter": "python",
912 | "pygments_lexer": "ipython3",
913 | "version": "3.11.1"
914 | }
915 | },
916 | "nbformat": 4,
917 | "nbformat_minor": 5
918 | }
919 |
--------------------------------------------------------------------------------
/Measure of Dispersion/Measure of Dispersion.ipynb:
--------------------------------------------------------------------------------
1 | {
2 | "cells": [
3 | {
4 | "cell_type": "code",
5 | "execution_count": 2,
6 | "id": "142b7ea6",
7 | "metadata": {},
8 | "outputs": [],
9 | "source": [
10 | "import pandas as pd\n",
11 | "import statistics\n",
12 | "import seaborn as sns"
13 | ]
14 | },
15 | {
16 | "cell_type": "code",
17 | "execution_count": 3,
18 | "id": "95ddd3a4",
19 | "metadata": {},
20 | "outputs": [],
21 | "source": [
22 | "data1 = [45,42,42,41,40]\n",
23 | "data2 =[54,48,42,33,33]"
24 | ]
25 | },
26 | {
27 | "cell_type": "code",
28 | "execution_count": 4,
29 | "id": "04fd00a7",
30 | "metadata": {},
31 | "outputs": [
32 | {
33 | "data": {
34 | "text/plain": [
35 | "42"
36 | ]
37 | },
38 | "execution_count": 4,
39 | "metadata": {},
40 | "output_type": "execute_result"
41 | }
42 | ],
43 | "source": [
44 | "statistics.mean(data1)"
45 | ]
46 | },
47 | {
48 | "cell_type": "code",
49 | "execution_count": 5,
50 | "id": "0d142bc2",
51 | "metadata": {},
52 | "outputs": [
53 | {
54 | "data": {
55 | "text/plain": [
56 | "42"
57 | ]
58 | },
59 | "execution_count": 5,
60 | "metadata": {},
61 | "output_type": "execute_result"
62 | }
63 | ],
64 | "source": [
65 | "statistics.mean(data2)"
66 | ]
67 | },
68 | {
69 | "cell_type": "code",
70 | "execution_count": 6,
71 | "id": "c75178ff",
72 | "metadata": {},
73 | "outputs": [
74 | {
75 | "data": {
76 | "text/plain": [
77 | "3.5"
78 | ]
79 | },
80 | "execution_count": 6,
81 | "metadata": {},
82 | "output_type": "execute_result"
83 | }
84 | ],
85 | "source": [
86 | "statistics.variance(data1)"
87 | ]
88 | },
89 | {
90 | "cell_type": "code",
91 | "execution_count": 7,
92 | "id": "9f0068be",
93 | "metadata": {},
94 | "outputs": [
95 | {
96 | "data": {
97 | "text/plain": [
98 | "1.6733200530681511"
99 | ]
100 | },
101 | "execution_count": 7,
102 | "metadata": {},
103 | "output_type": "execute_result"
104 | }
105 | ],
106 | "source": [
107 | "statistics.pstdev(data1)"
108 | ]
109 | },
110 | {
111 | "cell_type": "code",
112 | "execution_count": 8,
113 | "id": "8334e792",
114 | "metadata": {},
115 | "outputs": [],
116 | "source": [
117 | "df = sns.load_dataset(\"mpg\")"
118 | ]
119 | },
120 | {
121 | "cell_type": "code",
122 | "execution_count": 9,
123 | "id": "bff64009",
124 | "metadata": {
125 | "scrolled": true
126 | },
127 | "outputs": [
128 | {
129 | "data": {
130 | "text/html": [
131 | "\n",
132 | "\n",
145 | "
\n",
146 | " \n",
147 | " \n",
148 | " | \n",
149 | " mpg | \n",
150 | " cylinders | \n",
151 | " displacement | \n",
152 | " horsepower | \n",
153 | " weight | \n",
154 | " acceleration | \n",
155 | " model_year | \n",
156 | " origin | \n",
157 | " name | \n",
158 | "
\n",
159 | " \n",
160 | " \n",
161 | " \n",
162 | " 0 | \n",
163 | " 18.0 | \n",
164 | " 8 | \n",
165 | " 307.0 | \n",
166 | " 130.0 | \n",
167 | " 3504 | \n",
168 | " 12.0 | \n",
169 | " 70 | \n",
170 | " usa | \n",
171 | " chevrolet chevelle malibu | \n",
172 | "
\n",
173 | " \n",
174 | " 1 | \n",
175 | " 15.0 | \n",
176 | " 8 | \n",
177 | " 350.0 | \n",
178 | " 165.0 | \n",
179 | " 3693 | \n",
180 | " 11.5 | \n",
181 | " 70 | \n",
182 | " usa | \n",
183 | " buick skylark 320 | \n",
184 | "
\n",
185 | " \n",
186 | " 2 | \n",
187 | " 18.0 | \n",
188 | " 8 | \n",
189 | " 318.0 | \n",
190 | " 150.0 | \n",
191 | " 3436 | \n",
192 | " 11.0 | \n",
193 | " 70 | \n",
194 | " usa | \n",
195 | " plymouth satellite | \n",
196 | "
\n",
197 | " \n",
198 | " 3 | \n",
199 | " 16.0 | \n",
200 | " 8 | \n",
201 | " 304.0 | \n",
202 | " 150.0 | \n",
203 | " 3433 | \n",
204 | " 12.0 | \n",
205 | " 70 | \n",
206 | " usa | \n",
207 | " amc rebel sst | \n",
208 | "
\n",
209 | " \n",
210 | " 4 | \n",
211 | " 17.0 | \n",
212 | " 8 | \n",
213 | " 302.0 | \n",
214 | " 140.0 | \n",
215 | " 3449 | \n",
216 | " 10.5 | \n",
217 | " 70 | \n",
218 | " usa | \n",
219 | " ford torino | \n",
220 | "
\n",
221 | " \n",
222 | "
\n",
223 | "
"
224 | ],
225 | "text/plain": [
226 | " mpg cylinders displacement horsepower weight acceleration \\\n",
227 | "0 18.0 8 307.0 130.0 3504 12.0 \n",
228 | "1 15.0 8 350.0 165.0 3693 11.5 \n",
229 | "2 18.0 8 318.0 150.0 3436 11.0 \n",
230 | "3 16.0 8 304.0 150.0 3433 12.0 \n",
231 | "4 17.0 8 302.0 140.0 3449 10.5 \n",
232 | "\n",
233 | " model_year origin name \n",
234 | "0 70 usa chevrolet chevelle malibu \n",
235 | "1 70 usa buick skylark 320 \n",
236 | "2 70 usa plymouth satellite \n",
237 | "3 70 usa amc rebel sst \n",
238 | "4 70 usa ford torino "
239 | ]
240 | },
241 | "execution_count": 9,
242 | "metadata": {},
243 | "output_type": "execute_result"
244 | }
245 | ],
246 | "source": [
247 | "df.head()"
248 | ]
249 | },
250 | {
251 | "cell_type": "code",
252 | "execution_count": 10,
253 | "id": "eadf7b26",
254 | "metadata": {},
255 | "outputs": [],
256 | "source": [
257 | "data = [1, 2, 3, 4, 4, 4, 4, 5, 6, 7, 7, 7, 8]"
258 | ]
259 | },
260 | {
261 | "cell_type": "code",
262 | "execution_count": 11,
263 | "id": "a1754a55",
264 | "metadata": {},
265 | "outputs": [
266 | {
267 | "data": {
268 | "text/plain": [
269 | "7"
270 | ]
271 | },
272 | "execution_count": 11,
273 | "metadata": {},
274 | "output_type": "execute_result"
275 | }
276 | ],
277 | "source": [
278 | "8-1"
279 | ]
280 | },
281 | {
282 | "cell_type": "code",
283 | "execution_count": 12,
284 | "id": "2511f30f",
285 | "metadata": {},
286 | "outputs": [
287 | {
288 | "data": {
289 | "text/plain": [
290 | "4.769230769230769"
291 | ]
292 | },
293 | "execution_count": 12,
294 | "metadata": {},
295 | "output_type": "execute_result"
296 | }
297 | ],
298 | "source": [
299 | "statistics.mean(data)"
300 | ]
301 | },
302 | {
303 | "cell_type": "code",
304 | "execution_count": 13,
305 | "id": "f82a663e",
306 | "metadata": {},
307 | "outputs": [
308 | {
309 | "data": {
310 | "text/plain": [
311 | "2.0438969623979113"
312 | ]
313 | },
314 | "execution_count": 13,
315 | "metadata": {},
316 | "output_type": "execute_result"
317 | }
318 | ],
319 | "source": [
320 | "statistics.pstdev(data)"
321 | ]
322 | },
323 | {
324 | "cell_type": "code",
325 | "execution_count": 14,
326 | "id": "575f8bd3",
327 | "metadata": {
328 | "scrolled": true
329 | },
330 | "outputs": [
331 | {
332 | "data": {
333 | "text/plain": [
334 | "37.6"
335 | ]
336 | },
337 | "execution_count": 14,
338 | "metadata": {},
339 | "output_type": "execute_result"
340 | }
341 | ],
342 | "source": [
343 | "df[\"mpg\"].max()-df[\"mpg\"].min()"
344 | ]
345 | },
346 | {
347 | "cell_type": "code",
348 | "execution_count": 15,
349 | "id": "2fabd3b2",
350 | "metadata": {
351 | "scrolled": true
352 | },
353 | "outputs": [
354 | {
355 | "data": {
356 | "text/plain": [
357 | "3527"
358 | ]
359 | },
360 | "execution_count": 15,
361 | "metadata": {},
362 | "output_type": "execute_result"
363 | }
364 | ],
365 | "source": [
366 | "df[\"weight\"].max()-df[\"weight\"].min()"
367 | ]
368 | },
369 | {
370 | "cell_type": "code",
371 | "execution_count": 16,
372 | "id": "e18187df",
373 | "metadata": {},
374 | "outputs": [
375 | {
376 | "data": {
377 | "text/plain": [
378 | "61.0896107742744"
379 | ]
380 | },
381 | "execution_count": 16,
382 | "metadata": {},
383 | "output_type": "execute_result"
384 | }
385 | ],
386 | "source": [
387 | "statistics.variance(df[\"mpg\"])"
388 | ]
389 | },
390 | {
391 | "cell_type": "code",
392 | "execution_count": 17,
393 | "id": "34ee0060",
394 | "metadata": {},
395 | "outputs": [
396 | {
397 | "data": {
398 | "text/plain": [
399 | "7.806159061274432"
400 | ]
401 | },
402 | "execution_count": 17,
403 | "metadata": {},
404 | "output_type": "execute_result"
405 | }
406 | ],
407 | "source": [
408 | "statistics.pstdev(df[\"mpg\"])"
409 | ]
410 | },
411 | {
412 | "cell_type": "code",
413 | "execution_count": 18,
414 | "id": "b144a54e",
415 | "metadata": {},
416 | "outputs": [
417 | {
418 | "data": {
419 | "text/html": [
420 | "\n",
421 | "\n",
434 | "
\n",
435 | " \n",
436 | " \n",
437 | " | \n",
438 | " mpg | \n",
439 | " cylinders | \n",
440 | " displacement | \n",
441 | " horsepower | \n",
442 | " weight | \n",
443 | " acceleration | \n",
444 | " model_year | \n",
445 | "
\n",
446 | " \n",
447 | " \n",
448 | " \n",
449 | " count | \n",
450 | " 398.000000 | \n",
451 | " 398.000000 | \n",
452 | " 398.000000 | \n",
453 | " 392.000000 | \n",
454 | " 398.000000 | \n",
455 | " 398.000000 | \n",
456 | " 398.000000 | \n",
457 | "
\n",
458 | " \n",
459 | " mean | \n",
460 | " 23.514573 | \n",
461 | " 5.454774 | \n",
462 | " 193.425879 | \n",
463 | " 104.469388 | \n",
464 | " 2970.424623 | \n",
465 | " 15.568090 | \n",
466 | " 76.010050 | \n",
467 | "
\n",
468 | " \n",
469 | " std | \n",
470 | " 7.815984 | \n",
471 | " 1.701004 | \n",
472 | " 104.269838 | \n",
473 | " 38.491160 | \n",
474 | " 846.841774 | \n",
475 | " 2.757689 | \n",
476 | " 3.697627 | \n",
477 | "
\n",
478 | " \n",
479 | " min | \n",
480 | " 9.000000 | \n",
481 | " 3.000000 | \n",
482 | " 68.000000 | \n",
483 | " 46.000000 | \n",
484 | " 1613.000000 | \n",
485 | " 8.000000 | \n",
486 | " 70.000000 | \n",
487 | "
\n",
488 | " \n",
489 | " 25% | \n",
490 | " 17.500000 | \n",
491 | " 4.000000 | \n",
492 | " 104.250000 | \n",
493 | " 75.000000 | \n",
494 | " 2223.750000 | \n",
495 | " 13.825000 | \n",
496 | " 73.000000 | \n",
497 | "
\n",
498 | " \n",
499 | " 50% | \n",
500 | " 23.000000 | \n",
501 | " 4.000000 | \n",
502 | " 148.500000 | \n",
503 | " 93.500000 | \n",
504 | " 2803.500000 | \n",
505 | " 15.500000 | \n",
506 | " 76.000000 | \n",
507 | "
\n",
508 | " \n",
509 | " 75% | \n",
510 | " 29.000000 | \n",
511 | " 8.000000 | \n",
512 | " 262.000000 | \n",
513 | " 126.000000 | \n",
514 | " 3608.000000 | \n",
515 | " 17.175000 | \n",
516 | " 79.000000 | \n",
517 | "
\n",
518 | " \n",
519 | " max | \n",
520 | " 46.600000 | \n",
521 | " 8.000000 | \n",
522 | " 455.000000 | \n",
523 | " 230.000000 | \n",
524 | " 5140.000000 | \n",
525 | " 24.800000 | \n",
526 | " 82.000000 | \n",
527 | "
\n",
528 | " \n",
529 | "
\n",
530 | "
"
531 | ],
532 | "text/plain": [
533 | " mpg cylinders displacement horsepower weight \\\n",
534 | "count 398.000000 398.000000 398.000000 392.000000 398.000000 \n",
535 | "mean 23.514573 5.454774 193.425879 104.469388 2970.424623 \n",
536 | "std 7.815984 1.701004 104.269838 38.491160 846.841774 \n",
537 | "min 9.000000 3.000000 68.000000 46.000000 1613.000000 \n",
538 | "25% 17.500000 4.000000 104.250000 75.000000 2223.750000 \n",
539 | "50% 23.000000 4.000000 148.500000 93.500000 2803.500000 \n",
540 | "75% 29.000000 8.000000 262.000000 126.000000 3608.000000 \n",
541 | "max 46.600000 8.000000 455.000000 230.000000 5140.000000 \n",
542 | "\n",
543 | " acceleration model_year \n",
544 | "count 398.000000 398.000000 \n",
545 | "mean 15.568090 76.010050 \n",
546 | "std 2.757689 3.697627 \n",
547 | "min 8.000000 70.000000 \n",
548 | "25% 13.825000 73.000000 \n",
549 | "50% 15.500000 76.000000 \n",
550 | "75% 17.175000 79.000000 \n",
551 | "max 24.800000 82.000000 "
552 | ]
553 | },
554 | "execution_count": 18,
555 | "metadata": {},
556 | "output_type": "execute_result"
557 | }
558 | ],
559 | "source": [
560 | "df.describe()"
561 | ]
562 | },
563 | {
564 | "cell_type": "code",
565 | "execution_count": 19,
566 | "id": "c407205d",
567 | "metadata": {},
568 | "outputs": [
569 | {
570 | "data": {
571 | "text/plain": [
572 | "0.3319711187745463"
573 | ]
574 | },
575 | "execution_count": 19,
576 | "metadata": {},
577 | "output_type": "execute_result"
578 | }
579 | ],
580 | "source": [
581 | "statistics.pstdev(df[\"mpg\"])/statistics.mean(df[\"mpg\"])"
582 | ]
583 | },
584 | {
585 | "cell_type": "code",
586 | "execution_count": 20,
587 | "id": "c9700a5c",
588 | "metadata": {},
589 | "outputs": [
590 | {
591 | "data": {
592 | "text/plain": [
593 | "0.2847327708429478"
594 | ]
595 | },
596 | "execution_count": 20,
597 | "metadata": {},
598 | "output_type": "execute_result"
599 | }
600 | ],
601 | "source": [
602 | "statistics.pstdev(df[\"weight\"])/statistics.mean(df[\"weight\"])"
603 | ]
604 | },
605 | {
606 | "cell_type": "code",
607 | "execution_count": 22,
608 | "id": "1e1d5ffb",
609 | "metadata": {},
610 | "outputs": [
611 | {
612 | "data": {
613 | "text/html": [
614 | "\n",
615 | "\n",
628 | "
\n",
629 | " \n",
630 | " \n",
631 | " | \n",
632 | " mpg | \n",
633 | " cylinders | \n",
634 | " displacement | \n",
635 | " horsepower | \n",
636 | " weight | \n",
637 | " acceleration | \n",
638 | " model_year | \n",
639 | "
\n",
640 | " \n",
641 | " \n",
642 | " \n",
643 | " count | \n",
644 | " 398.000000 | \n",
645 | " 398.000000 | \n",
646 | " 398.000000 | \n",
647 | " 392.000000 | \n",
648 | " 398.000000 | \n",
649 | " 398.000000 | \n",
650 | " 398.000000 | \n",
651 | "
\n",
652 | " \n",
653 | " mean | \n",
654 | " 23.514573 | \n",
655 | " 5.454774 | \n",
656 | " 193.425879 | \n",
657 | " 104.469388 | \n",
658 | " 2970.424623 | \n",
659 | " 15.568090 | \n",
660 | " 76.010050 | \n",
661 | "
\n",
662 | " \n",
663 | " std | \n",
664 | " 7.815984 | \n",
665 | " 1.701004 | \n",
666 | " 104.269838 | \n",
667 | " 38.491160 | \n",
668 | " 846.841774 | \n",
669 | " 2.757689 | \n",
670 | " 3.697627 | \n",
671 | "
\n",
672 | " \n",
673 | " min | \n",
674 | " 9.000000 | \n",
675 | " 3.000000 | \n",
676 | " 68.000000 | \n",
677 | " 46.000000 | \n",
678 | " 1613.000000 | \n",
679 | " 8.000000 | \n",
680 | " 70.000000 | \n",
681 | "
\n",
682 | " \n",
683 | " 25% | \n",
684 | " 17.500000 | \n",
685 | " 4.000000 | \n",
686 | " 104.250000 | \n",
687 | " 75.000000 | \n",
688 | " 2223.750000 | \n",
689 | " 13.825000 | \n",
690 | " 73.000000 | \n",
691 | "
\n",
692 | " \n",
693 | " 50% | \n",
694 | " 23.000000 | \n",
695 | " 4.000000 | \n",
696 | " 148.500000 | \n",
697 | " 93.500000 | \n",
698 | " 2803.500000 | \n",
699 | " 15.500000 | \n",
700 | " 76.000000 | \n",
701 | "
\n",
702 | " \n",
703 | " 75% | \n",
704 | " 29.000000 | \n",
705 | " 8.000000 | \n",
706 | " 262.000000 | \n",
707 | " 126.000000 | \n",
708 | " 3608.000000 | \n",
709 | " 17.175000 | \n",
710 | " 79.000000 | \n",
711 | "
\n",
712 | " \n",
713 | " max | \n",
714 | " 46.600000 | \n",
715 | " 8.000000 | \n",
716 | " 455.000000 | \n",
717 | " 230.000000 | \n",
718 | " 5140.000000 | \n",
719 | " 24.800000 | \n",
720 | " 82.000000 | \n",
721 | "
\n",
722 | " \n",
723 | "
\n",
724 | "
"
725 | ],
726 | "text/plain": [
727 | " mpg cylinders displacement horsepower weight \\\n",
728 | "count 398.000000 398.000000 398.000000 392.000000 398.000000 \n",
729 | "mean 23.514573 5.454774 193.425879 104.469388 2970.424623 \n",
730 | "std 7.815984 1.701004 104.269838 38.491160 846.841774 \n",
731 | "min 9.000000 3.000000 68.000000 46.000000 1613.000000 \n",
732 | "25% 17.500000 4.000000 104.250000 75.000000 2223.750000 \n",
733 | "50% 23.000000 4.000000 148.500000 93.500000 2803.500000 \n",
734 | "75% 29.000000 8.000000 262.000000 126.000000 3608.000000 \n",
735 | "max 46.600000 8.000000 455.000000 230.000000 5140.000000 \n",
736 | "\n",
737 | " acceleration model_year \n",
738 | "count 398.000000 398.000000 \n",
739 | "mean 15.568090 76.010050 \n",
740 | "std 2.757689 3.697627 \n",
741 | "min 8.000000 70.000000 \n",
742 | "25% 13.825000 73.000000 \n",
743 | "50% 15.500000 76.000000 \n",
744 | "75% 17.175000 79.000000 \n",
745 | "max 24.800000 82.000000 "
746 | ]
747 | },
748 | "execution_count": 22,
749 | "metadata": {},
750 | "output_type": "execute_result"
751 | }
752 | ],
753 | "source": [
754 | "df.describe()"
755 | ]
756 | },
757 | {
758 | "cell_type": "code",
759 | "execution_count": 25,
760 | "id": "de1108c8",
761 | "metadata": {},
762 | "outputs": [
763 | {
764 | "data": {
765 | "text/plain": [
766 | "0.03984095364447979"
767 | ]
768 | },
769 | "execution_count": 25,
770 | "metadata": {},
771 | "output_type": "execute_result"
772 | }
773 | ],
774 | "source": [
775 | "statistics.pstdev(data1)/statistics.mean(data1)"
776 | ]
777 | },
778 | {
779 | "cell_type": "code",
780 | "execution_count": 26,
781 | "id": "e74acab0",
782 | "metadata": {},
783 | "outputs": [
784 | {
785 | "data": {
786 | "text/plain": [
787 | "0.19691498217271744"
788 | ]
789 | },
790 | "execution_count": 26,
791 | "metadata": {},
792 | "output_type": "execute_result"
793 | }
794 | ],
795 | "source": [
796 | "statistics.pstdev(data2)/statistics.mean(data2)"
797 | ]
798 | }
799 | ],
800 | "metadata": {
801 | "kernelspec": {
802 | "display_name": "Python 3 (ipykernel)",
803 | "language": "python",
804 | "name": "python3"
805 | },
806 | "language_info": {
807 | "codemirror_mode": {
808 | "name": "ipython",
809 | "version": 3
810 | },
811 | "file_extension": ".py",
812 | "mimetype": "text/x-python",
813 | "name": "python",
814 | "nbconvert_exporter": "python",
815 | "pygments_lexer": "ipython3",
816 | "version": "3.11.1"
817 | }
818 | },
819 | "nbformat": 4,
820 | "nbformat_minor": 5
821 | }
822 |
--------------------------------------------------------------------------------
/Measure of Shape/Measure of Shape.ipynb:
--------------------------------------------------------------------------------
1 | {
2 | "cells": [
3 | {
4 | "cell_type": "code",
5 | "execution_count": 2,
6 | "id": "fcd711f3",
7 | "metadata": {},
8 | "outputs": [],
9 | "source": [
10 | "import pandas as pd\n",
11 | "import seaborn as sns"
12 | ]
13 | },
14 | {
15 | "cell_type": "code",
16 | "execution_count": 3,
17 | "id": "ffac47a7",
18 | "metadata": {},
19 | "outputs": [],
20 | "source": [
21 | "df = sns.load_dataset(\"mpg\")"
22 | ]
23 | },
24 | {
25 | "cell_type": "code",
26 | "execution_count": 4,
27 | "id": "5e87c097",
28 | "metadata": {},
29 | "outputs": [
30 | {
31 | "data": {
32 | "text/html": [
33 | "\n",
34 | "\n",
47 | "
\n",
48 | " \n",
49 | " \n",
50 | " | \n",
51 | " mpg | \n",
52 | " cylinders | \n",
53 | " displacement | \n",
54 | " horsepower | \n",
55 | " weight | \n",
56 | " acceleration | \n",
57 | " model_year | \n",
58 | " origin | \n",
59 | " name | \n",
60 | "
\n",
61 | " \n",
62 | " \n",
63 | " \n",
64 | " 0 | \n",
65 | " 18.0 | \n",
66 | " 8 | \n",
67 | " 307.0 | \n",
68 | " 130.0 | \n",
69 | " 3504 | \n",
70 | " 12.0 | \n",
71 | " 70 | \n",
72 | " usa | \n",
73 | " chevrolet chevelle malibu | \n",
74 | "
\n",
75 | " \n",
76 | " 1 | \n",
77 | " 15.0 | \n",
78 | " 8 | \n",
79 | " 350.0 | \n",
80 | " 165.0 | \n",
81 | " 3693 | \n",
82 | " 11.5 | \n",
83 | " 70 | \n",
84 | " usa | \n",
85 | " buick skylark 320 | \n",
86 | "
\n",
87 | " \n",
88 | " 2 | \n",
89 | " 18.0 | \n",
90 | " 8 | \n",
91 | " 318.0 | \n",
92 | " 150.0 | \n",
93 | " 3436 | \n",
94 | " 11.0 | \n",
95 | " 70 | \n",
96 | " usa | \n",
97 | " plymouth satellite | \n",
98 | "
\n",
99 | " \n",
100 | " 3 | \n",
101 | " 16.0 | \n",
102 | " 8 | \n",
103 | " 304.0 | \n",
104 | " 150.0 | \n",
105 | " 3433 | \n",
106 | " 12.0 | \n",
107 | " 70 | \n",
108 | " usa | \n",
109 | " amc rebel sst | \n",
110 | "
\n",
111 | " \n",
112 | " 4 | \n",
113 | " 17.0 | \n",
114 | " 8 | \n",
115 | " 302.0 | \n",
116 | " 140.0 | \n",
117 | " 3449 | \n",
118 | " 10.5 | \n",
119 | " 70 | \n",
120 | " usa | \n",
121 | " ford torino | \n",
122 | "
\n",
123 | " \n",
124 | "
\n",
125 | "
"
126 | ],
127 | "text/plain": [
128 | " mpg cylinders displacement horsepower weight acceleration \\\n",
129 | "0 18.0 8 307.0 130.0 3504 12.0 \n",
130 | "1 15.0 8 350.0 165.0 3693 11.5 \n",
131 | "2 18.0 8 318.0 150.0 3436 11.0 \n",
132 | "3 16.0 8 304.0 150.0 3433 12.0 \n",
133 | "4 17.0 8 302.0 140.0 3449 10.5 \n",
134 | "\n",
135 | " model_year origin name \n",
136 | "0 70 usa chevrolet chevelle malibu \n",
137 | "1 70 usa buick skylark 320 \n",
138 | "2 70 usa plymouth satellite \n",
139 | "3 70 usa amc rebel sst \n",
140 | "4 70 usa ford torino "
141 | ]
142 | },
143 | "execution_count": 4,
144 | "metadata": {},
145 | "output_type": "execute_result"
146 | }
147 | ],
148 | "source": [
149 | "df.head()"
150 | ]
151 | },
152 | {
153 | "cell_type": "code",
154 | "execution_count": 5,
155 | "id": "ec1df159",
156 | "metadata": {},
157 | "outputs": [
158 | {
159 | "name": "stderr",
160 | "output_type": "stream",
161 | "text": [
162 | "C:\\Users\\GFG19189\\AppData\\Local\\Temp\\ipykernel_5308\\1665899112.py:1: FutureWarning: The default value of numeric_only in DataFrame.skew is deprecated. In a future version, it will default to False. In addition, specifying 'numeric_only=None' is deprecated. Select only valid columns or specify the value of numeric_only to silence this warning.\n",
163 | " df.skew()\n"
164 | ]
165 | },
166 | {
167 | "data": {
168 | "text/plain": [
169 | "mpg 0.457066\n",
170 | "cylinders 0.526922\n",
171 | "displacement 0.719645\n",
172 | "horsepower 1.087326\n",
173 | "weight 0.531063\n",
174 | "acceleration 0.278777\n",
175 | "model_year 0.011535\n",
176 | "dtype: float64"
177 | ]
178 | },
179 | "execution_count": 5,
180 | "metadata": {},
181 | "output_type": "execute_result"
182 | }
183 | ],
184 | "source": [
185 | "df.skew()"
186 | ]
187 | },
188 | {
189 | "cell_type": "code",
190 | "execution_count": 6,
191 | "id": "08d2f9b4",
192 | "metadata": {},
193 | "outputs": [],
194 | "source": [
195 | "df[\"horsepower\"]= df[\"horsepower\"]**(1/3)"
196 | ]
197 | },
198 | {
199 | "cell_type": "code",
200 | "execution_count": 7,
201 | "id": "7ba7e304",
202 | "metadata": {},
203 | "outputs": [
204 | {
205 | "data": {
206 | "text/plain": [
207 | "0.6132504951168221"
208 | ]
209 | },
210 | "execution_count": 7,
211 | "metadata": {},
212 | "output_type": "execute_result"
213 | }
214 | ],
215 | "source": [
216 | "df[\"horsepower\"].skew()"
217 | ]
218 | },
219 | {
220 | "cell_type": "code",
221 | "execution_count": 12,
222 | "id": "bf4043fe",
223 | "metadata": {},
224 | "outputs": [
225 | {
226 | "data": {
227 | "text/plain": [
228 | ""
229 | ]
230 | },
231 | "execution_count": 12,
232 | "metadata": {},
233 | "output_type": "execute_result"
234 | },
235 | {
236 | "data": {
237 | "image/png": "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vQA7AgBAb0K4AQAgSnAw2jkINwAAwFIINwAAwFIINwAAwFIINwAAwFIINwAAwFIINwAAwFIINwAAwFIINwAAwFIINwAAwFIIN70Eb70EAPQWhBsAAGAphBsAAGAphBsAAGAphBsAAGAphBsAAGAphBsAAGAphBsAAGAphBsAAGAphBsAAGAphBsAAGAphBsAAGAphBsAAGAphBsAAGAphBsAAGAphBsAAGAphBsAAGAphBsAAGAphBsAAGAphBsAAGAphBsAAGAphBsAAGAphBsAAGAphBsAAGAphBsAAGAphBsAAGAphBsAAGAphBsAAGAphBsAAGAphBsAAGAphBsAAGAphBsAAGAphBsAAGAphBsAAGAphBsAAGAphBsAAGAphBsAAGAphBsAAGAphBsAAGApEYebt99+W+edd55SU1Nls9n0wgsvhHxuGIZuvfVWDRgwQD6fT9OnT9fnn38e0s/Bgwd1ySWXyO/3KzExUVdffbUOHz4c0s+WLVt0+umny+v1Kj09Xffcc0/kYwcAAHqdiMNNRUWFxo4dq4ULF4b9/J577tEf/vAHLVq0SO+9955iY2OVm5ur6upqs59LLrlE27Zt08qVK/Xyyy/r7bff1s9+9jPz8/Lycs2YMUMZGRnKz8/X7373O91+++3685//3I5RBAAAvYkz0i+cc845Ouecc8J+ZhiG7r//ft1yyy264IILJElPPvmkUlJS9MILL+iHP/yhPvnkE7322mv64IMPNGHCBEnSH//4R5177rn6/e9/r9TUVP3tb39TbW2tHnvsMbndbo0cOVKbNm3SfffdFxKCGqupqVFNTY35d3l5eaSjBgAALKBT77nZvXu3ioqKNH36dLMsISFBEydO1Pr16yVJ69evV2JiohlsJGn69Omy2+167733zH6mTJkit9tt9pObm6sdO3aopKQkbN3z589XQkKC2aWnp3fmqAEAgB6iU8NNUVGRJCklJSWkPCUlxfysqKhIycnJIZ87nU4lJSWF9BNuGI3raGrevHkqKyszu8LCwo6PEAAA6HEiviwVrTwejzweT3c3AwAAdLNOPXMTCAQkScXFxSHlxcXF5meBQED79+8P+byurk4HDx4M6SfcMBrXAQAAEE6nhpshQ4YoEAho1apVZll5ebnee+895eTkSJJycnJUWlqq/Px8s58333xTDQ0NmjhxotnP22+/rSNHjpj9rFy5UsOHD1efPn06s8kAAMBiIg43hw8f1qZNm7Rp0yZJR28i3rRpkwoKCmSz2TR79mz97//+r1588UVt3bpVl19+uVJTU3XhhRdKkjIzM3X22Wfrmmuu0fvvv693331X119/vX74wx8qNTVVkvTjH/9YbrdbV199tbZt26Znn31WDzzwgObOndtpIw4AAKwp4ntuPvzwQ5155pnm38HAccUVV2jx4sW68cYbVVFRoZ/97GcqLS3Vaaedptdee01er9f8zt/+9jddf/31Ouuss2S32zVr1iz94Q9/MD9PSEjQ66+/rry8PGVnZ6tfv3669dZbW3wMHAAAICjicDN16lQZhtHi5zabTXfeeafuvPPOFvtJSkrS008/3Wo9Y8aM0TvvvBNp8wAAQC/Hb0sBAABLIdwAAABLIdwAAABLIdwAAABLIdwAAABLIdwAAABLIdwAAABLIdwAAABLIdwAAABLIdwAAABLIdwAAABLIdwAAABLIdwAAABLIdwAAABLIdwAAABLIdwAAABLIdwAAABLIdwAAABLIdwAAABLIdwAAABLIdwAAABLIdwAAABLIdwAAABLIdwAAABLIdwAAABLIdwAAABLIdwAAABLIdwAAABLIdwAAABLIdwAAABLIdwAAABLIdwAAABLIdwAAABLIdwAAABLIdwAAABLIdwAAABLIdwAAABLIdwAAABLIdwAAABLIdwAAABLIdwAAABLIdwAAABLIdwAAABLIdwAAABLIdwAAABLIdwAAABLIdwAAABLIdwAAABLIdwAAABLIdwAAABLIdwAAABLIdwAAABLIdwAAABLIdwAAABLIdwAAABLIdwAAABLIdwAAABLiepws3DhQg0ePFher1cTJ07U+++/391NAgAAUS5qw82zzz6ruXPn6rbbbtPGjRs1duxY5ebmav/+/d3dNAAAEMWiNtzcd999uuaaa3TVVVcpKytLixYtUkxMjB577LHubhoAAIhizu5uQDi1tbXKz8/XvHnzzDK73a7p06dr/fr1Yb9TU1Ojmpoa8++ysjJJUkNNpcrLy83/B7VW1rg82suONS7dVXY8x7m3TMOeNF2P5zj3lmnYk6br8Rzn3jINe9J0PZ7j3FqZYRhqNyMKff3114YkY926dSHlN9xwg3HKKaeE/c5tt91mSKKjo6Ojo6OzQFdY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\n",
238 | "text/plain": [
239 | ""
240 | ]
241 | },
242 | "metadata": {},
243 | "output_type": "display_data"
244 | }
245 | ],
246 | "source": [
247 | "df[\"weight\"].plot(kind = \"bar\")"
248 | ]
249 | },
250 | {
251 | "cell_type": "code",
252 | "execution_count": 9,
253 | "id": "c6029939",
254 | "metadata": {},
255 | "outputs": [
256 | {
257 | "name": "stderr",
258 | "output_type": "stream",
259 | "text": [
260 | "C:\\Users\\GFG19189\\AppData\\Local\\Temp\\ipykernel_5308\\615572439.py:1: FutureWarning: The default value of numeric_only in DataFrame.kurt is deprecated. In a future version, it will default to False. In addition, specifying 'numeric_only=None' is deprecated. Select only valid columns or specify the value of numeric_only to silence this warning.\n",
261 | " df.kurtosis()\n"
262 | ]
263 | },
264 | {
265 | "data": {
266 | "text/plain": [
267 | "mpg -0.510781\n",
268 | "cylinders -1.376662\n",
269 | "displacement -0.746597\n",
270 | "horsepower -0.211118\n",
271 | "weight -0.785529\n",
272 | "acceleration 0.419497\n",
273 | "model_year -1.181232\n",
274 | "dtype: float64"
275 | ]
276 | },
277 | "execution_count": 9,
278 | "metadata": {},
279 | "output_type": "execute_result"
280 | }
281 | ],
282 | "source": [
283 | "df.kurtosis()"
284 | ]
285 | }
286 | ],
287 | "metadata": {
288 | "kernelspec": {
289 | "display_name": "Python 3 (ipykernel)",
290 | "language": "python",
291 | "name": "python3"
292 | },
293 | "language_info": {
294 | "codemirror_mode": {
295 | "name": "ipython",
296 | "version": 3
297 | },
298 | "file_extension": ".py",
299 | "mimetype": "text/x-python",
300 | "name": "python",
301 | "nbconvert_exporter": "python",
302 | "pygments_lexer": "ipython3",
303 | "version": "3.11.1"
304 | }
305 | },
306 | "nbformat": 4,
307 | "nbformat_minor": 5
308 | }
309 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # Statistics Course
2 |
3 | ## Overview
4 |
5 | Welcome to the Statistics course! Throughout this course, you will learn essential statistical tools that are widely used in data analysis and decision-making processes.
6 |
7 | ## Course Content
8 |
9 | This course consists of the following modules:
10 |
11 | 1. **Data Preprocessing:** Explore the steps involved in data preprocessing.
12 |
13 | 2. **Frequency Distribution:** Learn how to create and analyze frequency distributions to summarize categorical and numerical data.
14 |
15 | 3. **Measure of Central Tendency:** Understand various measures of central tendency, such as mean, median, and mode, to describe the central value of a dataset.
16 |
17 | 4. **Measure of Shape:** Explore different measures of shape, like skewness and kurtosis, to understand the distribution of data.
18 |
19 | 5. **Measure of Dispersion:** Learn about measures of dispersion, such as range, variance, and standard deviation, to assess the spread of data.
20 |
21 | 6. **Inferential Statistics:** Dive into inferential statistics, covering topics like sampling techniques, the central limit theorem, confidence intervals, hypothesis testing (Z-test and T-test), Chi-Square test, one-way ANOVA, and two-way ANOVA.
22 |
23 | ## Requirements
24 |
25 | Before you begin the course, ensure you have the following:
26 |
27 | - Basic understanding of mathematics and algebra.
28 | - Familiarity with programming fundamentals, preferably using Python.
29 |
30 |
31 | ## Support
32 |
33 | If you have any questions or encounter any challenges while working through the course content or code files, feel free to reach out to us through linkedin[www.linkedin.com/in/sakshi-singhal-bb0b3213a].
34 |
35 |
36 |
--------------------------------------------------------------------------------