├── Datasets
├── readme.md
├── linear_data.csv
└── nonlinear_data.csv
├── Documents
├── Readme.md
├── Data Wrangling.pdf
├── Handle Imbalanced Dataset.pdf
├── 60 SQL Interview Questions and Answers.pdf
└── Roadmap on Data Analysis with Python in 2024.pdf
├── Plots.pdf
├── Standard Deviation and Variance.ipynb
├── Min Max Scaling with Python.ipynb
├── Pearson correlation coefficient.ipynb
├── Measures of Central Tendency.ipynb
├── Standard Scaling using Python.ipynb
├── 4. Matplotlib Histogram or histplot.ipynb
├── 5. Boxplot using Python.ipynb
└── 3. Matplotlib Bar Plot .ipynb
/Datasets/readme.md:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/Documents/Readme.md:
--------------------------------------------------------------------------------
1 | www.aiquest.org
2 |
--------------------------------------------------------------------------------
/Plots.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rashakil-ds/Data-Analysis-with-Python/main/Plots.pdf
--------------------------------------------------------------------------------
/Documents/Data Wrangling.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rashakil-ds/Data-Analysis-with-Python/main/Documents/Data Wrangling.pdf
--------------------------------------------------------------------------------
/Documents/Handle Imbalanced Dataset.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rashakil-ds/Data-Analysis-with-Python/main/Documents/Handle Imbalanced Dataset.pdf
--------------------------------------------------------------------------------
/Documents/60 SQL Interview Questions and Answers.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rashakil-ds/Data-Analysis-with-Python/main/Documents/60 SQL Interview Questions and Answers.pdf
--------------------------------------------------------------------------------
/Documents/Roadmap on Data Analysis with Python in 2024.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/rashakil-ds/Data-Analysis-with-Python/main/Documents/Roadmap on Data Analysis with Python in 2024.pdf
--------------------------------------------------------------------------------
/Standard Deviation and Variance.ipynb:
--------------------------------------------------------------------------------
1 | {
2 | "cells": [
3 | {
4 | "cell_type": "code",
5 | "execution_count": 1,
6 | "id": "7dc7f7b5",
7 | "metadata": {},
8 | "outputs": [],
9 | "source": [
10 | "import pandas as pd"
11 | ]
12 | },
13 | {
14 | "cell_type": "code",
15 | "execution_count": 2,
16 | "id": "9d6bb6b8",
17 | "metadata": {},
18 | "outputs": [],
19 | "source": [
20 | "data = {'Scores': [88, 92, 100, 83, 97, 75]}\n",
21 | "df = pd.DataFrame(data)"
22 | ]
23 | },
24 | {
25 | "cell_type": "code",
26 | "execution_count": 3,
27 | "id": "831e5c77",
28 | "metadata": {},
29 | "outputs": [
30 | {
31 | "data": {
32 | "text/html": [
33 | "
\n",
34 | "\n",
47 | "
\n",
48 | " \n",
49 | " \n",
50 | " | \n",
51 | " Scores | \n",
52 | "
\n",
53 | " \n",
54 | " \n",
55 | " \n",
56 | " | 0 | \n",
57 | " 88 | \n",
58 | "
\n",
59 | " \n",
60 | " | 1 | \n",
61 | " 92 | \n",
62 | "
\n",
63 | " \n",
64 | " | 2 | \n",
65 | " 100 | \n",
66 | "
\n",
67 | " \n",
68 | " | 3 | \n",
69 | " 83 | \n",
70 | "
\n",
71 | " \n",
72 | " | 4 | \n",
73 | " 97 | \n",
74 | "
\n",
75 | " \n",
76 | " | 5 | \n",
77 | " 75 | \n",
78 | "
\n",
79 | " \n",
80 | "
\n",
81 | "
"
82 | ],
83 | "text/plain": [
84 | " Scores\n",
85 | "0 88\n",
86 | "1 92\n",
87 | "2 100\n",
88 | "3 83\n",
89 | "4 97\n",
90 | "5 75"
91 | ]
92 | },
93 | "execution_count": 3,
94 | "metadata": {},
95 | "output_type": "execute_result"
96 | }
97 | ],
98 | "source": [
99 | "df"
100 | ]
101 | },
102 | {
103 | "cell_type": "code",
104 | "execution_count": 4,
105 | "id": "1c6d9412",
106 | "metadata": {},
107 | "outputs": [
108 | {
109 | "name": "stdout",
110 | "output_type": "stream",
111 | "text": [
112 | "Standard Deviation of Scores: 9.239408350466315\n"
113 | ]
114 | }
115 | ],
116 | "source": [
117 | "standard_deviation = df['Scores'].std()\n",
118 | "print(\"Standard Deviation of Scores:\", standard_deviation)"
119 | ]
120 | },
121 | {
122 | "cell_type": "code",
123 | "execution_count": 5,
124 | "id": "beaf3904",
125 | "metadata": {},
126 | "outputs": [
127 | {
128 | "name": "stdout",
129 | "output_type": "stream",
130 | "text": [
131 | "Variance of Scores: 85.36666666666666\n"
132 | ]
133 | }
134 | ],
135 | "source": [
136 | "variance = df['Scores'].var()\n",
137 | "print(\"Variance of Scores:\", variance)"
138 | ]
139 | },
140 | {
141 | "cell_type": "code",
142 | "execution_count": null,
143 | "id": "20c68863",
144 | "metadata": {},
145 | "outputs": [],
146 | "source": []
147 | }
148 | ],
149 | "metadata": {
150 | "kernelspec": {
151 | "display_name": "Python 3 (ipykernel)",
152 | "language": "python",
153 | "name": "python3"
154 | },
155 | "language_info": {
156 | "codemirror_mode": {
157 | "name": "ipython",
158 | "version": 3
159 | },
160 | "file_extension": ".py",
161 | "mimetype": "text/x-python",
162 | "name": "python",
163 | "nbconvert_exporter": "python",
164 | "pygments_lexer": "ipython3",
165 | "version": "3.9.13"
166 | }
167 | },
168 | "nbformat": 4,
169 | "nbformat_minor": 5
170 | }
171 |
--------------------------------------------------------------------------------
/Min Max Scaling with Python.ipynb:
--------------------------------------------------------------------------------
1 | {
2 | "cells": [
3 | {
4 | "cell_type": "markdown",
5 | "id": "fc529592",
6 | "metadata": {},
7 | "source": [
8 | "# Raw Code"
9 | ]
10 | },
11 | {
12 | "cell_type": "code",
13 | "execution_count": 1,
14 | "id": "1c33a4de",
15 | "metadata": {},
16 | "outputs": [],
17 | "source": [
18 | "def min_max_scaling(data):\n",
19 | " min_val = min(data)\n",
20 | " max_val = max(data)\n",
21 | " scaled_data = [(x - min_val) / (max_val - min_val) for x in data]\n",
22 | " return scaled_data"
23 | ]
24 | },
25 | {
26 | "cell_type": "code",
27 | "execution_count": 2,
28 | "id": "53cba510",
29 | "metadata": {},
30 | "outputs": [
31 | {
32 | "name": "stdout",
33 | "output_type": "stream",
34 | "text": [
35 | "Original Data: [1, 20, 30, 4, 5]\n",
36 | "Scaled data (raw): [0.0, 0.6551724137931034, 1.0, 0.10344827586206896, 0.13793103448275862]\n"
37 | ]
38 | }
39 | ],
40 | "source": [
41 | "data = [1, 20, 30, 4, 5]\n",
42 | "scaled_data = min_max_scaling(data)\n",
43 | "print('Original Data: ', data)\n",
44 | "print(\"Scaled data (raw):\", scaled_data)"
45 | ]
46 | },
47 | {
48 | "cell_type": "markdown",
49 | "id": "c9912be9",
50 | "metadata": {},
51 | "source": [
52 | "# using Sklearn"
53 | ]
54 | },
55 | {
56 | "cell_type": "code",
57 | "execution_count": 3,
58 | "id": "e2326ee0",
59 | "metadata": {},
60 | "outputs": [],
61 | "source": [
62 | "import pandas as pd\n",
63 | "from sklearn.preprocessing import MinMaxScaler"
64 | ]
65 | },
66 | {
67 | "cell_type": "code",
68 | "execution_count": 4,
69 | "id": "6c2eab99",
70 | "metadata": {},
71 | "outputs": [
72 | {
73 | "data": {
74 | "text/html": [
75 | "\n",
76 | "\n",
89 | "
\n",
90 | " \n",
91 | " \n",
92 | " | \n",
93 | " Feature1 | \n",
94 | " Feature2 | \n",
95 | "
\n",
96 | " \n",
97 | " \n",
98 | " \n",
99 | " | 0 | \n",
100 | " 1 | \n",
101 | " 6 | \n",
102 | "
\n",
103 | " \n",
104 | " | 1 | \n",
105 | " 5 | \n",
106 | " 7 | \n",
107 | "
\n",
108 | " \n",
109 | " | 2 | \n",
110 | " 10 | \n",
111 | " 8 | \n",
112 | "
\n",
113 | " \n",
114 | " | 3 | \n",
115 | " 4 | \n",
116 | " 19 | \n",
117 | "
\n",
118 | " \n",
119 | " | 4 | \n",
120 | " 5 | \n",
121 | " 10 | \n",
122 | "
\n",
123 | " \n",
124 | "
\n",
125 | "
"
126 | ],
127 | "text/plain": [
128 | " Feature1 Feature2\n",
129 | "0 1 6\n",
130 | "1 5 7\n",
131 | "2 10 8\n",
132 | "3 4 19\n",
133 | "4 5 10"
134 | ]
135 | },
136 | "execution_count": 4,
137 | "metadata": {},
138 | "output_type": "execute_result"
139 | }
140 | ],
141 | "source": [
142 | "data = {'Feature1': [1, 5, 10, 4, 5],\n",
143 | " 'Feature2': [6, 7, 8, 19, 10]}\n",
144 | "\n",
145 | "df = pd.DataFrame(data)\n",
146 | "df.head()"
147 | ]
148 | },
149 | {
150 | "cell_type": "code",
151 | "execution_count": 5,
152 | "id": "03a59524",
153 | "metadata": {},
154 | "outputs": [],
155 | "source": [
156 | "scaler = MinMaxScaler()\n",
157 | "scaled_data = scaler.fit_transform(df)\n",
158 | "scaled_df = pd.DataFrame(scaled_data, columns=df.columns)"
159 | ]
160 | },
161 | {
162 | "cell_type": "code",
163 | "execution_count": 6,
164 | "id": "b32cc8d6",
165 | "metadata": {},
166 | "outputs": [
167 | {
168 | "name": "stdout",
169 | "output_type": "stream",
170 | "text": [
171 | "Original DataFrame:\n",
172 | " Feature1 Feature2\n",
173 | "0 1 6\n",
174 | "1 5 7\n",
175 | "2 10 8\n",
176 | "3 4 19\n",
177 | "4 5 10\n",
178 | "\n",
179 | "Scaled DataFrame:\n",
180 | " Feature1 Feature2\n",
181 | "0 0.000000 0.000000\n",
182 | "1 0.444444 0.076923\n",
183 | "2 1.000000 0.153846\n",
184 | "3 0.333333 1.000000\n",
185 | "4 0.444444 0.307692\n"
186 | ]
187 | }
188 | ],
189 | "source": [
190 | "print(\"Original DataFrame:\")\n",
191 | "print(df)\n",
192 | "print(\"\\nScaled DataFrame:\")\n",
193 | "print(scaled_df)"
194 | ]
195 | },
196 | {
197 | "cell_type": "code",
198 | "execution_count": null,
199 | "id": "0e898642",
200 | "metadata": {},
201 | "outputs": [],
202 | "source": []
203 | }
204 | ],
205 | "metadata": {
206 | "kernelspec": {
207 | "display_name": "Python 3 (ipykernel)",
208 | "language": "python",
209 | "name": "python3"
210 | },
211 | "language_info": {
212 | "codemirror_mode": {
213 | "name": "ipython",
214 | "version": 3
215 | },
216 | "file_extension": ".py",
217 | "mimetype": "text/x-python",
218 | "name": "python",
219 | "nbconvert_exporter": "python",
220 | "pygments_lexer": "ipython3",
221 | "version": "3.9.13"
222 | }
223 | },
224 | "nbformat": 4,
225 | "nbformat_minor": 5
226 | }
227 |
--------------------------------------------------------------------------------
/Pearson correlation coefficient.ipynb:
--------------------------------------------------------------------------------
1 | {
2 | "cells": [
3 | {
4 | "cell_type": "code",
5 | "execution_count": 1,
6 | "id": "a7e33214",
7 | "metadata": {},
8 | "outputs": [],
9 | "source": [
10 | "import pandas as pd"
11 | ]
12 | },
13 | {
14 | "cell_type": "code",
15 | "execution_count": 2,
16 | "id": "374e7d93",
17 | "metadata": {},
18 | "outputs": [],
19 | "source": [
20 | "data = {\n",
21 | " 'X': [1, 2, 3, 4, 5, 7, 10],\n",
22 | " 'Y': [2, 3, 5, 4, 6, 6, 8]\n",
23 | "}"
24 | ]
25 | },
26 | {
27 | "cell_type": "code",
28 | "execution_count": 3,
29 | "id": "88da6420",
30 | "metadata": {},
31 | "outputs": [
32 | {
33 | "data": {
34 | "text/plain": [
35 | "{'X': [1, 2, 3, 4, 5, 7, 10], 'Y': [2, 3, 5, 4, 6, 6, 8]}"
36 | ]
37 | },
38 | "execution_count": 3,
39 | "metadata": {},
40 | "output_type": "execute_result"
41 | }
42 | ],
43 | "source": [
44 | "data"
45 | ]
46 | },
47 | {
48 | "cell_type": "code",
49 | "execution_count": 4,
50 | "id": "8606e6c8",
51 | "metadata": {},
52 | "outputs": [
53 | {
54 | "data": {
55 | "text/html": [
56 | "\n",
57 | "\n",
70 | "
\n",
71 | " \n",
72 | " \n",
73 | " | \n",
74 | " X | \n",
75 | " Y | \n",
76 | "
\n",
77 | " \n",
78 | " \n",
79 | " \n",
80 | " | 0 | \n",
81 | " 1 | \n",
82 | " 2 | \n",
83 | "
\n",
84 | " \n",
85 | " | 1 | \n",
86 | " 2 | \n",
87 | " 3 | \n",
88 | "
\n",
89 | " \n",
90 | " | 2 | \n",
91 | " 3 | \n",
92 | " 5 | \n",
93 | "
\n",
94 | " \n",
95 | " | 3 | \n",
96 | " 4 | \n",
97 | " 4 | \n",
98 | "
\n",
99 | " \n",
100 | " | 4 | \n",
101 | " 5 | \n",
102 | " 6 | \n",
103 | "
\n",
104 | " \n",
105 | "
\n",
106 | "
"
107 | ],
108 | "text/plain": [
109 | " X Y\n",
110 | "0 1 2\n",
111 | "1 2 3\n",
112 | "2 3 5\n",
113 | "3 4 4\n",
114 | "4 5 6"
115 | ]
116 | },
117 | "execution_count": 4,
118 | "metadata": {},
119 | "output_type": "execute_result"
120 | }
121 | ],
122 | "source": [
123 | "df = pd.DataFrame(data)\n",
124 | "df.head()"
125 | ]
126 | },
127 | {
128 | "cell_type": "markdown",
129 | "id": "5c3e6ee6",
130 | "metadata": {},
131 | "source": [
132 | "# Calculate Pearson correlation"
133 | ]
134 | },
135 | {
136 | "cell_type": "code",
137 | "execution_count": 5,
138 | "id": "c73c9fc9",
139 | "metadata": {},
140 | "outputs": [
141 | {
142 | "name": "stdout",
143 | "output_type": "stream",
144 | "text": [
145 | "Pearson correlation coefficient: 0.9391480052471199\n"
146 | ]
147 | }
148 | ],
149 | "source": [
150 | "pearson_corr = df['X'].corr(df['Y'])\n",
151 | "print(\"Pearson correlation coefficient:\", pearson_corr)"
152 | ]
153 | },
154 | {
155 | "cell_type": "code",
156 | "execution_count": 6,
157 | "id": "29b1b22d",
158 | "metadata": {},
159 | "outputs": [
160 | {
161 | "data": {
162 | "text/html": [
163 | "\n",
164 | "\n",
177 | "
\n",
178 | " \n",
179 | " \n",
180 | " | \n",
181 | " X | \n",
182 | " Y | \n",
183 | "
\n",
184 | " \n",
185 | " \n",
186 | " \n",
187 | " | X | \n",
188 | " 1.000000 | \n",
189 | " 0.939148 | \n",
190 | "
\n",
191 | " \n",
192 | " | Y | \n",
193 | " 0.939148 | \n",
194 | " 1.000000 | \n",
195 | "
\n",
196 | " \n",
197 | "
\n",
198 | "
"
199 | ],
200 | "text/plain": [
201 | " X Y\n",
202 | "X 1.000000 0.939148\n",
203 | "Y 0.939148 1.000000"
204 | ]
205 | },
206 | "execution_count": 6,
207 | "metadata": {},
208 | "output_type": "execute_result"
209 | }
210 | ],
211 | "source": [
212 | "df.corr()"
213 | ]
214 | },
215 | {
216 | "cell_type": "code",
217 | "execution_count": null,
218 | "id": "754b1a48",
219 | "metadata": {},
220 | "outputs": [],
221 | "source": []
222 | }
223 | ],
224 | "metadata": {
225 | "kernelspec": {
226 | "display_name": "Python 3 (ipykernel)",
227 | "language": "python",
228 | "name": "python3"
229 | },
230 | "language_info": {
231 | "codemirror_mode": {
232 | "name": "ipython",
233 | "version": 3
234 | },
235 | "file_extension": ".py",
236 | "mimetype": "text/x-python",
237 | "name": "python",
238 | "nbconvert_exporter": "python",
239 | "pygments_lexer": "ipython3",
240 | "version": "3.9.13"
241 | }
242 | },
243 | "nbformat": 4,
244 | "nbformat_minor": 5
245 | }
246 |
--------------------------------------------------------------------------------
/Measures of Central Tendency.ipynb:
--------------------------------------------------------------------------------
1 | {
2 | "cells": [
3 | {
4 | "cell_type": "markdown",
5 | "id": "7fbb45dc",
6 | "metadata": {},
7 | "source": [
8 | "# Raw Python Code"
9 | ]
10 | },
11 | {
12 | "cell_type": "code",
13 | "execution_count": 1,
14 | "id": "08266211",
15 | "metadata": {},
16 | "outputs": [],
17 | "source": [
18 | "ages = [21, 25, 19, 19, 25, 22, 24, 24, 27]"
19 | ]
20 | },
21 | {
22 | "cell_type": "code",
23 | "execution_count": 2,
24 | "id": "d7d2baf6",
25 | "metadata": {},
26 | "outputs": [
27 | {
28 | "data": {
29 | "text/plain": [
30 | "22.88888888888889"
31 | ]
32 | },
33 | "execution_count": 2,
34 | "metadata": {},
35 | "output_type": "execute_result"
36 | }
37 | ],
38 | "source": [
39 | "mean_age = sum(ages) / len(ages)\n",
40 | "mean_age"
41 | ]
42 | },
43 | {
44 | "cell_type": "code",
45 | "execution_count": 3,
46 | "id": "fa4256f4",
47 | "metadata": {},
48 | "outputs": [
49 | {
50 | "data": {
51 | "text/plain": [
52 | "24"
53 | ]
54 | },
55 | "execution_count": 3,
56 | "metadata": {},
57 | "output_type": "execute_result"
58 | }
59 | ],
60 | "source": [
61 | "sorted_ages = sorted(ages)\n",
62 | "n = len(sorted_ages)\n",
63 | "median_age = (sorted_ages[n//2] if n % 2 != 0 else (sorted_ages[n//2 - 1] + sorted_ages[n//2]) / 2)\n",
64 | "median_age"
65 | ]
66 | },
67 | {
68 | "cell_type": "code",
69 | "execution_count": 4,
70 | "id": "5555062d",
71 | "metadata": {},
72 | "outputs": [
73 | {
74 | "data": {
75 | "text/plain": [
76 | "[25, 19, 24]"
77 | ]
78 | },
79 | "execution_count": 4,
80 | "metadata": {},
81 | "output_type": "execute_result"
82 | }
83 | ],
84 | "source": [
85 | "from collections import Counter\n",
86 | "\n",
87 | "mode_data = Counter(ages)\n",
88 | "max_frequency = max(mode_data.values())\n",
89 | "modes = [k for k, v in mode_data.items() if v == max_frequency]\n",
90 | "modes"
91 | ]
92 | },
93 | {
94 | "cell_type": "markdown",
95 | "id": "ef18186c",
96 | "metadata": {},
97 | "source": [
98 | "# Pandas"
99 | ]
100 | },
101 | {
102 | "cell_type": "code",
103 | "execution_count": 5,
104 | "id": "12941de5",
105 | "metadata": {},
106 | "outputs": [],
107 | "source": [
108 | "import pandas as pd"
109 | ]
110 | },
111 | {
112 | "cell_type": "code",
113 | "execution_count": 6,
114 | "id": "c6cde718",
115 | "metadata": {},
116 | "outputs": [
117 | {
118 | "data": {
119 | "text/html": [
120 | "\n",
121 | "\n",
134 | "
\n",
135 | " \n",
136 | " \n",
137 | " | \n",
138 | " age | \n",
139 | "
\n",
140 | " \n",
141 | " \n",
142 | " \n",
143 | " | 0 | \n",
144 | " 21 | \n",
145 | "
\n",
146 | " \n",
147 | " | 1 | \n",
148 | " 25 | \n",
149 | "
\n",
150 | " \n",
151 | " | 2 | \n",
152 | " 19 | \n",
153 | "
\n",
154 | " \n",
155 | " | 3 | \n",
156 | " 19 | \n",
157 | "
\n",
158 | " \n",
159 | " | 4 | \n",
160 | " 25 | \n",
161 | "
\n",
162 | " \n",
163 | "
\n",
164 | "
"
165 | ],
166 | "text/plain": [
167 | " age\n",
168 | "0 21\n",
169 | "1 25\n",
170 | "2 19\n",
171 | "3 19\n",
172 | "4 25"
173 | ]
174 | },
175 | "execution_count": 6,
176 | "metadata": {},
177 | "output_type": "execute_result"
178 | }
179 | ],
180 | "source": [
181 | "df = pd.DataFrame(ages, columns=['age'])\n",
182 | "df.head()"
183 | ]
184 | },
185 | {
186 | "cell_type": "code",
187 | "execution_count": 7,
188 | "id": "59ee5f33",
189 | "metadata": {},
190 | "outputs": [
191 | {
192 | "data": {
193 | "text/plain": [
194 | "22.88888888888889"
195 | ]
196 | },
197 | "execution_count": 7,
198 | "metadata": {},
199 | "output_type": "execute_result"
200 | }
201 | ],
202 | "source": [
203 | "df.age.mean()"
204 | ]
205 | },
206 | {
207 | "cell_type": "code",
208 | "execution_count": 8,
209 | "id": "a463870d",
210 | "metadata": {},
211 | "outputs": [
212 | {
213 | "data": {
214 | "text/plain": [
215 | "24.0"
216 | ]
217 | },
218 | "execution_count": 8,
219 | "metadata": {},
220 | "output_type": "execute_result"
221 | }
222 | ],
223 | "source": [
224 | "df.age.median()"
225 | ]
226 | },
227 | {
228 | "cell_type": "code",
229 | "execution_count": 9,
230 | "id": "1a34ffa0",
231 | "metadata": {},
232 | "outputs": [
233 | {
234 | "data": {
235 | "text/plain": [
236 | "0 19\n",
237 | "1 24\n",
238 | "2 25\n",
239 | "Name: age, dtype: int64"
240 | ]
241 | },
242 | "execution_count": 9,
243 | "metadata": {},
244 | "output_type": "execute_result"
245 | }
246 | ],
247 | "source": [
248 | "df.age.mode()"
249 | ]
250 | },
251 | {
252 | "cell_type": "code",
253 | "execution_count": null,
254 | "id": "f86a328a",
255 | "metadata": {},
256 | "outputs": [],
257 | "source": []
258 | }
259 | ],
260 | "metadata": {
261 | "kernelspec": {
262 | "display_name": "Python 3 (ipykernel)",
263 | "language": "python",
264 | "name": "python3"
265 | },
266 | "language_info": {
267 | "codemirror_mode": {
268 | "name": "ipython",
269 | "version": 3
270 | },
271 | "file_extension": ".py",
272 | "mimetype": "text/x-python",
273 | "name": "python",
274 | "nbconvert_exporter": "python",
275 | "pygments_lexer": "ipython3",
276 | "version": "3.9.13"
277 | }
278 | },
279 | "nbformat": 4,
280 | "nbformat_minor": 5
281 | }
282 |
--------------------------------------------------------------------------------
/Standard Scaling using Python.ipynb:
--------------------------------------------------------------------------------
1 | {
2 | "cells": [
3 | {
4 | "cell_type": "code",
5 | "execution_count": 1,
6 | "id": "20c48bc4",
7 | "metadata": {},
8 | "outputs": [],
9 | "source": [
10 | "import pandas as pd"
11 | ]
12 | },
13 | {
14 | "cell_type": "code",
15 | "execution_count": 2,
16 | "id": "cf6184fa",
17 | "metadata": {},
18 | "outputs": [
19 | {
20 | "data": {
21 | "text/html": [
22 | "\n",
23 | "\n",
36 | "
\n",
37 | " \n",
38 | " \n",
39 | " | \n",
40 | " Feature 1 | \n",
41 | " Feature 2 | \n",
42 | "
\n",
43 | " \n",
44 | " \n",
45 | " \n",
46 | " | 0 | \n",
47 | " 1 | \n",
48 | " 6 | \n",
49 | "
\n",
50 | " \n",
51 | " | 1 | \n",
52 | " 20 | \n",
53 | " 7 | \n",
54 | "
\n",
55 | " \n",
56 | " | 2 | \n",
57 | " 3 | \n",
58 | " 18 | \n",
59 | "
\n",
60 | " \n",
61 | " | 3 | \n",
62 | " 40 | \n",
63 | " 19 | \n",
64 | "
\n",
65 | " \n",
66 | " | 4 | \n",
67 | " 5 | \n",
68 | " 10 | \n",
69 | "
\n",
70 | " \n",
71 | "
\n",
72 | "
"
73 | ],
74 | "text/plain": [
75 | " Feature 1 Feature 2\n",
76 | "0 1 6\n",
77 | "1 20 7\n",
78 | "2 3 18\n",
79 | "3 40 19\n",
80 | "4 5 10"
81 | ]
82 | },
83 | "execution_count": 2,
84 | "metadata": {},
85 | "output_type": "execute_result"
86 | }
87 | ],
88 | "source": [
89 | "data = {'Feature 1': [1, 20, 3, 40, 5],\n",
90 | " 'Feature 2': [6, 7, 18, 19, 10]}\n",
91 | "\n",
92 | "df = pd.DataFrame(data)\n",
93 | "df.head()"
94 | ]
95 | },
96 | {
97 | "cell_type": "code",
98 | "execution_count": 3,
99 | "id": "8fa7404f",
100 | "metadata": {},
101 | "outputs": [],
102 | "source": [
103 | "def standardize_data(data):\n",
104 | " mean = data.mean()\n",
105 | " std_dev = data.std() # delta degree of freedom ddof=0\n",
106 | " standardized_data_raw = (data - mean) / std_dev\n",
107 | " return standardized_data_raw"
108 | ]
109 | },
110 | {
111 | "cell_type": "code",
112 | "execution_count": 4,
113 | "id": "f2c02d59",
114 | "metadata": {},
115 | "outputs": [],
116 | "source": [
117 | "standardized_df_raw = df.apply(standardize_data)"
118 | ]
119 | },
120 | {
121 | "cell_type": "code",
122 | "execution_count": 5,
123 | "id": "f22c9db0",
124 | "metadata": {},
125 | "outputs": [
126 | {
127 | "name": "stdout",
128 | "output_type": "stream",
129 | "text": [
130 | "Original DataFrame:\n",
131 | " Feature 1 Feature 2\n",
132 | "0 1 6\n",
133 | "1 20 7\n",
134 | "2 3 18\n",
135 | "3 40 19\n",
136 | "4 5 10\n",
137 | "\n",
138 | "Standardized DataFrame:\n",
139 | " Feature 1 Feature 2\n",
140 | "0 -0.777975 -0.979796\n",
141 | "1 0.376832 -0.816497\n",
142 | "2 -0.656417 0.979796\n",
143 | "3 1.592418 1.143095\n",
144 | "4 -0.534858 -0.326599\n"
145 | ]
146 | }
147 | ],
148 | "source": [
149 | "print(\"Original DataFrame:\")\n",
150 | "print(df)\n",
151 | "print(\"\\nStandardized DataFrame:\")\n",
152 | "print(standardized_df_raw)"
153 | ]
154 | },
155 | {
156 | "cell_type": "code",
157 | "execution_count": 6,
158 | "id": "3fb91ce8",
159 | "metadata": {},
160 | "outputs": [
161 | {
162 | "data": {
163 | "text/html": [
164 | "\n",
165 | "\n",
178 | "
\n",
179 | " \n",
180 | " \n",
181 | " | \n",
182 | " Feature 1 | \n",
183 | " Feature 2 | \n",
184 | "
\n",
185 | " \n",
186 | " \n",
187 | " \n",
188 | " | 0 | \n",
189 | " 1 | \n",
190 | " 6 | \n",
191 | "
\n",
192 | " \n",
193 | " | 1 | \n",
194 | " 20 | \n",
195 | " 7 | \n",
196 | "
\n",
197 | " \n",
198 | " | 2 | \n",
199 | " 3 | \n",
200 | " 18 | \n",
201 | "
\n",
202 | " \n",
203 | " | 3 | \n",
204 | " 40 | \n",
205 | " 19 | \n",
206 | "
\n",
207 | " \n",
208 | " | 4 | \n",
209 | " 5 | \n",
210 | " 10 | \n",
211 | "
\n",
212 | " \n",
213 | "
\n",
214 | "
"
215 | ],
216 | "text/plain": [
217 | " Feature 1 Feature 2\n",
218 | "0 1 6\n",
219 | "1 20 7\n",
220 | "2 3 18\n",
221 | "3 40 19\n",
222 | "4 5 10"
223 | ]
224 | },
225 | "execution_count": 6,
226 | "metadata": {},
227 | "output_type": "execute_result"
228 | }
229 | ],
230 | "source": [
231 | "df.head()"
232 | ]
233 | },
234 | {
235 | "cell_type": "code",
236 | "execution_count": 7,
237 | "id": "dcfedb7b",
238 | "metadata": {},
239 | "outputs": [
240 | {
241 | "data": {
242 | "text/html": [
243 | "\n",
244 | "\n",
257 | "
\n",
258 | " \n",
259 | " \n",
260 | " | \n",
261 | " Feature 1 | \n",
262 | " Feature 2 | \n",
263 | "
\n",
264 | " \n",
265 | " \n",
266 | " \n",
267 | " | 0 | \n",
268 | " -0.777975 | \n",
269 | " -0.979796 | \n",
270 | "
\n",
271 | " \n",
272 | " | 1 | \n",
273 | " 0.376832 | \n",
274 | " -0.816497 | \n",
275 | "
\n",
276 | " \n",
277 | " | 2 | \n",
278 | " -0.656417 | \n",
279 | " 0.979796 | \n",
280 | "
\n",
281 | " \n",
282 | " | 3 | \n",
283 | " 1.592418 | \n",
284 | " 1.143095 | \n",
285 | "
\n",
286 | " \n",
287 | " | 4 | \n",
288 | " -0.534858 | \n",
289 | " -0.326599 | \n",
290 | "
\n",
291 | " \n",
292 | "
\n",
293 | "
"
294 | ],
295 | "text/plain": [
296 | " Feature 1 Feature 2\n",
297 | "0 -0.777975 -0.979796\n",
298 | "1 0.376832 -0.816497\n",
299 | "2 -0.656417 0.979796\n",
300 | "3 1.592418 1.143095\n",
301 | "4 -0.534858 -0.326599"
302 | ]
303 | },
304 | "execution_count": 7,
305 | "metadata": {},
306 | "output_type": "execute_result"
307 | }
308 | ],
309 | "source": [
310 | "standardized_df_raw.head()"
311 | ]
312 | },
313 | {
314 | "cell_type": "code",
315 | "execution_count": 8,
316 | "id": "daaa1204",
317 | "metadata": {},
318 | "outputs": [
319 | {
320 | "data": {
321 | "text/plain": [
322 | "1.0"
323 | ]
324 | },
325 | "execution_count": 8,
326 | "metadata": {},
327 | "output_type": "execute_result"
328 | }
329 | ],
330 | "source": [
331 | "standardized_df_raw['Feature 1'].mean() + 1"
332 | ]
333 | },
334 | {
335 | "cell_type": "code",
336 | "execution_count": 9,
337 | "id": "56277f06",
338 | "metadata": {},
339 | "outputs": [
340 | {
341 | "data": {
342 | "text/plain": [
343 | "0.9999999999999999"
344 | ]
345 | },
346 | "execution_count": 9,
347 | "metadata": {},
348 | "output_type": "execute_result"
349 | }
350 | ],
351 | "source": [
352 | "standardized_df_raw['Feature 1'].std()"
353 | ]
354 | },
355 | {
356 | "cell_type": "markdown",
357 | "id": "690b8116",
358 | "metadata": {},
359 | "source": [
360 | "# Sklearn"
361 | ]
362 | },
363 | {
364 | "cell_type": "code",
365 | "execution_count": 10,
366 | "id": "11c15507",
367 | "metadata": {},
368 | "outputs": [],
369 | "source": [
370 | "from sklearn.preprocessing import StandardScaler"
371 | ]
372 | },
373 | {
374 | "cell_type": "code",
375 | "execution_count": 11,
376 | "id": "6f37ac57",
377 | "metadata": {},
378 | "outputs": [
379 | {
380 | "data": {
381 | "text/html": [
382 | "\n",
383 | "\n",
396 | "
\n",
397 | " \n",
398 | " \n",
399 | " | \n",
400 | " Feature 1 | \n",
401 | " Feature 2 | \n",
402 | "
\n",
403 | " \n",
404 | " \n",
405 | " \n",
406 | " | 0 | \n",
407 | " 1 | \n",
408 | " 6 | \n",
409 | "
\n",
410 | " \n",
411 | " | 1 | \n",
412 | " 20 | \n",
413 | " 7 | \n",
414 | "
\n",
415 | " \n",
416 | " | 2 | \n",
417 | " 3 | \n",
418 | " 18 | \n",
419 | "
\n",
420 | " \n",
421 | " | 3 | \n",
422 | " 40 | \n",
423 | " 19 | \n",
424 | "
\n",
425 | " \n",
426 | " | 4 | \n",
427 | " 5 | \n",
428 | " 10 | \n",
429 | "
\n",
430 | " \n",
431 | "
\n",
432 | "
"
433 | ],
434 | "text/plain": [
435 | " Feature 1 Feature 2\n",
436 | "0 1 6\n",
437 | "1 20 7\n",
438 | "2 3 18\n",
439 | "3 40 19\n",
440 | "4 5 10"
441 | ]
442 | },
443 | "execution_count": 11,
444 | "metadata": {},
445 | "output_type": "execute_result"
446 | }
447 | ],
448 | "source": [
449 | "df"
450 | ]
451 | },
452 | {
453 | "cell_type": "code",
454 | "execution_count": 12,
455 | "id": "ea267703",
456 | "metadata": {},
457 | "outputs": [],
458 | "source": [
459 | "scaler = StandardScaler()\n",
460 | "standardized_data = scaler.fit_transform(df)\n",
461 | "standardized_df = pd.DataFrame(standardized_data, columns=df.columns)"
462 | ]
463 | },
464 | {
465 | "cell_type": "code",
466 | "execution_count": 13,
467 | "id": "c68cbfde",
468 | "metadata": {},
469 | "outputs": [
470 | {
471 | "name": "stdout",
472 | "output_type": "stream",
473 | "text": [
474 | "Original DataFrame:\n",
475 | " Feature 1 Feature 2\n",
476 | "0 1 6\n",
477 | "1 20 7\n",
478 | "2 3 18\n",
479 | "3 40 19\n",
480 | "4 5 10\n",
481 | "\n",
482 | "Standardized DataFrame: raw code\n",
483 | " Feature 1 Feature 2\n",
484 | "0 -0.777975 -0.979796\n",
485 | "1 0.376832 -0.816497\n",
486 | "2 -0.656417 0.979796\n",
487 | "3 1.592418 1.143095\n",
488 | "4 -0.534858 -0.326599\n",
489 | "\n",
490 | "Standardized DataFrame: sklearn\n",
491 | " Feature 1 Feature 2\n",
492 | "0 -0.869803 -1.095445\n",
493 | "1 0.421311 -0.912871\n",
494 | "2 -0.733896 1.095445\n",
495 | "3 1.780378 1.278019\n",
496 | "4 -0.597989 -0.365148\n"
497 | ]
498 | }
499 | ],
500 | "source": [
501 | "print(\"Original DataFrame:\")\n",
502 | "print(df)\n",
503 | "\n",
504 | "print(\"\\nStandardized DataFrame: raw code\")\n",
505 | "print(standardized_df_raw)\n",
506 | "\n",
507 | "print(\"\\nStandardized DataFrame: sklearn\")\n",
508 | "print(standardized_df)"
509 | ]
510 | },
511 | {
512 | "cell_type": "code",
513 | "execution_count": null,
514 | "id": "f764d2ec",
515 | "metadata": {},
516 | "outputs": [],
517 | "source": []
518 | },
519 | {
520 | "cell_type": "code",
521 | "execution_count": null,
522 | "id": "b1af06be",
523 | "metadata": {},
524 | "outputs": [],
525 | "source": []
526 | }
527 | ],
528 | "metadata": {
529 | "kernelspec": {
530 | "display_name": "Python 3 (ipykernel)",
531 | "language": "python",
532 | "name": "python3"
533 | },
534 | "language_info": {
535 | "codemirror_mode": {
536 | "name": "ipython",
537 | "version": 3
538 | },
539 | "file_extension": ".py",
540 | "mimetype": "text/x-python",
541 | "name": "python",
542 | "nbconvert_exporter": "python",
543 | "pygments_lexer": "ipython3",
544 | "version": "3.9.13"
545 | }
546 | },
547 | "nbformat": 4,
548 | "nbformat_minor": 5
549 | }
550 |
--------------------------------------------------------------------------------
/Datasets/linear_data.csv:
--------------------------------------------------------------------------------
1 | x,y
2 | 0.0,4.4476917012367645
3 | 0.02004008016032064,5.024612031683661
4 | 0.04008016032064128,5.869592917849527
5 | 0.06012024048096192,4.722490205935278
6 | 0.08016032064128256,4.877100714416455
7 | 0.1002004008016032,5.046555162919705
8 | 0.12024048096192384,5.3749929985119715
9 | 0.1402805611222445,5.54302005406743
10 | 0.16032064128256512,5.954347109974459
11 | 0.18036072144288576,5.610470559620101
12 | 0.2004008016032064,5.369775040307245
13 | 0.22044088176352705,6.070465328332461
14 | 0.24048096192384769,5.833017434918486
15 | 0.2605210420841683,4.773202326039828
16 | 0.280561122244489,6.824306364666977
17 | 0.3006012024048096,6.486163098907986
18 | 0.32064128256513025,5.557175453746723
19 | 0.3406813627254509,5.87031777632014
20 | 0.3607214428857715,6.383622260769463
21 | 0.3807615230460922,5.675422649743743
22 | 0.4008016032064128,6.166779101601335
23 | 0.42084168336673344,6.393972603519205
24 | 0.4408817635270541,5.374350573186888
25 | 0.4609218436873747,5.620677760583318
26 | 0.48096192384769537,6.422628046600681
27 | 0.501002004008016,6.232411246590447
28 | 0.5210420841683366,6.503982448493647
29 | 0.5410821643286573,6.015880321330456
30 | 0.561122244488978,5.97774188350084
31 | 0.5811623246492986,5.163004911506911
32 | 0.6012024048096192,5.629404596365517
33 | 0.6212424849699398,6.266018017269126
34 | 0.6412825651302605,6.694843740042638
35 | 0.6613226452905812,6.58823447384901
36 | 0.6813627254509018,6.298604463887953
37 | 0.7014028056112224,6.266919827977096
38 | 0.721442885771543,6.5514755878622255
39 | 0.7414829659318637,6.522071522409804
40 | 0.7615230460921844,7.225318849654224
41 | 0.781563126252505,6.636346637744135
42 | 0.8016032064128256,5.862583431727002
43 | 0.8216432865731462,6.007007505630135
44 | 0.8416833667334669,7.442746401948724
45 | 0.8617234468937875,6.1378666630625345
46 | 0.8817635270541082,7.145775780624983
47 | 0.9018036072144289,6.669420846824168
48 | 0.9218436873747494,6.758808227798256
49 | 0.9418837675350701,6.81670114368593
50 | 0.9619238476953907,7.534540175120381
51 | 0.9819639278557114,6.86750694143944
52 | 1.002004008016032,6.987348374609487
53 | 1.0220440881763526,6.278686427652959
54 | 1.0420841683366733,7.187513592527349
55 | 1.062124248496994,7.389769750483017
56 | 1.0821643286573146,7.283901447641522
57 | 1.1022044088176353,7.903356948178638
58 | 1.122244488977956,7.272074655346028
59 | 1.1422845691382766,7.434057866336062
60 | 1.1623246492985972,8.148901303731284
61 | 1.1823647294589177,6.589722364238762
62 | 1.2024048096192383,7.176896945338792
63 | 1.222444889779559,8.15796915556875
64 | 1.2424849699398797,7.9530345140353
65 | 1.2625250501002003,7.8642401496206364
66 | 1.282565130260521,7.981455630253281
67 | 1.3026052104208417,7.7687435254021935
68 | 1.3226452905811623,8.46108929492846
69 | 1.342685370741483,7.874250326348325
70 | 1.3627254509018036,7.845384454751247
71 | 1.3827655310621243,7.845010399187069
72 | 1.4028056112224447,7.902043200220083
73 | 1.4228456913827654,7.267182742357597
74 | 1.442885771543086,8.271108070317844
75 | 1.4629258517034067,7.86063183651515
76 | 1.4829659318637274,8.876889412657658
77 | 1.503006012024048,7.9681867887538855
78 | 1.5230460921843687,8.256551326456565
79 | 1.5430861723446894,8.209473437820046
80 | 1.56312625250501,7.813473987455394
81 | 1.5831663326653307,8.662401079589914
82 | 1.6032064128256511,9.15894464593131
83 | 1.6232464929859718,8.239104376142022
84 | 1.6432865731462925,8.136333753499875
85 | 1.6633266533066131,8.149138941085539
86 | 1.6833667334669338,7.420552520275197
87 | 1.7034068136272544,8.317907055403003
88 | 1.723446893787575,8.572392845579312
89 | 1.7434869739478958,9.014352910485933
90 | 1.7635270541082164,9.007077978791397
91 | 1.783567134268537,8.358884727318728
92 | 1.8036072144288577,8.468802931470773
93 | 1.8236472945891782,9.209247241985576
94 | 1.8436873747494988,8.600642800962559
95 | 1.8637274549098195,8.47244013994183
96 | 1.8837675350701402,9.463794294857417
97 | 1.9038076152304608,9.32640806398624
98 | 1.9238476953907815,8.857091286668693
99 | 1.9438877755511021,8.590886827212872
100 | 1.9639278557114228,7.921915551800491
101 | 1.9839679358717435,9.262787674530848
102 | 2.004008016032064,8.559831170788037
103 | 2.024048096192385,8.066730187814393
104 | 2.0440881763527052,9.880586616379919
105 | 2.064128256513026,9.452240408530997
106 | 2.0841683366733466,8.598832576788212
107 | 2.1042084168336674,8.601216142187706
108 | 2.124248496993988,9.683977885073785
109 | 2.1442885771543083,8.849591846040681
110 | 2.164328657314629,9.9767322483932
111 | 2.1843687374749496,9.676967131262977
112 | 2.2044088176352705,9.677115895553953
113 | 2.224448897795591,9.651245523398334
114 | 2.244488977955912,9.58470339192378
115 | 2.2645290581162323,9.96931371582102
116 | 2.284569138276553,9.342098095295304
117 | 2.3046092184368736,9.652194423590938
118 | 2.3246492985971945,10.025271891032986
119 | 2.344689378757515,9.970873616808094
120 | 2.3647294589178354,9.131965515201342
121 | 2.3847695390781563,9.519334244504181
122 | 2.4048096192384767,9.936020991186531
123 | 2.4248496993987976,9.645692044277647
124 | 2.444889779559118,10.777108839604901
125 | 2.464929859719439,9.73328312206182
126 | 2.4849699398797593,9.888830655971173
127 | 2.50501002004008,10.394735129168811
128 | 2.5250501002004007,10.21536657201826
129 | 2.5450901803607215,10.017543132119059
130 | 2.565130260521042,9.752013756601709
131 | 2.5851703406813624,10.321097710061107
132 | 2.6052104208416833,10.729969061872563
133 | 2.6252505010020037,10.490048614053121
134 | 2.6452905811623246,9.901489401596589
135 | 2.665330661322645,11.199048801133646
136 | 2.685370741482966,9.647452537947986
137 | 2.7054108216432864,9.619478822385178
138 | 2.7254509018036073,10.93118041583583
139 | 2.7454909819639277,10.6039022032292
140 | 2.7655310621242486,10.256312851096476
141 | 2.785571142284569,10.021856920791473
142 | 2.8056112224448895,11.771622364529929
143 | 2.8256513026052104,10.709848041288142
144 | 2.845691382765531,10.958483350953948
145 | 2.8657314629258517,10.890405474470795
146 | 2.885771543086172,10.988947065037923
147 | 2.905811623246493,11.081670476755388
148 | 2.9258517034068134,11.217915411691065
149 | 2.9458917835671343,10.704172366753932
150 | 2.9659318637274548,10.786042734278988
151 | 2.9859719438877756,10.101432483596101
152 | 3.006012024048096,10.621871844845423
153 | 3.0260521042084165,11.18766060664019
154 | 3.0460921843687374,11.61469605648882
155 | 3.066132264529058,11.431784292246208
156 | 3.0861723446893787,11.001998517439793
157 | 3.106212424849699,10.580838393656823
158 | 3.12625250501002,9.863825437306325
159 | 3.1462925851703405,11.868452157731081
160 | 3.1663326653306614,11.038050837406248
161 | 3.186372745490982,11.148512987879933
162 | 3.2064128256513023,11.478612635256638
163 | 3.226452905811623,10.750125787927301
164 | 3.2464929859719436,11.31809488188812
165 | 3.2665330661322645,12.544802107149517
166 | 3.286573146292585,11.82583976187384
167 | 3.306613226452906,11.79285103116254
168 | 3.3266533066132262,10.862059374235573
169 | 3.346693386773547,12.815187720838413
170 | 3.3667334669338675,11.022069479554563
171 | 3.3867735470941884,12.734709471910577
172 | 3.406813627254509,10.756099246915115
173 | 3.4268537074148293,12.556390134191869
174 | 3.44689378757515,12.702814709650413
175 | 3.4669338677354706,11.521663174807022
176 | 3.4869739478957915,12.185238081928023
177 | 3.507014028056112,12.287768342164556
178 | 3.527054108216433,11.647210974817213
179 | 3.5470941883767533,11.369629571385042
180 | 3.567134268537074,11.475409865503767
181 | 3.5871743486973946,12.444852807374692
182 | 3.6072144288577155,12.171871056455728
183 | 3.627254509018036,11.97235850138499
184 | 3.6472945891783564,12.777973183939944
185 | 3.6673346693386772,12.588703293373094
186 | 3.6873747494989977,11.99701813581518
187 | 3.7074148296593186,11.814228899809944
188 | 3.727454909819639,12.716540688983317
189 | 3.74749498997996,12.22619829568089
190 | 3.7675350701402803,12.58467257154631
191 | 3.787575150300601,13.36329978691506
192 | 3.8076152304609217,12.866394580959232
193 | 3.8276553106212425,12.224177121365866
194 | 3.847695390781563,12.775721376473014
195 | 3.8677354709418834,12.259148465476073
196 | 3.8877755511022043,13.57981218017877
197 | 3.9078156312625247,12.534841887723438
198 | 3.9278557114228456,12.9593467963325
199 | 3.947895791583166,13.049657870506048
200 | 3.967935871743487,13.015496977673825
201 | 3.9879759519038074,11.996677426239346
202 | 4.008016032064128,12.29282153213659
203 | 4.028056112224449,12.829937086664351
204 | 4.04809619238477,13.255908301435305
205 | 4.06813627254509,13.067382937947293
206 | 4.0881763527054105,12.697778968835312
207 | 4.108216432865731,12.542220706170612
208 | 4.128256513026052,13.055734253802433
209 | 4.148296593186372,13.062355164032883
210 | 4.168336673346693,13.593091575489765
211 | 4.188376753507014,13.213594275934868
212 | 4.208416833667335,13.718187495549335
213 | 4.228456913827655,13.159588942795107
214 | 4.248496993987976,13.369015153368817
215 | 4.268537074148297,13.363050958475284
216 | 4.288577154308617,13.185970825166189
217 | 4.3086172344689375,13.92979379715474
218 | 4.328657314629258,13.250516630711264
219 | 4.348697394789579,13.43657403459385
220 | 4.368737474949899,13.7009151269257
221 | 4.38877755511022,13.12886528224207
222 | 4.408817635270541,13.655167791380833
223 | 4.428857715430862,13.50206225099033
224 | 4.448897795591182,13.703718494941239
225 | 4.468937875751503,13.907911750167461
226 | 4.488977955911824,13.577999100253315
227 | 4.509018036072144,13.90799818223411
228 | 4.529058116232465,14.712450608641019
229 | 4.5490981963927855,14.085297113658328
230 | 4.569138276553106,14.710907639615826
231 | 4.589178356713426,14.351603934430234
232 | 4.609218436873747,14.605517178656903
233 | 4.629258517034068,13.871287549682723
234 | 4.649298597194389,14.351050776931535
235 | 4.669338677354709,14.405633816017156
236 | 4.68937875751503,14.072444645592592
237 | 4.709418837675351,14.00742351320356
238 | 4.729458917835671,13.713785141717693
239 | 4.749498997995992,15.2470678144678
240 | 4.7695390781563125,14.052876711636376
241 | 4.789579158316633,15.252268853244416
242 | 4.809619238476953,14.38549189012498
243 | 4.829659318637274,14.228071987412182
244 | 4.849699398797595,15.01065836774769
245 | 4.869739478957916,14.423882987042404
246 | 4.889779559118236,15.063788577698611
247 | 4.909819639278557,14.653233396131009
248 | 4.929859719438878,15.09993168693665
249 | 4.949899799599198,14.415706567244843
250 | 4.969939879759519,15.355555288511422
251 | 4.98997995991984,15.223946261171182
252 | 5.01002004008016,14.56021473512899
253 | 5.03006012024048,16.38158810098833
254 | 5.050100200400801,15.37026191400185
255 | 5.070140280561122,16.285514096387512
256 | 5.090180360721443,15.980494630817265
257 | 5.110220440881763,15.126023491654633
258 | 5.130260521042084,15.054385164781896
259 | 5.150300601202405,15.09887161069441
260 | 5.170340681362725,14.425667087511545
261 | 5.190380761523046,15.032843963371318
262 | 5.210420841683367,15.544224695356718
263 | 5.2304609218436875,16.22390062412978
264 | 5.2505010020040075,15.114616062518914
265 | 5.270541082164328,15.982110464010162
266 | 5.290581162324649,14.954865653897638
267 | 5.31062124248497,15.328082472364374
268 | 5.33066132264529,15.432502348145817
269 | 5.350701402805611,15.88730834635997
270 | 5.370741482965932,15.97013778929227
271 | 5.390781563126252,16.262733998659677
272 | 5.410821643286573,16.207061766775613
273 | 5.430861723446894,15.983307554595033
274 | 5.4509018036072145,16.09698607896874
275 | 5.4709418837675345,16.736149113083837
276 | 5.490981963927855,15.726500837239579
277 | 5.511022044088176,16.409408247709933
278 | 5.531062124248497,15.158052285247868
279 | 5.551102204408817,16.30787153026644
280 | 5.571142284569138,15.900659797898722
281 | 5.591182364729459,16.183650320674673
282 | 5.611222444889779,16.74248801230641
283 | 5.6312625250501,16.3448469548634
284 | 5.651302605210421,16.745198981025307
285 | 5.671342685370742,17.079567778310686
286 | 5.691382765531062,16.577312515494985
287 | 5.7114228456913825,17.00836622369301
288 | 5.731462925851703,16.299645362863803
289 | 5.751503006012024,16.498901070889243
290 | 5.771543086172344,16.281776464145448
291 | 5.791583166332665,17.104655129988515
292 | 5.811623246492986,16.830292169882767
293 | 5.831663326653306,16.40970942235915
294 | 5.851703406813627,16.78074123045042
295 | 5.871743486973948,17.264271168357187
296 | 5.891783567134269,16.76393313874956
297 | 5.911823647294589,16.3491808891643
298 | 5.9318637274549095,16.929683332803528
299 | 5.95190380761523,15.913524819695994
300 | 5.971943887775551,17.32827309775084
301 | 5.991983967935871,16.7733041422094
302 | 6.012024048096192,16.78939272805283
303 | 6.032064128256513,17.50197609590278
304 | 6.052104208416833,16.42162697822108
305 | 6.072144288577154,18.117837898564485
306 | 6.092184368737475,16.944247716605837
307 | 6.112224448897796,16.962823426103142
308 | 6.132264529058116,17.77514142969981
309 | 6.152304609218437,17.658956854992088
310 | 6.1723446893787575,18.57030423829505
311 | 6.192384769539078,17.279166547262395
312 | 6.212424849699398,17.364646380066592
313 | 6.232464929859719,16.725271869737814
314 | 6.25250501002004,17.33895888136567
315 | 6.27254509018036,17.184374532574843
316 | 6.292585170340681,17.36078683412861
317 | 6.312625250501002,16.753156622725026
318 | 6.332665330661323,18.495634441269903
319 | 6.352705410821643,16.997109080430462
320 | 6.372745490981964,16.34438958276807
321 | 6.3927855711422845,17.191358931493056
322 | 6.4128256513026045,17.523731526207133
323 | 6.432865731462925,17.29095443129729
324 | 6.452905811623246,18.454963393612747
325 | 6.472945891783567,17.876972194269086
326 | 6.492985971943887,17.998664746091006
327 | 6.513026052104208,18.331247986361124
328 | 6.533066132264529,18.20913852801812
329 | 6.55310621242485,18.595496073572722
330 | 6.57314629258517,17.591553808352266
331 | 6.593186372745491,17.912613695151265
332 | 6.613226452905812,18.559436478846393
333 | 6.633266533066132,16.999255835090146
334 | 6.6533066132264524,17.619020986794283
335 | 6.673346693386773,18.597189502863518
336 | 6.693386773547094,18.146649029596723
337 | 6.713426853707414,18.894907482469677
338 | 6.733466933867735,18.871524016162052
339 | 6.753507014028056,17.90796758796059
340 | 6.773547094188377,18.750422732110195
341 | 6.793587174348697,19.188023276531148
342 | 6.813627254509018,18.70097170984352
343 | 6.833667334669339,18.178602230715743
344 | 6.853707414829659,19.147109800616
345 | 6.8737474949899795,19.065207253256958
346 | 6.8937875751503,19.058880542049998
347 | 6.913827655310621,19.18562475733974
348 | 6.933867735470941,17.37042904082807
349 | 6.953907815631262,19.348284411803007
350 | 6.973947895791583,19.851961696872653
351 | 6.993987975951904,19.20629518921845
352 | 7.014028056112224,19.12442061047431
353 | 7.034068136272545,19.41635560924081
354 | 7.054108216432866,19.27732916970829
355 | 7.074148296593186,19.47418722403668
356 | 7.0941883767535066,19.18911225362972
357 | 7.114228456913827,18.845104486559208
358 | 7.134268537074148,18.76637571804099
359 | 7.154308617234468,18.809521370353004
360 | 7.174348697394789,18.662176119314132
361 | 7.19438877755511,18.854906549600667
362 | 7.214428857715431,20.309490779140795
363 | 7.234468937875751,19.845985707579622
364 | 7.254509018036072,19.196504340729806
365 | 7.274549098196393,19.353901849400028
366 | 7.294589178356713,19.645457122166654
367 | 7.314629258517034,19.301486002291888
368 | 7.3346693386773545,19.703097105941872
369 | 7.354709418837675,20.098220906626807
370 | 7.374749498997995,19.731627631221905
371 | 7.394789579158316,19.95758702964763
372 | 7.414829659318637,20.272905088317085
373 | 7.434869739478958,19.733673600948812
374 | 7.454909819639278,20.052214938845736
375 | 7.474949899799599,19.79521100315752
376 | 7.49498997995992,19.97571552500263
377 | 7.51503006012024,19.867694987698997
378 | 7.535070140280561,19.80570535378306
379 | 7.5551102204408815,20.197076367375274
380 | 7.575150300601202,20.43357325911151
381 | 7.595190380761522,20.263532984523568
382 | 7.615230460921843,20.479824400999654
383 | 7.635270541082164,19.901575192043712
384 | 7.655310621242485,19.70875364638508
385 | 7.675350701402805,20.559223154289413
386 | 7.695390781563126,20.73472225871363
387 | 7.715430861723447,20.455790356746807
388 | 7.735470941883767,21.144959773979892
389 | 7.755511022044088,20.964871443082124
390 | 7.775551102204409,21.891387624793317
391 | 7.7955911823647295,20.490778107731625
392 | 7.8156312625250495,20.131838127002414
393 | 7.83567134268537,20.301274290000983
394 | 7.855711422845691,20.42867394250405
395 | 7.875751503006012,20.98951869773108
396 | 7.895791583166332,19.712548884352035
397 | 7.915831663326653,21.490938835698724
398 | 7.935871743486974,20.752095191402777
399 | 7.955911823647294,20.788426868400215
400 | 7.975951903807615,20.412232224602732
401 | 7.995991983967936,20.93487119221078
402 | 8.016032064128256,21.03868401209028
403 | 8.036072144288577,21.011171824777016
404 | 8.056112224448897,21.28175407686901
405 | 8.076152304609218,20.857488588242923
406 | 8.09619238476954,20.744476889333665
407 | 8.11623246492986,21.50662899510871
408 | 8.13627254509018,21.321878817088255
409 | 8.1563126252505,21.411215778099685
410 | 8.176352705410821,21.882219038042624
411 | 8.196392785571142,20.88150337551194
412 | 8.216432865731463,21.005245502837493
413 | 8.236472945891784,22.101555717198064
414 | 8.256513026052104,20.77158437331719
415 | 8.276553106212425,20.898400139259344
416 | 8.296593186372744,22.00211728833799
417 | 8.316633266533065,21.75236662907715
418 | 8.336673346693386,21.72596276191641
419 | 8.356713426853707,21.667597149657222
420 | 8.376753507014028,21.76914078754184
421 | 8.396793587174349,21.74753111700272
422 | 8.41683366733467,22.511388685966548
423 | 8.436873747494989,21.67467343061494
424 | 8.45691382765531,21.83314088717173
425 | 8.47695390781563,22.851132218243798
426 | 8.496993987975952,22.007742826966822
427 | 8.517034068136272,23.150076331035134
428 | 8.537074148296593,22.02165844608371
429 | 8.557114228456914,22.79793594814391
430 | 8.577154308617233,21.326636598079627
431 | 8.597194388777554,22.27121100796294
432 | 8.617234468937875,21.442232156300282
433 | 8.637274549098196,22.696776251498687
434 | 8.657314629258517,21.70819535041252
435 | 8.677354709418838,22.49659419602935
436 | 8.697394789579159,22.2536916408131
437 | 8.71743486973948,21.855768146886945
438 | 8.737474949899799,21.665269908350826
439 | 8.75751503006012,22.259509828330184
440 | 8.77755511022044,23.425424943388546
441 | 8.797595190380761,22.448447853316832
442 | 8.817635270541082,23.09388131214009
443 | 8.837675350701403,22.64682926757171
444 | 8.857715430861724,23.153794248568673
445 | 8.877755511022043,21.842055332891828
446 | 8.897795591182364,22.59399702893996
447 | 8.917835671342685,23.310374104581978
448 | 8.937875751503006,22.794124028589422
449 | 8.957915831663327,22.872604021971128
450 | 8.977955911823647,22.7406808677044
451 | 8.997995991983968,23.5706816756515
452 | 9.018036072144287,23.184829321266047
453 | 9.038076152304608,23.09816344269689
454 | 9.05811623246493,23.437759737599503
455 | 9.07815631262525,23.450425089809467
456 | 9.098196392785571,23.30268630878991
457 | 9.118236472945892,24.009988694387207
458 | 9.138276553106213,23.246409339392866
459 | 9.158316633266534,23.45567379051704
460 | 9.178356713426853,23.03523715017726
461 | 9.198396793587174,23.471851200677413
462 | 9.218436873747494,24.23075450936767
463 | 9.238476953907815,23.15532510692126
464 | 9.258517034068136,22.950237655317043
465 | 9.278557114228457,24.055494049866823
466 | 9.298597194388778,23.522811312660718
467 | 9.318637274549097,23.68527665158308
468 | 9.338677354709418,23.65479805757217
469 | 9.358717434869739,23.756995731704244
470 | 9.37875751503006,24.18278037182184
471 | 9.39879759519038,23.378033095081125
472 | 9.418837675350701,23.331788308648658
473 | 9.438877755511022,23.920239579540898
474 | 9.458917835671341,23.114615826617765
475 | 9.478957915831662,23.27138906364236
476 | 9.498997995991983,24.93133756614978
477 | 9.519038076152304,24.41681031733531
478 | 9.539078156312625,24.073128076690743
479 | 9.559118236472946,24.73723994092511
480 | 9.579158316633267,23.638017018223962
481 | 9.599198396793588,24.040595231894248
482 | 9.619238476953907,24.550203758620004
483 | 9.639278557114228,24.72389295494415
484 | 9.659318637274549,24.575095697962986
485 | 9.67935871743487,23.088098031025627
486 | 9.69939879759519,23.91475653635809
487 | 9.719438877755511,24.677411801689455
488 | 9.739478957915832,24.30098216930826
489 | 9.759519038076151,25.78915388653189
490 | 9.779559118236472,25.02239738695649
491 | 9.799599198396793,24.87823933710292
492 | 9.819639278557114,24.080803780240867
493 | 9.839679358717435,24.661710347633413
494 | 9.859719438877756,24.840040859864988
495 | 9.879759519038076,25.323410853140054
496 | 9.899799599198396,25.240164746946608
497 | 9.919839679358716,25.356173955977404
498 | 9.939879759519037,24.417803511133073
499 | 9.959919839679358,25.62591552850803
500 | 9.97995991983968,24.269704463525724
501 | 10.0,24.73204271916692
502 |
--------------------------------------------------------------------------------
/Datasets/nonlinear_data.csv:
--------------------------------------------------------------------------------
1 | x,y
2 | 0.0,-0.1550429345083481
3 | 0.02004008016032064,0.08180935974681355
4 | 0.04008016032064128,-0.014297988564421674
5 | 0.06012024048096192,0.1439783751006325
6 | 0.08016032064128256,0.01955271003373421
7 | 0.1002004008016032,0.14105986395931544
8 | 0.12024048096192384,0.22885297029506865
9 | 0.1402805611222445,0.11357186933250851
10 | 0.16032064128256512,0.33078427579666553
11 | 0.18036072144288576,0.3208541542858158
12 | 0.2004008016032064,0.22388863438483758
13 | 0.22044088176352705,0.30699543908083504
14 | 0.24048096192384769,0.5368515594022353
15 | 0.2605210420841683,0.6047236921970546
16 | 0.280561122244489,0.5405988852500472
17 | 0.3006012024048096,0.6326651888327594
18 | 0.32064128256513025,0.6527348043643274
19 | 0.3406813627254509,0.7012210433485702
20 | 0.3607214428857715,0.8344970759999568
21 | 0.3807615230460922,0.5925552828087919
22 | 0.4008016032064128,0.8479591583598756
23 | 0.42084168336673344,0.7788567850566092
24 | 0.4408817635270541,0.8310482593645548
25 | 0.4609218436873747,0.8593229040631473
26 | 0.48096192384769537,0.8877496550086097
27 | 0.501002004008016,0.8379896588756035
28 | 0.5210420841683366,1.0139023369604454
29 | 0.5410821643286573,1.1972220476073598
30 | 0.561122244488978,1.0586600791627163
31 | 0.5811623246492986,1.0978531108053506
32 | 0.6012024048096192,1.0625390012747948
33 | 0.6212424849699398,1.152344432428056
34 | 0.6412825651302605,1.243064022494059
35 | 0.6613226452905812,1.1912981456956242
36 | 0.6813627254509018,1.2143237118619112
37 | 0.7014028056112224,1.330906409879643
38 | 0.721442885771543,1.2291370330018552
39 | 0.7414829659318637,1.3760142497042984
40 | 0.7615230460921844,1.46208138833122
41 | 0.781563126252505,1.5447744685257239
42 | 0.8016032064128256,1.4279060656439315
43 | 0.8216432865731462,1.601291577946044
44 | 0.8416833667334669,1.5949722868500014
45 | 0.8617234468937875,1.4183104923000833
46 | 0.8817635270541082,1.4219287750158618
47 | 0.9018036072144289,1.5383971865395532
48 | 0.9218436873747494,1.6963279696201543
49 | 0.9418837675350701,1.610106680124518
50 | 0.9619238476953907,1.5805210776992267
51 | 0.9819639278557114,1.8184037585362305
52 | 1.002004008016032,1.7137945778838801
53 | 1.0220440881763526,1.4742926667766783
54 | 1.0420841683366733,1.7586308659777274
55 | 1.062124248496994,1.7987880597122246
56 | 1.0821643286573146,1.7885125652256482
57 | 1.1022044088176353,1.8293814203582959
58 | 1.122244488977956,1.7954245562539277
59 | 1.1422845691382766,1.6873307082507454
60 | 1.1623246492985972,1.7983875098665425
61 | 1.1823647294589177,1.756446841545052
62 | 1.2024048096192383,1.7725414919210414
63 | 1.222444889779559,1.7535666145492845
64 | 1.2424849699398797,1.9384252842238592
65 | 1.2625250501002003,1.9155086317027792
66 | 1.282565130260521,1.872679802779411
67 | 1.3026052104208417,1.8635698181738913
68 | 1.3226452905811623,1.9363941019322874
69 | 1.342685370741483,2.056110106916444
70 | 1.3627254509018036,1.75644090767547
71 | 1.3827655310621243,2.002436117341837
72 | 1.4028056112224447,1.9172742278536223
73 | 1.4228456913827654,1.7896919246454688
74 | 1.442885771543086,1.7890908765370983
75 | 1.4629258517034067,1.8970968899322924
76 | 1.4829659318637274,2.014241735076086
77 | 1.503006012024048,2.0347125262572403
78 | 1.5230460921843687,1.9038221910262003
79 | 1.5430861723446894,2.100934295613555
80 | 1.56312625250501,2.142239519900412
81 | 1.5831663326653307,2.0394556434015962
82 | 1.6032064128256511,1.939809411486857
83 | 1.6232464929859718,2.109691529135625
84 | 1.6432865731462925,2.0702870344555087
85 | 1.6633266533066131,2.0781849868570843
86 | 1.6833667334669338,1.921694912229008
87 | 1.7034068136272544,1.6989847640911548
88 | 1.723446893787575,2.1884221207728154
89 | 1.7434869739478958,1.8091641393433944
90 | 1.7635270541082164,1.959392897369658
91 | 1.783567134268537,2.1929736528471646
92 | 1.8036072144288577,1.9791011359023967
93 | 1.8236472945891782,2.0313309359164413
94 | 1.8436873747494988,1.77575181584901
95 | 1.8637274549098195,1.7370364999814392
96 | 1.8837675350701402,1.8495756704811979
97 | 1.9038076152304608,1.9991995108304037
98 | 1.9238476953907815,1.8420191226229021
99 | 1.9438877755511021,1.7829463212144907
100 | 1.9639278557114228,1.8672246404808763
101 | 1.9839679358717435,1.93989748038832
102 | 2.004008016032064,1.6707503891807893
103 | 2.024048096192385,1.677001573729698
104 | 2.0440881763527052,1.7012783280191188
105 | 2.064128256513026,1.8709835802937382
106 | 2.0841683366733466,1.7656689736387114
107 | 2.1042084168336674,1.9353695931256178
108 | 2.124248496993988,1.7950746533867166
109 | 2.1442885771543083,1.6765131122103463
110 | 2.164328657314629,1.7844482802061659
111 | 2.1843687374749496,1.656342249571021
112 | 2.2044088176352705,1.5412957857278977
113 | 2.224448897795591,1.6557334979606348
114 | 2.244488977955912,1.493413819622692
115 | 2.2645290581162323,1.5086895404179306
116 | 2.284569138276553,1.6445727467834268
117 | 2.3046092184368736,1.4751244316362044
118 | 2.3246492985971945,1.3778000799719168
119 | 2.344689378757515,1.3839565219203482
120 | 2.3647294589178354,1.5042709895804174
121 | 2.3847695390781563,1.3179764356146118
122 | 2.4048096192384767,1.3051305126835464
123 | 2.4248496993987976,1.2628357522642886
124 | 2.444889779559118,1.3017773676615918
125 | 2.464929859719439,1.2138402379193414
126 | 2.4849699398797593,1.0607070560856826
127 | 2.50501002004008,1.1001837146682778
128 | 2.5250501002004007,1.0631565998628272
129 | 2.5450901803607215,1.2478367230984377
130 | 2.565130260521042,1.1713902796748257
131 | 2.5851703406813624,1.115029120273178
132 | 2.6052104208416833,0.9715234552312824
133 | 2.6252505010020037,0.9058257871910538
134 | 2.6452905811623246,0.9016023023518387
135 | 2.665330661322645,0.8117327162144812
136 | 2.685370741482966,1.1308392021274276
137 | 2.7054108216432864,0.6204315847766939
138 | 2.7254509018036073,0.8648698596144211
139 | 2.7454909819639277,0.643194358623227
140 | 2.7655310621242486,0.7240859337711637
141 | 2.785571142284569,0.5982958061608836
142 | 2.8056112224448895,0.5416288739120655
143 | 2.8256513026052104,0.5074031037709246
144 | 2.845691382765531,0.7587027549341389
145 | 2.8657314629258517,0.5314524932736454
146 | 2.885771543086172,0.4295095445649847
147 | 2.905811623246493,0.5227836516622559
148 | 2.9258517034068134,0.42917745247256656
149 | 2.9458917835671343,0.46091152436943866
150 | 2.9659318637274548,0.16709192810373055
151 | 2.9859719438877756,0.3403470661557953
152 | 3.006012024048096,0.3476007534573682
153 | 3.0260521042084165,0.06440747196756744
154 | 3.0460921843687374,0.23553026701435945
155 | 3.066132264529058,0.32039574556060035
156 | 3.0861723446893787,0.10929811666945405
157 | 3.106212424849699,0.15288628958131578
158 | 3.12625250501002,0.0977361389227303
159 | 3.1462925851703405,-0.08015039830603513
160 | 3.1663326653306614,-0.0454983026528951
161 | 3.186372745490982,-0.24622972603071128
162 | 3.2064128256513023,-0.1746798829098487
163 | 3.226452905811623,-0.14294807996470393
164 | 3.2464929859719436,-0.13710604983380065
165 | 3.2665330661322645,-0.2467700087303436
166 | 3.286573146292585,-0.2169478811801639
167 | 3.306613226452906,-0.43883587010657
168 | 3.3266533066132262,-0.37818202994568123
169 | 3.346693386773547,-0.40540362715240297
170 | 3.3667334669338675,-0.261528123206779
171 | 3.3867735470941884,-0.5068802903391166
172 | 3.406813627254509,-0.5741467073595528
173 | 3.4268537074148293,-0.5606808077302485
174 | 3.44689378757515,-0.6930721391342413
175 | 3.4669338677354706,-0.6199888532847664
176 | 3.4869739478957915,-0.7136164803871653
177 | 3.507014028056112,-0.8938185121586724
178 | 3.527054108216433,-0.7578321994557699
179 | 3.5470941883767533,-0.8207136546354942
180 | 3.567134268537074,-0.9888706370830798
181 | 3.5871743486973946,-0.8686791187666261
182 | 3.6072144288577155,-0.7490213455368011
183 | 3.627254509018036,-0.8814571935950923
184 | 3.6472945891783564,-0.9076505551150326
185 | 3.6673346693386772,-1.1378595738116617
186 | 3.6873747494989977,-0.9904836099895311
187 | 3.7074148296593186,-1.0573751128727402
188 | 3.727454909819639,-1.0529315769763847
189 | 3.74749498997996,-1.0967451742005678
190 | 3.7675350701402803,-1.307700628682865
191 | 3.787575150300601,-1.2081066033798356
192 | 3.8076152304609217,-1.3115140717900342
193 | 3.8276553106212425,-1.2719996014032664
194 | 3.847695390781563,-1.3874866781605326
195 | 3.8677354709418834,-1.1967337784194294
196 | 3.8877755511022043,-1.4435789780029715
197 | 3.9078156312625247,-1.4767316455570836
198 | 3.9278557114228456,-1.4079775380612882
199 | 3.947895791583166,-1.5511764075034926
200 | 3.967935871743487,-1.513383468960745
201 | 3.9879759519038074,-1.5807735289930824
202 | 4.008016032064128,-1.3829182990232531
203 | 4.028056112224449,-1.4711015193917043
204 | 4.04809619238477,-1.580452911702012
205 | 4.06813627254509,-1.6382193345258587
206 | 4.0881763527054105,-1.5287553534922533
207 | 4.108216432865731,-1.6054244711585715
208 | 4.128256513026052,-1.618576405700615
209 | 4.148296593186372,-1.6927676292062654
210 | 4.168336673346693,-1.8800594185340818
211 | 4.188376753507014,-1.7428838065171566
212 | 4.208416833667335,-1.8045915821232736
213 | 4.228456913827655,-1.705839120723068
214 | 4.248496993987976,-1.687451507499352
215 | 4.268537074148297,-1.872003657318579
216 | 4.288577154308617,-1.7762174736867327
217 | 4.3086172344689375,-1.6655834180578601
218 | 4.328657314629258,-1.9213193152617358
219 | 4.348697394789579,-1.7009878240816203
220 | 4.368737474949899,-1.968319891129414
221 | 4.38877755511022,-1.8938904180004705
222 | 4.408817635270541,-1.9096645497981046
223 | 4.428857715430862,-1.9189972364702015
224 | 4.448897795591182,-2.014740953971418
225 | 4.468937875751503,-2.0001420213230467
226 | 4.488977955911824,-2.017066802372436
227 | 4.509018036072144,-1.9260863554310232
228 | 4.529058116232465,-1.9334803145566815
229 | 4.5490981963927855,-1.750800880931491
230 | 4.569138276553106,-1.8424154030411792
231 | 4.589178356713426,-2.0358226615830652
232 | 4.609218436873747,-1.9568783155364764
233 | 4.629258517034068,-1.8933815068518034
234 | 4.649298597194389,-1.9929607412362105
235 | 4.669338677354709,-2.0051111154716104
236 | 4.68937875751503,-1.9943130587276592
237 | 4.709418837675351,-1.9132635153779285
238 | 4.729458917835671,-2.0845406765912005
239 | 4.749498997995992,-2.0311899515136105
240 | 4.7695390781563125,-1.9496914407123673
241 | 4.789579158316633,-1.9628999271562109
242 | 4.809619238476953,-1.966595446319126
243 | 4.829659318637274,-2.0232435377269558
244 | 4.849699398797595,-1.8839218747207533
245 | 4.869739478957916,-1.7619050384834432
246 | 4.889779559118236,-1.9279734632347807
247 | 4.909819639278557,-1.9804652533511007
248 | 4.929859719438878,-1.8773185449508127
249 | 4.949899799599198,-1.9977665633506891
250 | 4.969939879759519,-2.0090024252662926
251 | 4.98997995991984,-1.9201559160314194
252 | 5.01002004008016,-2.1703474184658864
253 | 5.03006012024048,-2.0153258859961283
254 | 5.050100200400801,-1.9218271338475332
255 | 5.070140280561122,-2.0087121173463256
256 | 5.090180360721443,-1.9622274944696612
257 | 5.110220440881763,-1.8874814271985851
258 | 5.130260521042084,-1.9922060751577346
259 | 5.150300601202405,-1.8518856050792838
260 | 5.170340681362725,-1.8474469277663976
261 | 5.190380761523046,-1.7733004535751264
262 | 5.210420841683367,-1.6416304720505261
263 | 5.2304609218436875,-1.7203007184676815
264 | 5.2505010020040075,-1.7152494574446635
265 | 5.270541082164328,-1.6865250381213386
266 | 5.290581162324649,-1.652164742647872
267 | 5.31062124248497,-1.7543387943523145
268 | 5.33066132264529,-1.6412396753224925
269 | 5.350701402805611,-1.5753297336000702
270 | 5.370741482965932,-1.7190785329630405
271 | 5.390781563126252,-1.4705996007829778
272 | 5.410821643286573,-1.423564303987994
273 | 5.430861723446894,-1.5687614023767704
274 | 5.4509018036072145,-1.5030748332454666
275 | 5.4709418837675345,-1.5394834089817615
276 | 5.490981963927855,-1.353866671053958
277 | 5.511022044088176,-1.5014955051779084
278 | 5.531062124248497,-1.3886291646089874
279 | 5.551102204408817,-1.4227329145095542
280 | 5.571142284569138,-1.3016680923904056
281 | 5.591182364729459,-1.4555842586477183
282 | 5.611222444889779,-1.1124004832887717
283 | 5.6312625250501,-1.3098926059805842
284 | 5.651302605210421,-1.1753405074752938
285 | 5.671342685370742,-1.1700058805645919
286 | 5.691382765531062,-1.1919272980551936
287 | 5.7114228456913825,-1.1710080694436833
288 | 5.731462925851703,-0.9546697960885535
289 | 5.751503006012024,-1.0665323123064012
290 | 5.771543086172344,-0.952102636182517
291 | 5.791583166332665,-1.0242274986706594
292 | 5.811623246492986,-0.9732749752974768
293 | 5.831663326653306,-0.825446270500215
294 | 5.851703406813627,-0.7433938321553948
295 | 5.871743486973948,-0.8173941133048775
296 | 5.891783567134269,-0.9051610336735347
297 | 5.911823647294589,-0.5259736101852628
298 | 5.9318637274549095,-0.7739328579780327
299 | 5.95190380761523,-0.8046689696387276
300 | 5.971943887775551,-0.35303883411572695
301 | 5.991983967935871,-0.6146096182956018
302 | 6.012024048096192,-0.681874157422806
303 | 6.032064128256513,-0.5653242321066019
304 | 6.052104208416833,-0.4213055496737062
305 | 6.072144288577154,-0.39992471440488725
306 | 6.092184368737475,-0.46485637171508193
307 | 6.112224448897796,-0.15798619620377752
308 | 6.132264529058116,-0.35285498334217524
309 | 6.152304609218437,-0.37948337658308434
310 | 6.1723446893787575,-0.12515825843630016
311 | 6.192384769539078,-0.04844535127401098
312 | 6.212424849699398,-0.22315215408284353
313 | 6.232464929859719,-0.24153199585606877
314 | 6.25250501002004,0.04169285822594594
315 | 6.27254509018036,-0.22601239376524038
316 | 6.292585170340681,-0.10386271646549187
317 | 6.312625250501002,0.15561599671609092
318 | 6.332665330661323,0.09338441690674525
319 | 6.352705410821643,0.1125345015609039
320 | 6.372745490981964,0.21416266939966105
321 | 6.3927855711422845,0.2034845016559189
322 | 6.4128256513026045,0.12868635414504473
323 | 6.432865731462925,0.4258518098449712
324 | 6.452905811623246,0.4703151570882038
325 | 6.472945891783567,0.3977808216442616
326 | 6.492985971943887,0.4210432809091094
327 | 6.513026052104208,0.6896073992614267
328 | 6.533066132264529,0.46693369038310334
329 | 6.55310621242485,0.50735271508041
330 | 6.57314629258517,0.608277803706171
331 | 6.593186372745491,0.7572514980491376
332 | 6.613226452905812,0.8074409828813962
333 | 6.633266533066132,0.6600909522435346
334 | 6.6533066132264524,0.754290177093437
335 | 6.673346693386773,0.6228670087667453
336 | 6.693386773547094,0.7663905669971686
337 | 6.713426853707414,0.7501516560255053
338 | 6.733466933867735,0.7697550383577565
339 | 6.753507014028056,1.074503842751756
340 | 6.773547094188377,0.8626614816789757
341 | 6.793587174348697,0.9238952788358095
342 | 6.813627254509018,1.0484140929983332
343 | 6.833667334669339,1.175978743590853
344 | 6.853707414829659,1.128254588844602
345 | 6.8737474949899795,1.3895916707796576
346 | 6.8937875751503,1.139255210018654
347 | 6.913827655310621,1.2051989866680342
348 | 6.933867735470941,1.239019137158622
349 | 6.953907815631262,1.3866092240437666
350 | 6.973947895791583,1.3249741761243559
351 | 6.993987975951904,1.293261578703992
352 | 7.014028056112224,1.2402459266044772
353 | 7.034068136272545,1.3890132466553908
354 | 7.054108216432866,1.5337295000546711
355 | 7.074148296593186,1.3810232976904107
356 | 7.0941883767535066,1.5028512114082628
357 | 7.114228456913827,1.5018847107842468
358 | 7.134268537074148,1.590341721243575
359 | 7.154308617234468,1.4496302155212728
360 | 7.174348697394789,1.7902716496135778
361 | 7.19438877755511,1.4525674745052544
362 | 7.214428857715431,1.5681704062844741
363 | 7.234468937875751,1.722132255526509
364 | 7.254509018036072,1.6809398843692411
365 | 7.274549098196393,1.7565456143048117
366 | 7.294589178356713,1.6455451142393254
367 | 7.314629258517034,1.70860243884781
368 | 7.3346693386773545,1.7375445608559885
369 | 7.354709418837675,1.9127884576429364
370 | 7.374749498997995,1.843741393095164
371 | 7.394789579158316,1.8724889923582457
372 | 7.414829659318637,1.7444324813731715
373 | 7.434869739478958,1.9237896928095923
374 | 7.454909819639278,1.86540226578437
375 | 7.474949899799599,1.9969612311783367
376 | 7.49498997995992,2.0739091397612226
377 | 7.51503006012024,1.8555309902258648
378 | 7.535070140280561,1.8585242136573092
379 | 7.5551102204408815,1.8249343023919056
380 | 7.575150300601202,1.9083975479582742
381 | 7.595190380761522,1.895197489842799
382 | 7.615230460921843,1.9792185735293737
383 | 7.635270541082164,1.9378991509964827
384 | 7.655310621242485,1.9244995544708656
385 | 7.675350701402805,2.0746342620884275
386 | 7.695390781563126,1.8811135888870072
387 | 7.715430861723447,2.0241451673949267
388 | 7.735470941883767,1.9453774734444513
389 | 7.755511022044088,2.0627482216547217
390 | 7.775551102204409,2.132377958969171
391 | 7.7955911823647295,1.966281698401161
392 | 7.8156312625250495,2.0426327199872087
393 | 7.83567134268537,2.0175440291731053
394 | 7.855711422845691,1.9200547678768973
395 | 7.875751503006012,2.023604842493498
396 | 7.895791583166332,2.0271642333078854
397 | 7.915831663326653,2.037462875248685
398 | 7.935871743486974,1.973457866969629
399 | 7.955911823647294,1.9990384589483667
400 | 7.975951903807615,1.8703805927819102
401 | 7.995991983967936,1.94405552229236
402 | 8.016032064128256,2.0293933429077726
403 | 8.036072144288577,2.056181948890078
404 | 8.056112224448897,1.9170506590149456
405 | 8.076152304609218,1.9613142948371043
406 | 8.09619238476954,1.9644255331980438
407 | 8.11623246492986,1.95176576622672
408 | 8.13627254509018,1.9749169799249768
409 | 8.1563126252505,1.7274823155753782
410 | 8.176352705410821,1.8920413743946485
411 | 8.196392785571142,1.9077990360253247
412 | 8.216432865731463,1.7700279792464326
413 | 8.236472945891784,2.022873922714745
414 | 8.256513026052104,1.85630047371615
415 | 8.276553106212425,1.9804152302997036
416 | 8.296593186372744,1.7282201297333017
417 | 8.316633266533065,1.6990143108675015
418 | 8.336673346693386,1.7939226903409637
419 | 8.356713426853707,1.58467035908628
420 | 8.376753507014028,1.754373676935718
421 | 8.396793587174349,1.722241055077264
422 | 8.41683366733467,1.7930399411264826
423 | 8.436873747494989,1.7398525470546613
424 | 8.45691382765531,1.6056051213586833
425 | 8.47695390781563,1.5145460715846637
426 | 8.496993987975952,1.7718168367561646
427 | 8.517034068136272,1.4970226084706109
428 | 8.537074148296593,1.4466964487056793
429 | 8.557114228456914,1.4171551241754052
430 | 8.577154308617233,1.6111504032294273
431 | 8.597194388777554,1.420706838703299
432 | 8.617234468937875,1.3698120178039788
433 | 8.637274549098196,1.4309566794792619
434 | 8.657314629258517,1.367929327947836
435 | 8.677354709418838,1.2916926957022827
436 | 8.697394789579159,1.4052338668849362
437 | 8.71743486973948,1.4061646976526216
438 | 8.737474949899799,1.3674414061327462
439 | 8.75751503006012,1.314368545830818
440 | 8.77755511022044,1.246209015367652
441 | 8.797595190380761,0.996143247953506
442 | 8.817635270541082,1.3079713536183704
443 | 8.837675350701403,1.1381011847085876
444 | 8.857715430861724,1.135128973134417
445 | 8.877755511022043,1.1517891944058019
446 | 8.897795591182364,1.1491900714575352
447 | 8.917835671342685,1.0128525387403835
448 | 8.937875751503006,0.9793353196411695
449 | 8.957915831663327,0.8402504406106313
450 | 8.977955911823647,0.8675125064578089
451 | 8.997995991983968,0.7424710115675756
452 | 9.018036072144287,0.7192442184080388
453 | 9.038076152304608,0.6649142109005665
454 | 9.05811623246493,0.7013997325544158
455 | 9.07815631262525,0.784353969102201
456 | 9.098196392785571,0.9587117971856334
457 | 9.118236472945892,0.6224762863825104
458 | 9.138276553106213,0.4303546456589809
459 | 9.158316633266534,0.6531369414080328
460 | 9.178356713426853,0.4577913812410666
461 | 9.198396793587174,0.3828441456671511
462 | 9.218436873747494,0.43074491265624126
463 | 9.238476953907815,0.24638790864072269
464 | 9.258517034068136,0.35323831905765685
465 | 9.278557114228457,0.2825631608647057
466 | 9.298597194388778,0.2615301903816453
467 | 9.318637274549097,0.25002463414025744
468 | 9.338677354709418,0.17873775307438408
469 | 9.358717434869739,0.13365878528380684
470 | 9.37875751503006,0.12043985820286288
471 | 9.39879759519038,0.09349494856856527
472 | 9.418837675350701,-0.09126774506564513
473 | 9.438877755511022,-0.17119778099492475
474 | 9.458917835671341,-0.07443029209924415
475 | 9.478957915831662,-0.2515804523989187
476 | 9.498997995991983,-0.13955067771883878
477 | 9.519038076152304,-0.09436650111172341
478 | 9.539078156312625,-0.16739178931997983
479 | 9.559118236472946,-0.3726901608463903
480 | 9.579158316633267,-0.39356195347787715
481 | 9.599198396793588,-0.3142446632131576
482 | 9.619238476953907,-0.42660427541533075
483 | 9.639278557114228,-0.4573845217731056
484 | 9.659318637274549,-0.4051018764346206
485 | 9.67935871743487,-0.6024080695288476
486 | 9.69939879759519,-0.5824874734962593
487 | 9.719438877755511,-0.6608390437315119
488 | 9.739478957915832,-0.7233772829079065
489 | 9.759519038076151,-0.7427570780576205
490 | 9.779559118236472,-0.6270241030282162
491 | 9.799599198396793,-0.7270303280206188
492 | 9.819639278557114,-0.8572764266889769
493 | 9.839679358717435,-0.8293095529169475
494 | 9.859719438877756,-1.0065953885016579
495 | 9.879759519038076,-0.9522227772435712
496 | 9.899799599198396,-0.6997579264519058
497 | 9.919839679358716,-0.9591963065537876
498 | 9.939879759519037,-0.9120809896866726
499 | 9.959919839679358,-1.0264750140589323
500 | 9.97995991983968,-1.0193789536220121
501 | 10.0,-1.021716412810822
502 |
--------------------------------------------------------------------------------
/4. Matplotlib Histogram or histplot.ipynb:
--------------------------------------------------------------------------------
1 | {
2 | "cells": [
3 | {
4 | "cell_type": "markdown",
5 | "id": "135b8d23",
6 | "metadata": {},
7 | "source": [
8 | "**Histograms and bar plots are similar in that they both display data distribution, but they are used for different types of data.**\n",
9 | "\n",
10 | "**1. Histogram:**\n",
11 | "- Histograms are used to visualize the distribution of continuous data.\n",
12 | "- The x-axis of a histogram represents the range of values (bins) of the continuous variable, and the y-axis represents the frequency or density of occurrences within each bin.\n",
13 | "- Histograms are typically used to show the underlying probability distribution of a continuous variable.\n",
14 | "\n",
15 | "**2. Bar Plot:**\n",
16 | "- Bar plots, on the other hand, are used for visualizing the distribution of categorical data or the relationship between two categorical variables.\n",
17 | "- The x-axis of a bar plot represents the categories, and the y-axis represents the value associated with each category. Each bar represents a different category, and the height of the bar corresponds to the value.\n",
18 | "- Bar plots are used when you have distinct categories and want to compare their values.\n"
19 | ]
20 | },
21 | {
22 | "cell_type": "code",
23 | "execution_count": 10,
24 | "id": "ea6aaf97",
25 | "metadata": {},
26 | "outputs": [
27 | {
28 | "data": {
29 | "text/plain": [
30 | "Text(0.5, 1.0, 'Histogram Example')"
31 | ]
32 | },
33 | "execution_count": 10,
34 | "metadata": {},
35 | "output_type": "execute_result"
36 | },
37 | {
38 | "data": {
39 | "image/png": "iVBORw0KGgoAAAANSUhEUgAAAjsAAAHFCAYAAAAUpjivAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8qNh9FAAAACXBIWXMAAA9hAAAPYQGoP6dpAAA2RklEQVR4nO3deXQV9f3/8dclG9khieQSCRghbAYUQqVQCwmr0bBa0YICGn6yCDWFiAVqiQpEoQIWLFjFgAJCbUXtIiUoIBRoWYIsTRERCJHEiMQkbElI5veHh/vtNWHJ5cLcDM/HOXOO85nPzLxngOTlZzabYRiGAAAALKqe2QUAAABcT4QdAABgaYQdAABgaYQdAABgaYQdAABgaYQdAABgaYQdAABgaYQdAABgaYQdAABgaYQdwMMtXbpUNptNO3furHF5cnKybrvtNqe22267TSNHjqzVfrZu3ar09HR99913rhVqEenp6bLZbJecjh49anaJbmGz2ZSenm52GcAN4W12AQDcb82aNQoJCanVOlu3btVzzz2nkSNHqkGDBtensDpk7dq1Cg0NrdbeuHFjE6oBcC0IO4AFdejQwewSaq2iokI2m03e3p7xYyk+Pl4RERFmlwHADbiMBVjQDy9jVVVVacaMGWrVqpX8/f3VoEEDtW/fXq+88oqk7y/dPP3005KkmJgYxyWbjRs3OtafPXu2WrduLT8/PzVq1EjDhw9XXl6e034Nw9CsWbPUrFkz1a9fX506dVJWVpYSEhKUkJDg6Ldx40bZbDa9/fbbmjRpkm699Vb5+fnpiy++0DfffKNx48apbdu2CgoKUqNGjdSjRw9t3rzZaV9Hjx6VzWbTnDlz9NJLL+m2226Tv7+/EhIS9Pnnn6uiokK/+tWvFBUVpdDQUA0aNEiFhYVuO8cvvvii6tWrp7/85S9O7SNHjlRAQID27dsnSTp//rwmTZqku+66S6GhoQoLC1OXLl30wQcfVNumzWbT+PHjlZmZ6fiz6tSpk7Zv3y7DMDRnzhzFxMQoKChIPXr00BdffOG0fkJCguLi4rR582b9+Mc/lr+/v2699VY9++yzqqysvOIxFRQUaPTo0WrSpIl8fX0VExOj5557ThcuXLiGMwWYzzP+FwrAFVVWVtb4S8cwjCuuO3v2bKWnp+vXv/61unXrpoqKCv33v/913J8zatQonTp1SgsWLNB7773nuFTTtm1bSdLYsWP1hz/8QePHj1dycrKOHj2qZ599Vhs3btTu3bsdIyDTpk1TRkaGnnjiCQ0ePFjHjx/XqFGjVFFRoZYtW1ara8qUKerSpYsWL16sevXqqVGjRvrmm28kSdOnT5fdbtfp06e1Zs0aJSQk6OOPP3YKTZL06quvqn379nr11Vf13XffadKkSerXr586d+4sHx8fvfnmmzp27JjS0tI0atQoffjhhy6fb5vNJi8vL0nSM888o82bN2vEiBHKzs5Ws2bNlJmZqWXLlumNN95Qu3btJEllZWU6deqU0tLSdOutt6q8vFzr16/X4MGDlZmZqeHDhzvt469//auys7P14osvymaz6ZlnntH999+vESNG6Msvv9TChQtVXFysiRMn6oEHHtCePXtks9kc6xcUFOjhhx/Wr371Kz3//PP629/+phkzZqioqEgLFy685PEWFBTo7rvvVr169fSb3/xGzZs317Zt2zRjxgwdPXpUmZmZV3XeAI9kAPBomZmZhqTLTs2aNXNap1mzZsaIESMc88nJycZdd9112f3MmTPHkGQcOXLEqT0nJ8eQZIwbN86p/V//+pchyZg6daphGIZx6tQpw8/Pz3jooYec+m3bts2QZHTv3t3RtmHDBkOS0a1btyse/4ULF4yKigqjZ8+exqBBgxztR44cMSQZd955p1FZWelonz9/viHJ6N+/v9N2UlNTDUlGcXHxZfc3ffr0S57n5s2bO/U9efKk0aRJE+Puu+82du/ebQQEBBiPPPLIVR1PSkqK0aFDB6dlkgy73W6cPn3a0fb+++8bkoy77rrLqKqqqnace/fudbR1797dkGR88MEHTtv9f//v/xn16tUzjh075rSv6dOnO+ZHjx5tBAUFOfUxDMP47W9/a0gyDhw4cNnjAjwZl7GAOuKtt97Sjh07qk333HPPFde9++679dlnn2ncuHH6xz/+oZKSkqve74YNGySp2tNdd999t9q0aaOPP/5YkrR9+3aVlZVpyJAhTv1+/OMfV3ta7KIHHnigxvbFixerY8eOql+/vry9veXj46OPP/5YOTk51fred999qlfv/36UtWnTRpJ0//33O/W72J6bm3uJI3W2fv36auf6/fffd+oTHh6u1atXa/fu3eratauaNm2qxYsXV9vWu+++q5/85CcKCgpyHM+SJUtqPJ7ExEQFBgZWqzspKclpBOdi+7Fjx5zWDw4OVv/+/Z3ahg4dqqqqKn366aeXPN6//vWvSkxMVFRUlC5cuOCYkpKSJEmbNm265LqAp+MyFlBHtGnTRp06darWHhoaquPHj1923SlTpigwMFDLly/X4sWL5eXlpW7duumll16qcZv/69tvv5VU81NIUVFRjl+2F/tFRkZW61dT26W2OXfuXE2aNEljxozRCy+8oIiICHl5eenZZ5+tMRyEhYU5zfv6+l62/fz58zXW8kN33nnnVd2g3LlzZ91xxx367LPPNHbsWKegIknvvfeehgwZogcffFBPP/207Ha7vL29tWjRIr355ptuP56azrXdbpf0f39GNfn666/1l7/8RT4+PjUuP3ny5CXXBTwdYQe4CXh7e2vixImaOHGivvvuO61fv15Tp05V3759dfz4cQUEBFxy3fDwcElSfn6+mjRp4rTsxIkTjkBwsd/XX39dbRsFBQU1ju7870jFRcuXL1dCQoIWLVrk1F5aWnr5gzTJ9OnTtW/fPsXHx+s3v/mNkpOTdfvttzuWL1++XDExMVq9erXT8ZaVlV2Xei51/qX/+zOqSUREhNq3b6+ZM2fWuDwqKso9BQIm4DIWcJNp0KCBfvazn+nJJ5/UqVOnHC/J8/PzkySdO3fOqX+PHj0kff9L+3/t2LFDOTk56tmzp6TvRzj8/Py0evVqp37bt2+vdqnlcmw2m6OWi/bu3att27Zd9TZulKysLGVkZOjXv/61srKyFBoaqoceekjl5eWOPjabTb6+vtVuIq7paSx3KC0trXYT9sqVK1WvXj1169btkuslJydr//79at68uTp16lRtIuygLmNkB7gJ9OvXT3FxcerUqZNuueUWHTt2TPPnz1ezZs0UGxsrSY6nh1555RWNGDFCPj4+atWqlVq1aqUnnnhCCxYsUL169ZSUlOR4Gis6Olq//OUvJX1/mWXixInKyMhQw4YNNWjQIOXl5em5555T48aNne6ruZzk5GS98MILmj59urp3766DBw/q+eefV0xMzA19BHrXrl01vlSwbdu2CgkJUX5+vh555BF1795d06dPV7169bR69Wp169ZNkydP1vz58x3H895772ncuHH62c9+puPHj+uFF15Q48aNdejQIbfXHR4errFjxyo3N1ctW7bU3//+d73++usaO3asmjZtesn1nn/+eWVlZalr1676xS9+oVatWun8+fM6evSo/v73v2vx4sXVRvaAuoKwA9wEEhMT9ec//1lvvPGGSkpKZLfb1bt3bz377LOOezQSEhI0ZcoULVu2TK+//rqqqqq0YcMGxyWl5s2ba8mSJXr11VcVGhqqe++9VxkZGU6XRmbOnKnAwEAtXrxYmZmZat26tRYtWqRp06Zd9VuZp02bprNnz2rJkiWaPXu22rZtq8WLF2vNmjWO9/7cCPfee2+N7VlZWUpMTNTPf/5z2Ww2x6iJ9P3N2LNmzdLTTz+thIQEDRw4UI899pgKCwu1ePFivfnmm7r99tv1q1/9yhEE3c1ut+vVV19VWlqa9u3bp7CwME2dOvWK+2rcuLF27typF154QXPmzFFeXp6Cg4MVExOje++9Vw0bNnR7rcCNYjOMq3hJBwC46MiRI2rdurWmT5+uqVOnml2OpSUkJOjkyZPav3+/2aUAHoWRHQBu89lnn+mdd95R165dFRISooMHD2r27NkKCQlRSkqK2eUBuEkRdgC4TWBgoHbu3KklS5bou+++U2hoqBISEjRz5sxLPn4OANcbl7EAAICl8eg5AACwNMIOAACwNMIOAACwNG5QllRVVaUTJ04oODi4xtfXAwAAz2MYhkpLSxUVFXXZF5cSdvT9932io6PNLgMAALjg+PHjl33DN2FHUnBwsKTvT1ZISIjJ1QAAgKtRUlKi6Ohox+/xSyHs6P++vBwSEkLYAQCgjrnSLSjcoAwAACyNsAMAACyNsAMAACyNsAMAACyNsAMAACyNsAMAACyNsAMAACzN1LCTnp4um83mNNntdsdywzCUnp6uqKgo+fv7KyEhQQcOHHDaRllZmSZMmKCIiAgFBgaqf//+ysvLu9GHAgAAPJTpIzt33HGH8vPzHdO+ffscy2bPnq25c+dq4cKF2rFjh+x2u3r37q3S0lJHn9TUVK1Zs0arVq3Sli1bdPr0aSUnJ6uystKMwwEAAB7G9Dcoe3t7O43mXGQYhubPn69p06Zp8ODBkqRly5YpMjJSK1eu1OjRo1VcXKwlS5bo7bffVq9evSRJy5cvV3R0tNavX6++ffve0GMBAACex/SRnUOHDikqKkoxMTF6+OGH9eWXX0qSjhw5ooKCAvXp08fR18/PT927d9fWrVslSbt27VJFRYVTn6ioKMXFxTn61KSsrEwlJSVOEwAAsCZTw07nzp311ltv6R//+Idef/11FRQUqGvXrvr2229VUFAgSYqMjHRaJzIy0rGsoKBAvr6+atiw4SX71CQjI0OhoaGOiS+eAwBgXaaGnaSkJD3wwANq166devXqpb/97W+Svr9cddEPP+5lGMYVP/h1pT5TpkxRcXGxYzp+/Pg1HAUAAPBkpl/G+l+BgYFq166dDh065LiP54cjNIWFhY7RHrvdrvLychUVFV2yT038/PwcXzjnS+cAAFibR4WdsrIy5eTkqHHjxoqJiZHdbldWVpZjeXl5uTZt2qSuXbtKkuLj4+Xj4+PUJz8/X/v373f0AQAANzdTn8ZKS0tTv3791LRpUxUWFmrGjBkqKSnRiBEjZLPZlJqaqlmzZik2NlaxsbGaNWuWAgICNHToUElSaGioUlJSNGnSJIWHhyssLExpaWmOy2IAIEmVlZXy8vIyu4xaqYs1A57K1LCTl5enn//85zp58qRuueUW/fjHP9b27dvVrFkzSdLkyZN17tw5jRs3TkVFRercubPWrVun4OBgxzbmzZsnb29vDRkyROfOnVPPnj21dOlSfkgAcPDy8tKwYcOUk5NjdilXpU2bNlqxYoXZZQCWYTMMwzC7CLOVlJQoNDRUxcXF3L8DWFTHjh2VnZ1tdhlXpUOHDtq9e7fZZQAe72p/f3vUPTsAAADuRtgBAACWRtgBAACWRtgBAACWRtgBAACWRtgBAACWRtgBAACWRtgBAACWRtgBAACWRtgBAACWRtgBAACWRtgBAACWRtgBAACWRtgBAACWRtgBAACWRtgBAACWRtgBAACWRtgBAACWRtgBAACWRtgBAACWRtgBAACWRtgBAACWRtgBAACWRtgBAACWRtgBAACWRtgBAACWRtgBAACWRtgBAACWRtgBAACWRtgBUCuVlZVmlwAAteJtdgEA6hYvLy8NGzZMOTk5ZpdyVZKSkjRz5kyzywBgIsIOgFrLyclRdna22WVcldatW5tdAgCTcRkLAABYGmEHAABYGmEHAABYGmEHAABYGmEHAABYGmEHAABYGmEHAABYGmEHAABYGmEHAABYGmEHAABYGmEHAABYGmEHAABYGmEHAABYGmEHAABYGmEHAABYGmEHAABYGmEHAABYGmEHAABYGmEHAABYGmEHAABYGmEHAABYGmEHAABYGmEHAABY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\n",
40 | "text/plain": [
41 | ""
42 | ]
43 | },
44 | "metadata": {},
45 | "output_type": "display_data"
46 | }
47 | ],
48 | "source": [
49 | "import matplotlib.pyplot as plt\n",
50 | "import numpy as np\n",
51 | "\n",
52 | "data = np.random.randn(2000) #normal distribution\n",
53 | "\n",
54 | "plt.hist(data, bins=10, color='black', edgecolor='white')\n",
55 | "\n",
56 | "plt.xlabel('Values')\n",
57 | "plt.ylabel('Frequency')\n",
58 | "plt.title('Histogram Example')\n"
59 | ]
60 | },
61 | {
62 | "cell_type": "code",
63 | "execution_count": null,
64 | "id": "10231428",
65 | "metadata": {},
66 | "outputs": [],
67 | "source": []
68 | }
69 | ],
70 | "metadata": {
71 | "kernelspec": {
72 | "display_name": "Python 3 (ipykernel)",
73 | "language": "python",
74 | "name": "python3"
75 | },
76 | "language_info": {
77 | "codemirror_mode": {
78 | "name": "ipython",
79 | "version": 3
80 | },
81 | "file_extension": ".py",
82 | "mimetype": "text/x-python",
83 | "name": "python",
84 | "nbconvert_exporter": "python",
85 | "pygments_lexer": "ipython3",
86 | "version": "3.9.13"
87 | }
88 | },
89 | "nbformat": 4,
90 | "nbformat_minor": 5
91 | }
92 |
--------------------------------------------------------------------------------
/5. Boxplot using Python.ipynb:
--------------------------------------------------------------------------------
1 | {
2 | "cells": [
3 | {
4 | "cell_type": "markdown",
5 | "id": "9a680aea",
6 | "metadata": {},
7 | "source": [
8 | "# Boxplot with Matplotlib"
9 | ]
10 | },
11 | {
12 | "cell_type": "code",
13 | "execution_count": 1,
14 | "id": "838a90b7",
15 | "metadata": {},
16 | "outputs": [],
17 | "source": [
18 | "from matplotlib import pyplot as plt\n",
19 | "import numpy as np"
20 | ]
21 | },
22 | {
23 | "cell_type": "code",
24 | "execution_count": 2,
25 | "id": "3d4ced95",
26 | "metadata": {},
27 | "outputs": [
28 | {
29 | "data": {
30 | "image/png": "iVBORw0KGgoAAAANSUhEUgAAAkAAAAHFCAYAAAAaD0bAAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8qNh9FAAAACXBIWXMAAA9hAAAPYQGoP6dpAAAyqklEQVR4nO3df3zN9f//8fvZ2DHaDhP7wdjIb8IIqbQRISKJkjbVu5/6IfnUWz/e6ZelN5Lo51uWt/KjNuxD3pnMr1L50SqF5t0Y2fLJmx0bxuz1/cPXeXfajyybc86et+vl8rrU6/l6Pp97vM4fnXvP1/OcY7MsyxIAAIBB/DxdAAAAwIVGAAIAAMYhAAEAAOMQgAAAgHEIQAAAwDgEIAAAYBwCEAAAMA4BCAAAGIcABAAAjEMAAqqppKQk2Ww2t6NBgwaKjY3V8uXLL3g9a9eudavF399foaGhuummm7Rjxw5Xvz179shmsykpKanCf+OHH37QpEmTtGfPnnPqX9pr9Ntj7dq1Fa7BG0VFRWnMmDGeLgPwKjU8XQCAqjV37ly1bt1almUpNzdXs2bN0uDBg5WamqrBgwdf8HomT56suLg4nTx5Ulu2bNFzzz2nTz/9VN99950aNWp0XnP/8MMPevbZZxUbG6uoqKhzHnf2Nfq9tm3bnlc9ALwXAQio5tq3b6+uXbu6zvv376969eppwYIFHglALVq0UI8ePSRJvXr1Ut26dXXnnXcqKSlJTz755AWvRyr5GgGo/ngEBhimVq1aCggIUM2aNd3a//Of/+j+++9Xo0aNFBAQoGbNmunJJ59UYWGhJOnEiRPq3LmzLrnkEuXl5bnG5ebmKiwsTLGxsTp9+nSF6zkbhvbu3Vtuv40bN6pPnz4KCgpS7dq11bNnT61YscJ1PSkpSTfddJMkKS4uzvUY6888Svu9hQsXymazadasWW7tzzzzjPz9/ZWWluZqe/bZZ9W9e3eFhIQoODhYMTExmjNnjn7/u9NRUVEaNGiQli9frs6dOyswMFBt2rRxPZ5MSkpSmzZtVKdOHXXr1k1btmxxGz9mzBhddNFF+v7779WnTx/VqVNHDRo00AMPPKBjx4794T05nU5NmDBB0dHRCggIUKNGjTRu3DgVFBT82ZcJ8CkEIKCaO336tIqKinTq1Cnt37/f9SY3atQoV58TJ04oLi5O8+bN0/jx47VixQqNHj1aL7/8soYNGybpTHBavHixDh48qDvuuEOSVFxcrFtvvVWWZWnBggXy9/evcH27d++WJDVo0KDMPuvWrVPv3r2Vl5enOXPmaMGCBQoKCtLgwYO1aNEiSdJ1112nyZMnS5Jmz56tTZs2adOmTbruuuvO+TX67fHbMHfzzTfr3nvv1aOPPuoKImvWrNELL7ygJ554Qn379nX13bNnj+655x4tXrxYKSkpGjZsmB588EE9//zzJf7uN998o4kTJ+rxxx9XSkqKHA6Hhg0bpmeeeUb/+Mc/NHnyZL3//vvKy8vToEGDdPz4cbfxp06d0sCBA9WnTx8tXbpUDzzwgN566y2NHDmy3Ps9duyYrr76ar333nt66KGHtHLlSj3++ONKSkrS9ddfXyKsAdWSBaBamjt3riWpxGG3263XX3/dre+bb75pSbIWL17s1j5lyhRLkrVq1SpX26JFiyxJ1owZM6y//e1vlp+fn9v1sqSnp1uSrEWLFlmnTp2yjh07Zq1fv9665JJLLH9/f+ubb76xLMuysrKyLEnW3LlzXWN79OhhNWzY0Dp69KirraioyGrfvr3VuHFjq7i42LIsy/rwww8tSVZ6evp5vUaSLH9/f7e+J06csDp37mxFR0dbP/zwgxUaGmpdffXVVlFRUZnznz592jp16pT13HPPWfXr13fVaVmW1bRpUyswMNDav3+/qy0jI8OSZIWHh1sFBQWu9qVLl1qSrNTUVFdbQkKCJcl69dVX3f7miy++aEmyNm7c6Pa3EhISXOeJiYmWn5+ftXnzZrexH330kSXJ+vjjj//glQN8HytAQDU3b948bd68WZs3b9bKlSuVkJCgsWPHuj3OWbNmjerUqaPhw4e7jT37yaFPP/3U1TZixAjdd999+p//+Z9SV0D+yMiRI1WzZk3Vrl1bvXr10unTp/XRRx/p0ksvLbV/QUGBvvzySw0fPlwXXXSRq93f31+33Xab9u/fr127dp3z3y/Nb1+js8eXX37p1sdut2vx4sU6dOiQYmJiylz1WrNmja655ho5HA75+/urZs2a+tvf/qZDhw7p4MGDbn07derktvG7TZs2kqTY2FjVrl27RHtpjwlvvfVWt/OzK3vp6ell3u/y5cvVvn17derUyW3V69prr61Wn34DysMmaKCaa9OmTYlN0Hv37tVjjz2m0aNHq27d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sizZbDZJUnp6uvr27atGjRopKChI8fHxOnTokAoKCsqd4+uvv9aQIUPUtGlTBQUFKTY2VpKUnZ1d1eUDuAAIQACqnR07dig6Olp79+7VwIED1b59eyUnJ2vr1q2aPXu2JOnUqVNlji8oKFC/fv100UUXaf78+dq8ebOWLFki6cyjMQC+j0dgAKqVNWvW6LvvvtMjjzyiLVu2qKioSNOmTZOf35n/31u8eLFb/4CAAJ0+fdqtbefOnfr111/10ksvKTIyUpK0ZcuWC3MDAC4IVoAA+KzCwkLl5ubq559/1rZt2zR58mQNGTJEgwYNUnx8vJo3b66ioiK99tpr+umnn/TPf/5Tb775ptscUVFRys/P16effqpff/1Vx44dU5MmTRQQEOAal5qaqueff95DdwmgKhCAAPisf/3rXwoPD1dUVJT69++v9PR0zZw5U8uWLZO/v786deqk6dOna8qUKWrfvr3ef/99JSYmus3Rs2dP3XvvvRo5cqQaNGigl19+WQ0aNFBSUpI+/PBDtW3bVi+99JKmTp3qobsEUBVslmVZni4CAADgQmIFCAAAGIcABAAAjEMAAgAAxiEAAQAA4xCAAACAcQhAAADAOAQgAABgHAIQAAAwDgEIAAAYhwAEAACMQwACAADGIQABAADj/D99UfIRxfpzSQAAAABJRU5ErkJggg==",
31 | "text/plain": [
32 | ""
33 | ]
34 | },
35 | "metadata": {},
36 | "output_type": "display_data"
37 | }
38 | ],
39 | "source": [
40 | "data = np.array([1,2,3,3,5,7,7,8,9,10,20])\n",
41 | "q1 = np.percentile(data, 25) # 25% percentile/ Q1\n",
42 | "q3 = np.percentile(data, 75) # 75% percentile/ Q3\n",
43 | "iqr = q3 - q1 #inter quartile range\n",
44 | "\n",
45 | "upper_whisker = q3 + (1.5 * iqr) # Q3 + (1.5*IQR)\n",
46 | "lower_whisker = q1 - (1.5 * iqr) #Q1 – (1.5*IQR)\n",
47 | "\n",
48 | "\n",
49 | "outliers = (data < lower_whisker) | (data > upper_whisker)\n",
50 | "\n",
51 | "# Create the boxplot\n",
52 | "fig, ax = plt.subplots()\n",
53 | "ax.boxplot(data)\n",
54 | "\n",
55 | "# Show the plot\n",
56 | "ax.set_title('Box Plot Example')\n",
57 | "ax.set_xlabel('Data')\n",
58 | "ax.set_ylabel('Values')\n",
59 | "plt.show()\n"
60 | ]
61 | },
62 | {
63 | "cell_type": "code",
64 | "execution_count": 3,
65 | "id": "8d52a6ee",
66 | "metadata": {},
67 | "outputs": [
68 | {
69 | "data": {
70 | "text/plain": [
71 | "array([False, False, False, False, False, False, False, False, False,\n",
72 | " False, True])"
73 | ]
74 | },
75 | "execution_count": 3,
76 | "metadata": {},
77 | "output_type": "execute_result"
78 | }
79 | ],
80 | "source": [
81 | "outliers"
82 | ]
83 | },
84 | {
85 | "cell_type": "code",
86 | "execution_count": 4,
87 | "id": "f459f866",
88 | "metadata": {},
89 | "outputs": [
90 | {
91 | "data": {
92 | "text/plain": [
93 | "Text(0, 0.5, 'Values')"
94 | ]
95 | },
96 | "execution_count": 4,
97 | "metadata": {},
98 | "output_type": "execute_result"
99 | },
100 | {
101 | "data": {
102 | "image/png": "iVBORw0KGgoAAAANSUhEUgAAAkAAAAHFCAYAAAAaD0bAAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8qNh9FAAAACXBIWXMAAA9hAAAPYQGoP6dpAAAyqklEQVR4nO3df3zN9f//8fvZ2DHaDhP7wdjIb8IIqbQRISKJkjbVu5/6IfnUWz/e6ZelN5Lo51uWt/KjNuxD3pnMr1L50SqF5t0Y2fLJmx0bxuz1/cPXeXfajyybc86et+vl8rrU6/l6Pp97vM4fnXvP1/OcY7MsyxIAAIBB/DxdAAAAwIVGAAIAAMYhAAEAAOMQgAAAgHEIQAAAwDgEIAAAYBwCEAAAMA4BCAAAGIcABAAAjEMAAqqppKQk2Ww2t6NBgwaKjY3V8uXLL3g9a9eudavF399foaGhuummm7Rjxw5Xvz179shmsykpKanCf+OHH37QpEmTtGfPnnPqX9pr9Ntj7dq1Fa7BG0VFRWnMmDGeLgPwKjU8XQCAqjV37ly1bt1almUpNzdXs2bN0uDBg5WamqrBgwdf8HomT56suLg4nTx5Ulu2bNFzzz2nTz/9VN99950aNWp0XnP/8MMPevbZZxUbG6uoqKhzHnf2Nfq9tm3bnlc9ALwXAQio5tq3b6+uXbu6zvv376969eppwYIFHglALVq0UI8ePSRJvXr1Ut26dXXnnXcqKSlJTz755AWvRyr5GgGo/ngEBhimVq1aCggIUM2aNd3a//Of/+j+++9Xo0aNFBAQoGbNmunJJ59UYWGhJOnEiRPq3LmzLrnkEuXl5bnG5ebmKiwsTLGxsTp9+nSF6zkbhvbu3Vtuv40bN6pPnz4KCgpS7dq11bNnT61YscJ1PSkpSTfddJMkKS4uzvUY6888Svu9hQsXymazadasWW7tzzzzjPz9/ZWWluZqe/bZZ9W9e3eFhIQoODhYMTExmjNnjn7/u9NRUVEaNGiQli9frs6dOyswMFBt2rRxPZ5MSkpSmzZtVKdOHXXr1k1btmxxGz9mzBhddNFF+v7779WnTx/VqVNHDRo00AMPPKBjx4794T05nU5NmDBB0dHRCggIUKNGjTRu3DgVFBT82ZcJ8CkEIKCaO336tIqKinTq1Cnt37/f9SY3atQoV58TJ04oLi5O8+bN0/jx47VixQqNHj1aL7/8soYNGybpTHBavHixDh48qDvuuEOSVFxcrFtvvVWWZWnBggXy9/evcH27d++WJDVo0KDMPuvWrVPv3r2Vl5enOXPmaMGCBQoKCtLgwYO1aNEiSdJ1112nyZMnS5Jmz56tTZs2adOmTbruuuvO+TX67fHbMHfzzTfr3nvv1aOPPuoKImvWrNELL7ygJ554Qn379nX13bNnj+655x4tXrxYKSkpGjZsmB588EE9//zzJf7uN998o4kTJ+rxxx9XSkqKHA6Hhg0bpmeeeUb/+Mc/NHnyZL3//vvKy8vToEGDdPz4cbfxp06d0sCBA9WnTx8tXbpUDzzwgN566y2NHDmy3Ps9duyYrr76ar333nt66KGHtHLlSj3++ONKSkrS9ddfXyKsAdWSBaBamjt3riWpxGG3263XX3/dre+bb75pSbIWL17s1j5lyhRLkrVq1SpX26JFiyxJ1owZM6y//e1vlp+fn9v1sqSnp1uSrEWLFlmnTp2yjh07Zq1fv9665JJLLH9/f+ubb76xLMuysrKyLEnW3LlzXWN79OhhNWzY0Dp69KirraioyGrfvr3VuHFjq7i42LIsy/rwww8tSVZ6evp5vUaSLH9/f7e+J06csDp37mxFR0dbP/zwgxUaGmpdffXVVlFRUZnznz592jp16pT13HPPWfXr13fVaVmW1bRpUyswMNDav3+/qy0jI8OSZIWHh1sFBQWu9qVLl1qSrNTUVFdbQkKCJcl69dVX3f7miy++aEmyNm7c6Pa3EhISXOeJiYmWn5+ftXnzZrexH330kSXJ+vjjj//glQN8HytAQDU3b948bd68WZs3b9bKlSuVkJCgsWPHuj3OWbNmjerUqaPhw4e7jT37yaFPP/3U1TZixAjdd999+p//+Z9SV0D+yMiRI1WzZk3Vrl1bvXr10unTp/XRRx/p0ksvLbV/QUGBvvzySw0fPlwXXXSRq93f31+33Xab9u/fr127dp3z3y/Nb1+js8eXX37p1sdut2vx4sU6dOiQYmJiylz1WrNmja655ho5HA75+/urZs2a+tvf/qZDhw7p4MGDbn07derktvG7TZs2kqTY2FjVrl27RHtpjwlvvfVWt/OzK3vp6ell3u/y5cvVvn17derUyW3V69prr61Wn34DysMmaKCaa9OmTYlN0Hv37tVjjz2m0aNHq27d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sizZbDZJUnp6uvr27atGjRopKChI8fHxOnTokAoKCsqd4+uvv9aQIUPUtGlTBQUFKTY2VpKUnZ1d1eUDuAAIQACqnR07dig6Olp79+7VwIED1b59eyUnJ2vr1q2aPXu2JOnUqVNlji8oKFC/fv100UUXaf78+dq8ebOWLFki6cyjMQC+j0dgAKqVNWvW6LvvvtMjjzyiLVu2qKioSNOmTZOf35n/31u8eLFb/4CAAJ0+fdqtbefOnfr111/10ksvKTIyUpK0ZcuWC3MDAC4IVoAA+KzCwkLl5ubq559/1rZt2zR58mQNGTJEgwYNUnx8vJo3b66ioiK99tpr+umnn/TPf/5Tb775ptscUVFRys/P16effqpff/1Vx44dU5MmTRQQEOAal5qaqueff95DdwmgKhCAAPisf/3rXwoPD1dUVJT69++v9PR0zZw5U8uWLZO/v786deqk6dOna8qUKWrfvr3ef/99JSYmus3Rs2dP3XvvvRo5cqQaNGigl19+WQ0aNFBSUpI+/PBDtW3bVi+99JKmTp3qobsEUBVslmVZni4CAADgQmIFCAAAGIcABAAAjEMAAgAAxiEAAQAA4xCAAACAcQhAAADAOAQgAABgHAIQAAAwDgEIAAAYhwAEAACMQwACAADGIQABAADj/D99UfIRxfpzSQAAAABJRU5ErkJggg==",
103 | "text/plain": [
104 | ""
105 | ]
106 | },
107 | "metadata": {},
108 | "output_type": "display_data"
109 | }
110 | ],
111 | "source": [
112 | "plt.boxplot(data)\n",
113 | "plt.title('Box Plot Example')\n",
114 | "plt.xlabel('Data')\n",
115 | "plt.ylabel('Values')"
116 | ]
117 | },
118 | {
119 | "cell_type": "markdown",
120 | "id": "9aa02820",
121 | "metadata": {},
122 | "source": [
123 | "# Boxplot with Seaborn"
124 | ]
125 | },
126 | {
127 | "cell_type": "code",
128 | "execution_count": 5,
129 | "id": "8dec849a",
130 | "metadata": {},
131 | "outputs": [
132 | {
133 | "data": {
134 | "image/png": "iVBORw0KGgoAAAANSUhEUgAAAkAAAAHFCAYAAAAaD0bAAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8qNh9FAAAACXBIWXMAAA9hAAAPYQGoP6dpAAAymklEQVR4nO3daXgUVd7+8bsSSCdg0rJmgQARUWSRRXYdSECQsAi4EEVJUJ9RFJVleHRwGXEj4igioqIOEBmURcOSETMSJIAIIghRcUGYCYQlkYcMpkkwgST1f8GfHtos0JhOd1Lfz3XVdVGnzqn6Vb+g75w63W2YpmkKAADAQvy8XQAAAEB1IwABAADLIQABAADLIQABAADLIQABAADLIQABAADLIQABAADLIQABAADLIQABAADLIQABtVRSUpIMw3DZmjRpoujoaH300UfVXs+GDRtcavH391doaKhuvfVW/fDDD85++/fvl2EYSkpKcvsa33//vaZPn679+/dfUP/yXqNztw0bNrhdgy9q1aqVxo0b5+0yAJ9Sx9sFAPCshQsXqm3btjJNUzk5OZo7d66GDx+ulJQUDR8+vNrrmTFjhmJiYnTq1Cnt2LFDzzzzjD799FN9++23atas2e869/fff6+nn35a0dHRatWq1QWPO/sa/Va7du1+Vz0AfBcBCKjlOnTooG7dujn3Bw8erAYNGmjJkiVeCUBt2rRRr169JEl9+/bVpZdeqnvuuUdJSUl6/PHHq70eqexrBKD24xEYYDGBgYEKCAhQ3bp1Xdr/85//6IEHHlCzZs0UEBCgyy67TI8//riKiookSYWFherSpYsuv/xy5eXlOcfl5OQoLCxM0dHRKikpcbues2HowIEDlfbbvHmzBgwYoODgYNWrV099+vTRmjVrnMeTkpJ06623SpJiYmKcj7Eu5lHaby1dulSGYWju3Lku7U899ZT8/f2VlpbmbHv66afVs2dPNWzYUCEhIeratavmz5+v3/7udKtWrTRs2DB99NFH6tKli4KCgnTVVVc5H08mJSXpqquuUv369dWjRw/t2LHDZfy4ceN0ySWX6LvvvtOAAQNUv359NWnSRA8++KBOnjx53ntyOByaOnWqoqKiFBAQoGbNmmnSpEkqKCi42JcJqFEIQEAtV1JSouLiYp0+fVqHDh1yvsmNGTPG2aewsFAxMTFatGiRpkyZojVr1ujOO+/Uiy++qJtuuknSmeC0fPlyHT16VHfffbckqbS0VHfccYdM09SSJUvk7+/vdn379u2TJDVp0qTCPhs3blT//v2Vl5en+fPna8mSJQoODtbw4cO1bNkySdLQoUM1Y8YMSdLrr7+urVu3auvWrRo6dOgFv0bnbueGudtuu03jx4/Xn/70J2cQWb9+vZ577jk99thjGjhwoLPv/v37dd9992n58uVasWKFbrrpJj300EN69tlny1z366+/1rRp0/Too49qxYoVstvtuummm/TUU0/pb3/7m2bMmKH33ntPeXl5GjZsmH799VeX8adPn9aQIUM0YMAArVq1Sg8++KDeeustxcXFVXq/J0+eVL9+/fTuu+/q4YcfVmpqqh599FElJSXpxhtvLBPWgFrJBFArLVy40JRUZrPZbOYbb7zh0nfevHmmJHP58uUu7TNnzjQlmWvXrnW2LVu2zJRkzp492/zLX/5i+vn5uRyvSHp6uinJXLZsmXn69Gnz5MmT5qZNm8zLL7/c9Pf3N7/++mvTNE0zMzPTlGQuXLjQObZXr15m06ZNzRMnTjjbiouLzQ4dOpjNmzc3S0tLTdM0zQ8++MCUZKanp/+u10iS6e/v79K3sLDQ7NKlixkVFWV+//33ZmhoqNmvXz+zuLi4wvOXlJSYp0+fNp955hmzUaNGzjpN0zRbtmxpBgUFmYcOHXK2ZWRkmJLM8PBws6CgwNm+atUqU5KZkpLibEtISDAlma+++qrLNZ9//nlTkrl582aXayUkJDj3ExMTTT8/P3P79u0uYz/88ENTkvnxxx+f55UDaj5mgIBabtGiRdq+fbu2b9+u1NRUJSQkaMKECS6Pc9avX6/69evrlltucRl79pNDn376qbNt9OjRuv/++/W///u/5c6AnE9cXJzq1q2revXqqW/fviopKdGHH36oq6++utz+BQUF2rZtm2655RZdcsklznZ/f3+NHTtWhw4d0p49ey74+uU59zU6u23bts2lj81m0/Lly5Wbm6uuXbtWOOu1fv16XX/99bLb7fL391fdunX1l7/8Rbm5uTp69KhL386dO7ss/L7qqqskSdHR0apXr16Z9vIeE95xxx0u+2dn9tLT0yu8348++kgdOnRQ586dXWa9brjhhlr16TegMiyCBmq5q666qswi6AMHDuiRRx7RnXfeqUsv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1Kuvvlphuw/9HQigmvhMADJNU1OmTNF1112nDh06SJJycnIkSaGhoS59Q0NDncfKk5OT49aYxMRE2e125xYZGfl7bgWAj8nKytL27dtdZn8kqaSkRNu3b1dWVpaXKgPgLT4TgB588EF988035T6iMgzDZd80zTJtv2fMtGnTlJeX59wOHjzoZvUAfFmLFi3UvXt3+fv7u7T7+/urR48eatGihZcqA+AtPhGAHnroIaWkpCg9Pd3lWXxYWJgklZm5OXr0aJkZnnOFhYW5NcZmsykkJMRlA1B7GIahiRMnVth+vj+oANQ+Xg1ApmnqwQcf1IoVK7R+/XpFRUW5HI+KilJYWJjS0tKcbadOndLGjRvVp0+fCs/bu3dvlzGStHbt2krHAKjdmjdvrjFjxjjDjmEYGjNmjJo1a+blygB4Qx1vXnzChAl6//33tXr1agUHBztnbex2u4KCgmQYhiZNmqQZM2aoTZs2atOmjWbMmKF69eppzJgxzvPEx8erWbNmSkxMlCRNnDhRffv21cyZMzVixAitXr1a69at0+bNm71ynwB8wx133KHU1FQdO3ZMjRs3dvl/BIC1eHUG6M0331ReXp6io6MVHh7u3JYtW+bs88gjj2jSpEl64IEH1K1bNx0+fFhr165VcHCws09WVpays7Od+3369NHSpUu1cOFCXX311UpKStKyZcvUs2fPar0/AL4lMDBQU6ZMUWhoqCZPnqzAwEBvlwTAS3zqe4B8Bd8DBABAzVNjvwcIAACgOhCAAACA5RCAAACA5RCAAACA5RCAAACA5RCAAACA5RCAAACA5RCAAACA5RCAAACA5RCAAACA5RCAAACA5RCAAACA5RCAAACA5RCAAACA5RCAAACA5RCAAACA5RCAAACA5RCAAACA5RCAAACA5RCAAACA5RCAAACA5RCAAACA5RCAAACA5RCAAACA5RCAAACA5RCAAACA5RCAAACA5RCAAACA5RCAAACA5RCAAACA5RCAAACA5RCAAACA5RCAAACA5Xg1AG3atEnDhw9XRESEDMPQqlWrXI4bhlHu9te//rXCcyYlJZU7prCw0MN3AwAAagqvBqCCggJ16tRJc+fOLfd4dna2y7ZgwQIZhqGbb7650vOGhISUGRsYGOiJWwAAADVQHW9ePDY2VrGxsRUeDwsLc9lfvXq1YmJidNlll1V6XsMw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",
135 | "text/plain": [
136 | ""
137 | ]
138 | },
139 | "metadata": {},
140 | "output_type": "display_data"
141 | }
142 | ],
143 | "source": [
144 | "import seaborn as sns\n",
145 | "# Sample dataset\n",
146 | "data_points = [1,2,3,3,5,7,7,8,9,10,20]\n",
147 | "\n",
148 | "# Create a box plot\n",
149 | "sns.boxplot(data = data_points, width=0.1)\n",
150 | "\n",
151 | "# Add labels and title\n",
152 | "plt.xlabel('Data')\n",
153 | "plt.ylabel('Values')\n",
154 | "plt.title('Box Plot Example')\n",
155 | "\n",
156 | "# Display the plot\n",
157 | "plt.show()"
158 | ]
159 | },
160 | {
161 | "cell_type": "code",
162 | "execution_count": null,
163 | "id": "fb100325",
164 | "metadata": {},
165 | "outputs": [],
166 | "source": []
167 | }
168 | ],
169 | "metadata": {
170 | "kernelspec": {
171 | "display_name": "Python 3 (ipykernel)",
172 | "language": "python",
173 | "name": "python3"
174 | },
175 | "language_info": {
176 | "codemirror_mode": {
177 | "name": "ipython",
178 | "version": 3
179 | },
180 | "file_extension": ".py",
181 | "mimetype": "text/x-python",
182 | "name": "python",
183 | "nbconvert_exporter": "python",
184 | "pygments_lexer": "ipython3",
185 | "version": "3.9.13"
186 | }
187 | },
188 | "nbformat": 4,
189 | "nbformat_minor": 5
190 | }
191 |
--------------------------------------------------------------------------------
/3. Matplotlib Bar Plot .ipynb:
--------------------------------------------------------------------------------
1 | {
2 | "cells": [
3 | {
4 | "cell_type": "markdown",
5 | "id": "ce57ee69",
6 | "metadata": {},
7 | "source": [
8 | "**Bar Plot:** Bar plots are used for visualizing the distribution of *categorical data* or the relationship between two categorical variables. The x-axis of a bar plot represents the categories, and the y-axis represents the value associated with each category. Each bar represents a different category, and the height of the bar corresponds to the value.\n",
9 | "Bar plots are used when you have distinct categories and want to compare their values."
10 | ]
11 | },
12 | {
13 | "cell_type": "code",
14 | "execution_count": 1,
15 | "id": "5443a219",
16 | "metadata": {},
17 | "outputs": [
18 | {
19 | "data": {
20 | "text/plain": [
21 | ""
22 | ]
23 | },
24 | "execution_count": 1,
25 | "metadata": {},
26 | "output_type": "execute_result"
27 | },
28 | {
29 | "data": {
30 | "image/png": "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F8e2eeK41nW6GY9aDf5qlzZt2qhv377Ky8vzW56Xl6fExMSGvjsAABBkGuXPLpMmTdLYsWMVFxenhIQEvfLKK9q7d68mTJjQGHcHAACCSKPEx913360ff/xRf/7zn7V//3716NFDH374obp27doYd3dBcDqdmjFjRp0/USH4cWybL45t88RxPXeN8j4fAAAAJ8NnuwAAAKuIDwAAYBXxAQAArCI+gCCRmZmpa6+9tqmHAQDnjPg4zxUUFKhly5YaNGiQ3/Ldu3fL4XCoqKioaQZ2HrvvvvvkcDjkcDjUunVrud1uJScna8GCBTp+/HhA+1q0aFGDvendrl27NHLkSEVFRSkkJESdO3fW0KFD9d///veMbj958mStWbOmQcaChlH7vVbf2wikp6fL4XDovvvu8207bNgwuwO8ADXk478h1I5lw4YNfsurqqp87+S9bt06v+3fe+89u4NsAsTHeW7BggV6+OGH9emnn2rv3r1NPZygMWjQIO3fv1+7d+/WRx99pP79++vRRx/V4MGDVVNTY3081dXVSk5Oltfr1fLly7Vz50699dZb6tGjh+/DFE+nXbt26tChQyOPFIGKjo7WsmXLdOTIEd+yo0eP6s0331SXLl2acGQXrvPt8R8dHa2FCxf6LVuxYoXatWtnfSznC+LjPHb48GG9/fbbevDBBzV48GAtWrSoqYcUNJxOpzwejy699FL16dNHTzzxhN5//3199NFHfv+Oc+bMUc+ePdW2bVtFR0crPT1dhw4dkiStW7dO999/vyoqKny/vWRmZkqS3njjDcXFxSk8PFwej0ejRo1SWVnZScezfft27dq1Sy+99JJuuOEGde3aVTfeeKOeeuopXX/99b7tvvvuO91zzz1q37692rZtq7i4OH3xxReS6v+zy8KFC3X11VcrJCREV111lV566SXfutrZseXLl6t///4KCwtT79699fnnn/vt47PPPlNSUpLCwsJ08cUXa+DAgSovL5d04rMaZs+ercsvv1yhoaHq3bu33n333YCPR3PWp08fdenSRcuXL/ctW758uaKjo3Xdddc14cguXGfy+K+oqNAf//hHXXLJJXK5XLr11lu1ZcsWv/3885//VN++fRUSEqLLL79cWVlZfvHicDg0b948paamKjQ0VDExMXrnnXfqjCctLa1OoC5YsEBpaWmN8w8QBIiP89hbb72lbt26qVu3bhozZowWLlx4Rh9VjPrdeuut6t27t9+TRIsWLfT888/r66+/1uLFi/XJJ59oypQpkqTExETNnTtXLpdL+/fv1/79+zV58mRJJ2YyZs6cqS1btui9995TcXGxb3q9Pp06dVKLFi307rvv6tixY/Vuc+jQISUlJWnfvn1auXKltmzZoilTppx0qnj+/PmaPn26nnrqKe3YsUPZ2dl68skntXjxYr/tpk+frsmTJ6uoqEi/+c1vNHLkSN8P0KKiIt1222265ppr9Pnnn+vTTz/VkCFDfGP805/+pIULF2revHnatm2bHnvsMY0ZM0b5+fln9o9+gbj//vv9frNdsGCBxo0b14Qjwq/98vFvjNEdd9yh0tJSffjhh9q0aZP69Omj2267TQcPHpQkffzxxxozZoweeeQRbd++XS+//LIWLVqkp556ym+/Tz75pEaMGKEtW7ZozJgxGjlypHbs2OG3Td++fRUTE6N//OMfkqSSkhKtX79eY8eOtfPFn48MzluJiYlm7ty5xhhjfv75Z9OxY0eTl5dnjDGmuLjYSDKbN29uwhGen9LS0szQoUPrXXf33Xebq6+++qS3ffvtt02HDh181xcuXGgiIiJOe59ffvmlkWQqKytPuk1ubq4JCwsz4eHhpn///ubPf/6z+fbbb33rX375ZRMeHm5+/PHHem8/Y8YM07t3b9/16Ohos3TpUr9tZs6caRISEowx//975NVXX/Wt37Ztm5FkduzYYYwxZuTIkebGG2+s9/4OHTpkQkJCTEFBgd/y8ePHm5EjR57067yQ1H6vHThwwDidTlNcXGx2795tQkJCzIEDB8zQoUNNWlqa37ZoXGfy+F+zZo1xuVzm6NGjfuuvuOIK8/LLLxtjjLn55ptNdna23/q///3vJjIy0nddkpkwYYLfNvHx8ebBBx/022bFihVm7ty5pn///sYYY7Kysszvfvc7U15ebiSZtWvX1tm+uWuUt1fHudu5c6e+/PJL32/prVq10t13360FCxZowIABTTy64GWMkcPh8F1fu3atsrOztX37dnm9XtXU1Ojo0aM6fPiw2rZte9L9bN68WZmZmSoqKtLBgwd9sxN79+5V9+7d673NxIkTde+992rt2rX64osv9M477yg7O1srV65UcnKyioqKdN1116l9+/an/ToOHDigkpISjR8/Xn/4wx98y2tqaup8qmSvXr18/x8ZGSnpxKdMX3XVVSoqKtJdd91V731s375dR48eVXJyst/y6upq/pzwKx07dtQdd9yhxYsX+36r7tixY1MPC79S+/jftGmTDh06VOccqiNHjujbb7+VJG3atEmFhYV+Mx3Hjh3T0aNH9dNPPyksLEySlJCQ4LePhISEel8IMGbMGD3++OPatWuXFi1apOeff76Bv7rgQnycp1577TXV1NTo0ksv9S0zxqh169a+v8cjcDt27FBMTIwkac+ePbr99ts1YcIEzZw5U+3bt9enn36q8ePH6+effz7pPg4fPqyUlBSlpKTojTfeUKdOnbR3714NHDhQ1dXVp7z/8PBw3Xnnnbrzzjs1a9YsDRw4ULNmzVJycrJCQ0PP+OuojZ358+crPj7eb13Lli39rrdu3dr3/7XhVXv7U91n7TYffPCB3/ehJD7Toh7jxo3TQw89JEl68cUXm3g0qE/t4//48eOKjIz0e5VJrdpXtx0/flxZWVkaPnx4nW1CQkJOeT+//AWnVocOHTR48GCNHz9eR48eVWpqqiorK8/q62gOiI/zUE1NjV5//XU9++yzSklJ8Vs3YsQILVmyRIMHD26i0QWvTz75RFu3btVjjz0mSdq4caNqamr07LPPqkWLE6c/vf322363adOmTZ1zNP7zn//ohx9+0NNPP63o6GjfvgLlcDh01VVXqaCgQNKJGYpXX31VBw8ePO3sh9vt1qWXXqpdu3Zp9OjRAd93rV69emnNmjXKysqqs6579+5yOp3au3evkpKSzvo+LhSDBg3yxefAgQObeDT4tV8+/jt37qzS0lK1atVKl112Wb3b9+nTRzt37tSVV155yv1u2LBB9957r9/1k80Mjhs3TrfffrumTp1a55eECw3xcR7617/+pfLyco0fP77OFPrvf/97vfbaa8THaVRVVam0tFTHjh3T999/r1WrViknJ0eDBw/2/aC44oorVFNToxdeeEFDhgzRZ599pr/97W9++7nssst06NAhrVmzRr1791ZYWJi6dOmiNm3a6IUXXtCECRP09ddfa+bMmaccT1FRkWbMmKGxY8eqe/fuatOmjfLz87VgwQJNnTpVkjRy5EhlZ2dr2LBhysnJUWRkpDZv3qyoqKg6U7vSiVe/PPLII3K5XEpNTVVVVZU2btyo8vJyTZo06Yz+naZNm6aePXsqPT1dEyZMUJs2bbR27Vrddddd6tixoyZPnqzHHntMx48f10033SSv16uCggK1a9fugj5Tvz4tW7b0nWh4sieWioqKOlPy7du35yW5Dex0j/8WLVooISFBw4YN0zPPPKNu3bpp3759+vDDDzVs2DDFxcXp//7v/zR48GBFR0frrrvuUosWLfTVV19p69atmjVrlu++3nnnHcXFxemmm27SkiVL9OWXX+q1116rd1yDBg3SgQMH5HK5Tjn+4uLiOt8nV155ZfN6aW7TnnKC+gwePNjcfvvt9a7btGmTkeT7Lyec1pWWlmYkGUmmVatWplOnTmbAgAFmwYIF5tixY37bzpkzx0RGRprQ0FAzcOBA8/rrrxtJpry83LfNhAkTTIcOHYwkM2PGDGOMMUuXLjWXXXaZcTqdJiEhwaxcufKUx+PAgQPmkUceMT169DDt2rUz4eHhpmfPnuavf/2r35h2795tRowYYVwulwkLCzNxcXHmiy++MMbUPeHUGGOWLFlirr32WtOmTRtz8cUXm1tuucUsX77cGFP/Scn1neC2bt06k5iYaJxOp7nooovMwIEDfV//8ePHzXPPPWe6detmWrdubTp16mQGDhxo8vPzz/yANGOnO4n01yec1n5f/vJSux4N40wf/16v1zz88MMmKirKtG7d2kRHR5vRo0ebvXv3+rZZtWqVSUxMNKGhocblcpnf/va35pVXXvGtl2RefPFFk5ycbJxOp+natat58803/cajU5xAerITTuu7/HKb5sBhDK/dBAAgUA6HQytWrOCda88C7/MBAACsIj4AAIBVnHAKAMBZ4KyFs8fMBwAAsIr4AAAAVhEfAADAKuIDAABYRXwAAACriA8AAGAV8QEAAKwiPgAAgFXEBwAAsOr/AbQo0f2J8oBvAAAAAElFTkSuQmCC\n",
31 | "text/plain": [
32 | ""
33 | ]
34 | },
35 | "metadata": {},
36 | "output_type": "display_data"
37 | }
38 | ],
39 | "source": [
40 | "import matplotlib.pyplot as plt\n",
41 | "\n",
42 | "categories = ['AI', 'Data Science', 'ML', 'DeepML']\n",
43 | "values = [20, 35, 30, 55]\n",
44 | "\n",
45 | "plt.bar(categories, values, color='blue')\n"
46 | ]
47 | },
48 | {
49 | "cell_type": "code",
50 | "execution_count": 2,
51 | "id": "ad37bbcb",
52 | "metadata": {},
53 | "outputs": [
54 | {
55 | "data": {
56 | "text/plain": [
57 | ""
58 | ]
59 | },
60 | "execution_count": 2,
61 | "metadata": {},
62 | "output_type": "execute_result"
63 | },
64 | {
65 | "data": {
66 | "image/png": "iVBORw0KGgoAAAANSUhEUgAAAmkAAAGdCAYAAABJmuRAAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8qNh9FAAAACXBIWXMAAA9hAAAPYQGoP6dpAAAezklEQVR4nO3dfZBV9X348c+FhQXC7iJIeFwVY4T6ABFokqXGJ+RJMTKxjmGCLoG2g/HZOkmITTEBg+lEp4laYwwL2phgjGBtG20YBSwx1MCwSJDajIAwA6hRugskrAW+vz9SbrI/EFlgud+lr9fMmWHPOffcz34l3nfO7r0WUkopAADISrtSDwAAwIFEGgBAhkQaAECGRBoAQIZEGgBAhkQaAECGRBoAQIZEGgBAhspKPQBHZt++fbFly5aoqKiIQqFQ6nEAgMOQUoodO3ZE3759o127Q98rE2lt1JYtW6K6urrUYwAAR2Dz5s3Rv3//Q54j0tqoioqKiPj9P+TKysoSTwMAHI7Gxsaorq4uvo4fikhro/b/iLOyslKkAUAbczi/quSNAwAAGRJpAAAZEmkAABkSaQAAGRJpAAAZEmkAABkSaQAAGRJpAAAZEmkAABkSaQAAGRJpAAAZEmkAABkSaQAAGSor9QAcnaqqUk8AACeelEo9gTtpAABZEmkAABkSaQAAGRJpAAAZEmkAABkSaQAAGRJpAAAZEmkAABkSaQAAGRJpAAAZEmkAABkSaQAAGRJpAAAZEmkAABkSaQAAGRJpAAAZEmkAABkSaQAAGRJpAAAZEmkAABkSaQAAGRJpAAAZEmkAABkSaQAAGRJpAAAZEmkAABkSaQAAGRJpAAAZEmkAABkSaQAAGRJpAAAZarORNnny5CgUClEoFKJDhw7Rq1evGDVqVNTV1cW+ffuO+zz7Z1m+fHmz/U1NTdGjR48oFAqxZMmSZuc//fTTx3dIAKDNaLORFhExduzY2Lp1a2zcuDGeffbZuPjii+OWW26J8ePHx549e477PNXV1TF37txm+xYuXBhdu3Y97rMAAG1bm4608vLy6N27d/Tr1y+GDh0aX/nKV+Kf/umf4tlnn4158+ZFRERDQ0P81V/9VXz4wx+OysrKuOSSS2L16tXNrvPP//zPMWzYsOjUqVOcfvrp8bWvfa1Z5BUKhXjooYdi3Lhx0blz5xgwYEA8+eSTB8xTW1sb8+fPj9/97nfFfXV1dVFbW9s6CwAAnLDadKQdzCWXXBJDhgyJBQsWREopLr/88ti2bVv89Kc/jZUrV8bQoUNj5MiR8e6770ZExL/927/FpEmT4uabb45XX301Hn744Zg3b17cfffdza771a9+Na666qpYvXp1TJo0KSZOnBjr1q1rds6wYcNiwIAB8dRTT0VExObNm+PFF1+Ma6+99qi/r6ampmhsbGy2AQAnrhMu0iIiBg0aFBs3bozFixfHmjVr4sknn4zhw4fHRz/60fjWt74V3bp1i5/85CcREXH33XfHl7/85aitrY3TTz89Ro0aFTNnzoyHH3642TWvvvrq+Iu/+Is488wzY+bMmTF8+PC4//77D3juz3/+81FXVxcREXPnzo3LLrssevbsedTf0+zZs6Oqqqq4VVdXH/U1AYB8nZCRllKKQqEQK1eujJ07d0aPHj2ia9euxW3Dhg3x+uuvR0TEypUr4+tf/3qz43/5l38ZW7dujd/+9rfFa9bU1DR7jpqamgPupEVETJo0KX7xi1/E+vXrY968eTFlypRj8j1Nnz49GhoaitvmzZuPyXUBgDyVlXqA1rBu3boYMGBA7Nu3L/r06dPsXZX7devWLSIi9u3bF1/72tfiM5/5zAHndOrU6ZDPUygUDtjXo0ePGD9+fEydOjV2794d48aNix07dhzR9/HHysvLo7y8/KivAwC0DSdcpL3wwguxZs2auO2226J///6xbdu2KCsri9NOO+2g5w8dOjRee+21OOOMMw553eXLl8d1113X7OvzzjvvoOdOmTIlLrvssvjSl74U7du3P+LvBQD4v6tNR1pTU1Ns27Yt9u7dG2+++WY899xzMXv27Bg/fnxcd9110a5du6ipqYkJEybEN7/5zRg4cGBs2bIlfvrTn8aECRNi+PDh8bd/+7cxfvz4qK6ujquvvjratWsXr7zySqxZsyZmzZpVfK79v9d2/vnnx+OPPx4vv/xyzJkz56BzjR07Nt5+++2orKw85PwbNmyI+vr6ZvvOOOMMH9kBAESkNqq2tjZFRIqIVFZWlnr27JkuvfTSVFdXl/bu3Vs8r7GxMd10002pb9++qUOHDqm6ujp97nOfS5s2bSqe89xzz6URI0akzp07p8rKyvTxj388fe973ysej4j04IMPplGjRqXy8vJ06qmnph/96EfN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d0NDwweee0x+J+2SSy6JIUOGxIIFC4r72rVrF9/5znfiV7/6VTz66KPxwgsvxBe/+MWIiBgxYkT8/d//fVRWVsbWrVtj69atcccdd0TE7++MzZw5M1avXh1PP/10bNiwISZPnvy+z92zZ89o165d/OQnP4m9e/ce9JydO3fGhRdeGFu2bIlnnnkmVq9eHV/84hff90e0jzzySNx5551x9913x7p16+Ib3/hGfPWrX41HH3202Xl33nln3HHHHVFfXx9nnnlmTJw4sXg3sb6+PkaOHBlnn312/OIXv4hly5bFFVdcUZzxb/7mb2Lu3Lnx0EMPxdq1a+O2226LSZMmxdKlSw86U1NTUzQ2NjbbAIATWEvq7/3upKWU0jXXXJP+5E/+5H0f++Mf/zj16NGj+PXcuXNTVVXVBz7nyy+/nCKieBfuYB544IHUpUuXVFFRkS6++OL09a9/Pb3++uvF4w8//HCqqKhI77zzzkEf///fSauurk4//OEPm50zc+bMVFNTk1L6w52073//+8Xja9euTRGR1q1bl1JKaeLEienP/uzPDvp8O3fuTJ06dTrgztvUqVPTxIkT33fGiDjI5k6azWZrGxtQgjtp/xt7USgUil8vXrw4Ro0aFf369YuKioq47rrr4p133oldu3Yd8jqrVq2KK6+8Mk499dSoqKiIiy66KCIiNm3a9L6PueGGG2Lbtm3xgx/8IGpqauLJJ5+Ms88+OxYtWhQRv7+rdd5550X37t0/8Pt4++23Y/PmzTF16tTo2rVrcZs1a1a8/vrrzc4dPHhw8c99+vSJiIi33nqr+JwjR4486HO8+uqrsXv37hg1alSz53jssccOeI79pk+fHg0NDcVt8+bNH/i9AABtV9mxutC6detiwIABERHxxhtvxGWXXRbTpk2LmTNnRvfu3WPZsmUxderU+J//+Z/3vcauXbti9OjRMXr06PjBD34QPXv2jE2bNsWYMWPivffeO+TzV1RUxKc//en49Kc/HbNmzYoxY8bErFmzYtSoUdG5c+fD/j72/wj0kUceiU984hPNjrVv377Z1x06dCj+eX+g7n/8oZ5z/zn/+q//Gv369Wt2rLy8/KCPKS8vf99jAMCJ55jcSXvhhRdizZo1cdVVV0VExIoVK2LPnj1x7733xic/+ck488wzY8uWLc0e07FjxwN+h+w///M/4ze/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iXjsscfizDPPjDfffDNmzZoVI0aMiLVr11rTIyDS2qhCodDs65TSAfs4Otb4yN14443xyiuvxLJlyw44Zl1bbuDAgVFfXx///d//HU899VTU1tbG0qVLi8etactt3rw5brnllvjZz34WnTp1et/zrG3LjBs3rvjnc889N2pqauIjH/lIPProo/HJT34yIqxpS/hxZxtz8sknR/v27Q+4a/bWW28d8P9OODL734lkjY/MTTfdFM8880wsXrw4+vfvX9xvXY9cx44d44wzzojhw4fH7NmzY8iQIfHtb3/bmh6FlStXxltvvRXDhg2LsrKyKCsri6VLl8Z3vvOdKCsrK66ftT06H/rQh+Lcc8+NX//61/6+HgGR1sZ07Ngxhg0bFosWLWq2f9GiRTFixIgSTXViGTBgQPTu3bvZGr/33nuxdOlSa3wIKaW48cYbY8GCBfHCCy/EgAEDmh23rsdOSimampqs6VEYOXJkrFmzJurr64vb8OHD43Of+1zU19fH6aefbm2Pgaampli3bl306dPH39cjUbK3LHDE5s+fnzp06JDmzJmTXn311XTrrbemD33oQ2njxo2lHq3N2LFjR1q1alVatWpVioh03333pVWrVqU33ngjpZTSPffck6qqqtKCBQvSmjVr0sSJE1OfPn1SY2NjiSfP1/XXX5+qqqrSkiVL0tatW4vbb3/72+I51rXlpk+fnl588cW0YcOG9Morr6SvfOUrqV27dulnP/tZSsmaHkt//O7OlKztkfjrv/7rtGTJkrR+/fq0fPnyNH78+FRRUVF8fbKmLSPS2qgHH3wwnXrqqaljx45p6NChxY854PAsXrw4RcQBW21tbUrp928VnzFjRurdu3cqLy9PF1xwQVqzZk1ph87cwdYzItLcuXOL51jXlpsyZUrxf+s9e/ZMI0eOLAZaStb0WPr/I83attw111yT+vTpkzp06JD69u2bPvOZz6S1a9cWj1vTlimklFJp7uEBAPB+/E4aAECGRBoAQIZEGgBAhkQaAECGRBoAQIZEGgBAhkQaAECGRBoAQIZEGgBAhkQaAECGRBoAQIZEGgBAhv4fr5RyFK7OXagAAAAASUVORK5CYII=\n",
67 | "text/plain": [
68 | ""
69 | ]
70 | },
71 | "metadata": {},
72 | "output_type": "display_data"
73 | }
74 | ],
75 | "source": [
76 | "plt.barh(categories, values, color='blue')"
77 | ]
78 | },
79 | {
80 | "cell_type": "code",
81 | "execution_count": 3,
82 | "id": "9a5ffb52",
83 | "metadata": {},
84 | "outputs": [
85 | {
86 | "data": {
87 | "text/plain": [
88 | "Text(0.5, 1.0, 'Bar Plot Example')"
89 | ]
90 | },
91 | "execution_count": 3,
92 | "metadata": {},
93 | "output_type": "execute_result"
94 | },
95 | {
96 | "data": {
97 | "image/png": "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7HBZmPHz81OjRo2c2nx9fRUUFORoj4mJUWxsrCIiIhQREaHY2Fj5+PhowIABrigZAACUQS6dAHwt48aN04ULFxQdHa0zZ86oZcuWWrt2rfz8/FxdGgAAKCNsxhjj6iJKU2ZmpgICApSRkSF/f39XlwMAKCVX+WwISlFppYiSvH+7/DozAAAAN4IwAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALI0wAwAALM3D1QUAZZHN5uoKbl3GuLoCAFbDyAwAALA0wgwAALA0wgwAALA0wgwAALA0wgwAALA0wgwAALA0wgwAALA0wgwAALA0wgwAALA0wgwAALA0wgwAALA0wgwAALA0wgwAALA0wgwAALA0wgwAALA0wgwAALA0wgwAALA0wgwAALC0EoeZw4cP68iRI47lrVu3KiYmRgsXLryphQEAABRHicPMgAEDlJSUJElKT09XVFSUtm7dqokTJ+r555+/6QUCAABcTYnDzPfff6977rlHkrRq1So1atRImzdv1vLly5WQkHCz6wMAALiqEoeZnJwc2e12SdL//d//6YEHHpAk1a9fX8eOHbu51QEAAFxDicPMnXfeqTfffFNffPGF1q1bp86dO0uSjh49qqCgoJteIAAAwNWUOMzMnDlTCxYsUGRkpPr376+mTZtKktasWeM4/QQAAPBHsRljTEk3ysvLU2ZmpipVquRoS0tLk4+Pj6pWrXpTC7xRmZmZCggIUEZGhvz9/V1dDizCZnN1Bbeukv9GAn7D69Y1Sus1W5L37+u6zowxRjt27NCCBQuUlZUlSfL09JSPj8/17A4AAOC6lTjMHDx4UI0bN1bPnj01atQonTx5UpI0a9YsjR07tkT7mj9/vpo0aSJ/f3/5+/urVatW+uSTTxzrjTGaOnWqQkND5e3trcjISO3Zs6ekJQMAgHKsxGHmqaeeUosWLXTmzBl5e3s72nv37q3169eXaF+33367XnzxRW3fvl3bt29X+/bt1bNnT0dgmTVrluLj4zVnzhxt27ZNISEhioqKcowGAQAAlHjO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szVp0iT16dNHkrRkyRIFBwdr+fLleuyxx/7IUgEAQBlVZufMpKamKj09XR07dnS02e12tW3bVps3b3ZhZQAAoCxx6cjM1aSnp0uSgoODndqDg4N18ODBK26XnZ2t7Oxsx3JmZmbpFAgAAMqEMjsyU8BmszktG2MKtf1eXFycAgICHLewsLDSLhEAALhQmQ0zISEhkv47QlPgxIkThUZrfm/ChAnKyMhw3A4fPlyqdQIAANcqs2EmPDxcISEhWrdunaPt0qVLSk5OVuvWra+4nd1ul7+/v9MNAACUXy6dM3P27Fnt37/fsZyamqrdu3crMDBQNWrUUExMjGJjYxUREaGIiAjFxsbKx8dHAwYMcGHVAACgLHFpmNm+fbvatWvnWB4zZowkaciQIUpISNC4ceN04cIFRUdH68yZM2rZsqXWrl0rPz8/V5UMAADKGJsxxri6iNKUmZmpgIAAZWRklMopp6vMRUYpK82fXI6r65T2bySOretwbMun0jquJXn/LrNzZgAAAIqDMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACyNMAMAACzNEmFm3rx5Cg8Pl5eXl+666y598cUXri4JAACUEWU+zLz33nuKiYnRpEmTtGvXLv3lL39Rly5ddOjQIVeXBgAAygCbMca4uoiradmypZo3b6758+c72ho0aKBevXopLi7umttnZmYqICBAGRkZ8vf3v+n12Ww3fZcoptL8yeW4uk5p/0bi2LoOx7Z8Kq3jWpL37zI9MnPp0iXt2LFDHTt2dGrv2LGjNm/e7KKqAABAWeLh6gKu5tSpU8rLy1NwcLBTe3Bw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\n",
98 | "text/plain": [
99 | ""
100 | ]
101 | },
102 | "metadata": {},
103 | "output_type": "display_data"
104 | }
105 | ],
106 | "source": [
107 | "import matplotlib.pyplot as plt\n",
108 | "\n",
109 | "categories = ['AI', 'Data Science', 'ML', 'DeepML']\n",
110 | "values = [20, 35, 30, 55]\n",
111 | "\n",
112 | "plt.bar(categories, values, color='blue')\n",
113 | "\n",
114 | "plt.xlabel('Categories')\n",
115 | "plt.ylabel('Values')\n",
116 | "plt.title('Bar Plot Example')\n"
117 | ]
118 | },
119 | {
120 | "cell_type": "code",
121 | "execution_count": 4,
122 | "id": "76d32837",
123 | "metadata": {},
124 | "outputs": [
125 | {
126 | "data": {
127 | "image/png": "iVBORw0KGgoAAAANSUhEUgAAAjMAAAHFCAYAAAAHcXhbAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8qNh9FAAAACXBIWXMAAA9hAAAPYQGoP6dpAABE1klEQVR4nO3dfXzO9f////th52Mbc7IT1sx5zkopRp9QNueR8pZz0YlIyVskH2wlpHd7UyIqQ+9EfcK7MyIne781MkRipGwoW+RkY2Zjnr8//HZ8O2xjm82xF7fr5XJc6vV6Po/X8TiO13E47nu+nq/XYTPGGAEAAFhUOWcXAAAAcD0IMwAAwNIIMwAAwNIIMwAAwNIIMwAAwNIIMwAAwNIIMwAAwNIIMwAAwNIIMwAAwNIIMyiTFi5cKJvN5nCrWrWq2rZtqy+//PKG1TF48GCHGjw8PFS/fn1NnjxZ58+ft/eLioqSzWYr1mMsWbJEM2fOLKGK85ecnCybzaaFCxfa18XHxysqKkqnT5/O079mzZrq2rXrdT3miRMnNH78eDVs2FDe3t7y9fVVeHi43n33XV28ePG6tl3S5syZ4/Da5Crq62YVNptNUVFRBbbPmjVLNptNq1evLrDPe++9J5vNpuXLlxf6cdu2bau2bdsWoVKgcAgzKNNiY2O1efNmxcfHa/78+XJxcVG3bt30xRdf3LAavLy8tHnzZm3evFkrV65UixYt9Morr2jQoEElsv0bEWaCgoK0efNmdenSxb4uPj5e0dHRpfKlvG/fPjVr1kzz5s1Tv3799NVXX2np0qVq1qyZnn32WXXu3NkhDDpbQWHmRr9uZUX//v3l4eGhBQsWFNgnNjZWVatWVbdu3W5gZUD+XJ1dAHA1jRs3VvPmze3LHTt2VKVKlfTxxx+X2D+imZmZ8vLyKrC9XLlyatmypX25U6dOSk5O1ieffKKYmBhVr169ROooTR4eHg7PoTTl5OTokUceUXp6urZu3ap69erZ2zp37qw2bdroscce07hx4zRr1qwbUlNx3cjXrSypXLmyunfvrpUrV+rEiROqXLmyQ/u+ffu0efNm/f3vf5ebm5uTqgT+H0ZmYCmenp5yd3fP8w9odHS0WrRoIX9/f/n6+uquu+7SBx98oCt/RzX38Mny5cvVrFkzeXp6Kjo6ush15H7BHTp0qMA+ly5d0owZM9SgQQN5eHioWrVqGjhwoH777Td7n7Zt2+qrr77SoUOHHA5nFeTFF1+Un5+fcnJy7OtGjhwpm82mN954w77uxIkTKleunN5++21JeQ+XREVF6cUXX5QkhYWF2R9348aNDo+3evVq3XXXXfLy8lKDBg2u+pd6rhUrVmjv3r166aWXHIJMrt69eysyMlLvvvuujh8/LknauHFjvo+f32Gebdu26bHHHlPNmjXl5eWlmjVrqk+fPnn2Re6hyg0bNuiZZ55RlSpVVLlyZfXs2VNHjx6196tZs6b27NmjuLg4++tQs2bNIr9uQ4cOlb+/v86dO5fnOT/wwANq1KjRVV+3tWvXqnv37qpRo4Y8PT1Vp04dPf300/rzzz8d+uUe0tyzZ4/69OkjPz8/BQQEaMiQIUpLS3Pom56erieffFKVK1dWhQoV1LFjR/38889XrSPX0KFDlZ2drSVLluRpi42NlSQNGTJEUuE/f1cqyn6XLu/7hx56SP7+/vL09FSzZs30ySefOPQ5d+6cxowZo7CwMHl6esrf31/NmzfXxx9/XKjnDWtiZAZlWk5Oji5evChjjP744w+98cYbysjIUN++fR36JScn6+mnn9Ztt90mSdqyZYtGjhyp33//XZMmTXLou2PHDiUmJup///d/FRYWpvLlyxe5rl9++UWSVLVq1QL7PPPMM5o/f76effZZde3aVcnJyZo4caI2btyoHTt2qEqVKpozZ46eeuop/frrr1qxYsU1H7d9+/b6xz/+oa1btyo8PFyS9O2338rLy0tr1661f9GuW7dOxhi1b98+3+088cQTOnnypN5++20tX75cQUFBkqSGDRva++zatUt///vf9dJLLykgIEDvv/++hg4dqjp16uj+++8vsMa1a9dKknr06FFgnx49emjNmjXauHGjevXqdc3n/VfJycmqX7++HnvsMfn7+yslJUVz587VPffco71796pKlSp5nmuXLl20ZMkSHTlyRC+++KL69++v9evXS7ocvh599FH5+flpzpw5ki6PyOTnaq+bv7+/FixYoCVLluiJJ56w32fv3r3asGGD3nnnnas+r19//VXh4eF64okn5Ofnp+TkZMXExOi+++7T7t278wT4Rx55RL1799bQoUO1e/dujR8/XpLsgdMYox49eig+Pl6TJk3SPffco++++06dOnUq1Ovcvn17hYaG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uQH7yuc1b968QtWUn3bt2kmSPvroI4f1+Z2ddDU9evRQ5cqVtWDBAsXGxqpevXq677777O3X8/kr7H6vX7++6tatq127dtlHaq+85Y4U/VVAQIAGDx6sPn36aP/+/fmeaYabAyMzKNN++ukn+9ViT5w4oeXLl2vt2rV6+OGH7SMQXbp0UUxMjPr27aunnnpKJ06c0D/+8Y8Cz0i5EerXr6+nnnpKb7/9tsqVK2e/Ns3EiRMVEhKiF154wd63SZMmWr58uebOnau77777miNBLi4uatOmjb744guFhYWpdu3akqTWrVvLw8ND69at03PPPXfNGps0aSLp8tVeBw0aJDc3N9WvXz/fL4WicHFx0WeffaaIiAiFh4fr73//u8LDw5WVlaUvvvhC8+fPV9OmTTV37lz7fQIDA9W+fXtNmzZNlSpVUmhoqNatW5fn6rK+vr66//779cYbb6hKlSqqWbOm4uLi9MEHH6hixYrFrrlJkyZaunSpli1bplq1asnT09P++uTXVyr4datYsaIGDhyouXPnKjQ0tFDXQ2rQoIFq166tl156ScYY+fv764svvrCfGVYckZGRuv/++zV27FhlZGSoefPm+u6774oc8j08PNSvXz+9/fbbMsZo+vTpDu3X8/kr7H6XLge7Tp06qUOHDho8eLCqV6+ukydPKjExUTt27NCnn34qSWrRooW6du2qpk2bqlKlSkpMTNSHH36o8PBweXt7F+m5w0KcO/8YyF9+ZzP5+fmZO++808TExOQ5U2bBggWmfv36xsPDw9SqVctMmzbNfPDBB3nOOgkNDTVdunQpdB25ZzNdy5VnMxlz+ayO119/3dSrV8+4ubmZKlWqmP79+5sjR4449Dt58qR59NFHTcWKFY3NZsuznfzMmjXLSDJPPvmkw/qIiAgjyXz++ecO6ws6K2j8+PEmODjYlCtXzuGskoJepyvPRrma48ePm3HjxpkGDRoYDw8P+358+umnzblz5/L0T0lJMY8++qjx9/c3fn5+pn///mbbtm156v7tt9/MI488YipVqmR8fHxMx44dzU8//WRCQ0PNoEGD7P1y30MJCQkOj5PfGTTJyckmMjLS+Pj4GEn2s8uK+rrl2rhxo5Fkpk+fXqjXyhhj9u7dayIiIoyPj4+pVKmS6dWrlzl8+HCeM49y32vHjx93uH/u8/3r+/306dNm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u+6++26tXbtWDz/8sH392rVr1b1793zv4+HhIQ8PD4d1FStWLM0yLc3X15cPz02KfXtzYr/evNi3eV1rRCZXmQ4zkjR69GgNGDBAzZs3V3h4uObPn6/Dhw9r2LBhzi4NAACUAWU+zPTu3VsnTpzQK6+8opSUFDVu3Fhff/21QkNDnV0aAAAoA8p8mJGk4cOHa/jw4c4u46bi4eGhyZMn5zkkB+tj396c2K83L/bt9bOZwpzzBAAAUEaV6YvmAQAAXAthBgAAWBphBgAAWBphBrhFRUVF6c4773R2GQBw3Qgzt5D4+Hi5uLioY8eODuuTk5Nls9m0c+dO5xRWxg0ePFg2m002m01ubm4KCAhQRESEFixYoEuXLhVpWwsXLiyxizgePHhQffr0UXBwsDw9PVWjRg11795dP//8c6HuP2bMGK1bt65EakHJyH2v5XcdreHDh8tms2nw4MH2vj169LixBd5iSvKzXxJya9myZYvD+qysLPtV7jdu3OjQf+XKlTe2SCchzNxCFixYoJEjR2rTpk06fPiws8uxlI4dOyolJUXJyclatWqV2rVrp+eff15du3bVxYsXb3g92dnZioiIUHp6upYvX679+/dr2bJlaty4sf3HVa+lQoUKqly5cilXiqIKCQnR0qVLlZmZaV93/vx5ffzxx7rtttucWNmtqax99kNCQhQbG+uwbsWKFapQocINr6UsIczcIjIyMvTJJ5/omWeeUdeuXbVw4UJnl2QpHh4eCgwMVPXq1XXXXXfp5Zdf1r///W+tWrXK4bWMiYlRkyZNVL58eYWEhGj48OE6e/asJGnjxo16/PHHlZaWZv8LKyoqSpL0r3/9S82bN5ePj48CAwPVt29fHTt2rMB69u7dq4MHD2rOnDlq2bKlQkND1bp1a7322mu655577P1+++03PfbYY/L391f58uXVvHlzff/995LyP8wUGxur22+/XZ6enmrQoIHmzJljb8sdwVu+fLnatWsnb29v3XHHHdq8ebPDNr777ju1adNG3t7eqlSpkjp06KBTp05JuvxbKzNmzFCtWrXk5eWlO+64Q//3f/9X5P1xM7vrrrt02223afny5fZ1y5cvV0hIiJo1a+bEym5Nhfnsp6Wl6amnnlK1atXk6+urBx54QLt27XLYzhdffKG7775bnp6eqlWrlqKjox3CkM1m09y5c9WpUyd5eXkpLCxMn376aZ56Bg0alCfsLliwQIMGDSqdF8AiCDO3iGXLlql+/fqqX7+++vfvr9jY2EL9rDoK9sADD+iOO+5w+NIpV66c3nrrLf30009atGiR1q9fr7Fjx0qSWrVqpZkzZ8rX11cpKSlKSUnRmDFjJF0eaXn11Ve1a9curVy5UklJSfbDCfmpWrWqypUrp//7v/9TTk5Ovn3Onj2rNm3a6OjRo/r888+1a9cujR07tsDh8ffee08TJkzQa6+9psTERE2dOlUTJ07UokWLHPpNmDBBY8aM0c6dO1WvXj316dPH/o/yzp079eCDD6pRo0bavHmzNm3apG7dutlr/N///V/FxsZq7ty52rNnj1544QX1799fcXFxhXvRbxGPP/64w1/fCxYs0JAhQ5xYEf7qr599Y4y6dOmi1NRUff3119q+fbvuuusuPfjggzp58qQk6ZtvvlH//v313HPPae/evZo3b54WLlyo1157zWG7EydO1COPPKJdu3apf//+6tOnjxITEx363H333QoLC9Nnn30mSTpy5Ij+85//aMCAATfmyZdVBreEVq1amZkzZxpjjLlw4YKpUqWKWbt2rTHGmKSkJCPJ/PDDD06ssOwaNGiQ6d69e75tvXv3NrfffnuB9/3kk09M5cqV7cuxsbHGz8/vmo+5detWI8mcOXOmwD6zZ8823t7exsfHx7Rr18688sor5tdff7W3z5s3z/j4+JgTJ07ke//JkyebO+64w74cEhJilixZ4tDn1VdfNeHh4caY//c+ef/99+3te/bsMZJMYmKiMcaYPn36mNatW+f7eGfPnjWenp4mPj7eYf3QoUNNnz59Cnyet5Lc99rx48eNh4eHSUpKMsnJycbT09McP37cdO/e3QwaNMihL0pPYT7769atM76+vub8+fMO7bVr1zbz5s0zxhjzP//zP2bq1KkO7R9++KEJCgqyL0syw4YNc+jTokUL88wzzzj0WbFihZk5c6Zp166dMcaY6Oho8/DDD5tTp04ZSWbDhg15+t8KLPFzBrg++/fv19atW+0jCK6ururdu7cWLFig9u3bO7k6azPGyGaz2Zc3bNigqVOnau/evUpPT9fFixd1/vx5ZWRkqHz58gVu54cfflBUVJR27typkydP2kdPDh8+rIYNG+Z7nxEjRmjgwIHasGGDvv/+e3366aeaOnWqPv/8c0VERGjnzp1q1qyZ/P39r/k8jh8/riNHjmjo0KF68skn7esvXryY51drmzZtav//oKAgSdKxY8fUoEED7dy5U7169cr3Mfbu3avz588rIiLCYX12djaHT65QpUoVdenSRYsWLbL/5V+lShVnl4W/yP3sb9++XWfPns0z/ywzM1O//vqrJGn79u1KSEhwGInJycnR+fPnde7cOXl7e0uSwsPDHbYRHh6e74kZ/fv310svvaSDBw9q4cKFeuutt0r42VkPYeYW8MEHH+jixYuqXr26fZ0xRm5ubva5DCiexMREhYWFSZIOHTqkzp07a9iwYXr11Vfl7++vTZs2aejQobpw4UKB28jIyFBkZKQiIyP1r3/9S1WrVtXhw4fVoUMHZWdnX/XxfXx89NBDD+mhhx7SlClT1KFDB02ZMkURERHy8vIq9PPIDU/vvfeeWrRo4dDm4uLisOzm5mb//9wgl3v/qz1mbp+vvvrK4b0oid+kyceQIUP07LPPSpLeeecdJ1eDK+V+9i9duqSgoCCHs4hy5Z65eOnSJUVHR6tnz555+nh6el71cf76x1KuypUrq2vXrho6dKjOnz+vTp066cyZM8V6HjcLwsxN7uLFi1q8eLHefPNNRUZGOrQ98sgj+uijj9S1a1cnVWdt69ev1+7du/XCCy9IkrZt26aLFy/qzTffVLlyl6ejffLJJw73cXd3zzPHZd++ffrzzz81ffp0hYSE2LdVVDabTQ0aNFB8fLykyyMo77//vk6ePHnN0ZmAgABVr15dBw8eVL9+/Yr82LmaNm2qdevWKTo6Ok9bw4YN5eHhocOHD6tNmzbFfoxbRceOHe1htkOHDk6uBn/1189+jRo1lJqaKldXV9WsWTPf/nfddZf279+vOnXqXHW7W7Zs0cCBAx2WCxq1HDJkiDp37qxx48bl+YPjVkSYucl9+eWXOnXqlIYOHZrncMGjjz6qDz74gDBTCFlZWUpNTVVOTo7++OMPrV69WtOmTVPXrl3t//jUrl1bFy9e1Ntvv61u3brpu+++07vvvuuwnZo1a+rs2bNat26d7rjjDnl7e+u2226Tu7u73n77bQ0bNkw//fSTXn311avWs3PnTk2ePFkDBgxQw4YN5e7urri4OC1YsEDjxo2TJPXp00dTp05Vjx49NG3aNAUFBemHH35QcHBwnuFs6fLZTc8995x8fX3VqVMnZWVladu2bTp16pRGjx5dqNdp/PjxatKkiYYPH65hw4bJ3d1dGzZsUK9evVSlShWNGTNGL7zwgi5duqT77rtP6enpio+PV4UKFW75szGu5OLiYp/8WdCXVVpaWp7DEP7+/pzCXYKu9dkvV66cwsPD1aNHD73++uuqX7++jh49qq+//lo9evRQ8+bNNWnSJHXt2lUhISHq1auXypUrpx9//FG7d+/WlClT7I/16aefqnnz5rrvvvv00UcfaevWrfrggw/yratjx446fvy4fH19r1p/UlJSnvdInTp1br5TuZ07ZQelrWvXrqZz5875tm3fvt1Isv+XCcD5GzRokJFkJBlXV1dTtWpV0759e7NgwQKTk5Pj0DcmJsYEBQUZLy8v06FDB7N48WIjyZw6dcreZ9iwYaZy5cpGkpk8ebIxxpglS5aYmjVrGg8PDxMeHm4+//zzq+6T48ePm+eee840btzYVKhQwfj4+JgmTZqYf/zjHw41JScnm0ceecT4+voab29v07x5c/P9998bY/JOADbGmI8++sjceeedxt3d3VSqVMncf//9Zvny5caY/CeK5zfpcOPGjaZVq1bGw8PDVKxY0XTo0MH+/C9dumRmzZpl6tevb9zc3EzVqlVNhw4dTFxcXOF3yE3sWpN6r5wAnPu+/Osttx3Xr7Cf/fT0dDNy5EgTHBxs3NzcTEhIiOnXr585fPiwvc/q1atNq1atjJeXl/H19TX33nuvmT9/vr1dknnnnXdMRESE8fDwMKGhoebjjz92qEdXmdBb0ATg/G5/7XOzsBnD+bkAADiTzWbTihUruKpzMXGdGQAAYGmEGQAAYGlMAAYAwMmY8XF9GJkBAACWRpgBAACWRpgBAACWRpgBAACWRpgBAEkbN26UzWbT6dOnnV0KgCIizAAostTUVI0cOVK1atWSh4eHQkJC1K1bN61bt65Q91+4cKH9R/jKilatWiklJSXPz34AKPs4NRtAkSQnJ6t169aqWLGiZsyYoaZNm+rChQv65ptvNGLECO3bt8/ZJRbZhQsX5O7ursDAQGeXAqAYGJkBUCTDhw+XzWbT1q1b9eijj6pevXpq1KiRRo8erS1btkiSYmJi1KRJE5UvX14hISEaPny4zp49K+ny4ZzHH39caWlpstlsstlsioqKkiRlZ2dr7Nixql69usqXL68WLVpo48aNDo//3nvvKSQkRN7e3nr44YcVExOTZ5Rn7ty5ql27ttzd3VW/fn19+OGHDu02m03vvvuuunfvrvLly2vKlCn5HmaKj4/X/fffLy8vL4WEhOi5555TRkaGvX3OnDmqW7euPD09FRAQoEcffbRkXmQARePk34YCYCEnTpwwNpvNTJ069ar9/vnPf5r169ebgwcPmnXr1pn69eubZ555xhhjTFZWlpk5c6bx9fU1KSkpJiUlxZw5c8YYY0zfvn1Nq1atzH/+8x/zyy+/mDfeeMN4eHiYn3/+2RhjzKZNm0y5cuXMG2+8Yfbv32/eeecd4+/vb/z8/OyPvXz5cuPm5mbeeecds3//fvPmm28aFxcXs379ensfSaZatWrmgw8+ML/++qtJTk42GzZscPhR0B9//NFUqFDB/POf/zQ///yz+e6770yzZs3M4MGDjTHGJCQkGBcXF7NkyRKTnJxsduzYYWbNmlVSLzWAIiDMACi077//3kiy/5J2YX3yySemcuXK9uXY2FiHAGKMMb/88oux2Wzm999/d1j/4IMPmvHjxxtjjOndu7fp0qWLQ3u/fv0cttWqVSvz5JNPOvTp1auXw6/HSzKjRo1y6HNlmBkwYIB56qmnHPr897//NeXKlTOZmZnms88+M76+viY9Pf3aLwCAUsVhJgCFZv7/S67bbLar9tuwYYMiIiJUvXp1+fj4aODAgTpx4oTDIZor7dixQ8YY1atXTxUqVLDf4uLi9Ouvv0qS9u/fr3vvvdfhflcuJyYmqnXr1g7rWrdurcTERId1zZs3v+pz2L59uxYuXOhQS4cOHXTp0iUlJSUpIiJCoaGhqlWrlgYMGKCPPvpI586du+o2AZQOJgADKLS6devKZrMpMTFRPXr0yLfPoUOH1LlzZw0bNkyvvvqq/P39tWnTJg0dOlQXLlwocNuXLl2Si4uLtm/fLhcXF4e2ChUqSLocpq4MUiaf37TJr8+V68qXL19gLbn1PP3003ruuefytN12221yd3fXjh07tHHjRq1Zs0aTJk1SVFSUEhISytyZWsDNjpEZAIXm7++vDh066J133sl3lOX06dPatm2bLl68qDfffFMtW7ZUvXr1dPToUYd+7u7uysnJcVjXrFkz5eTk6NixY6pTp47DLfcsowYNGmjr1q0O99u2bZvD8u23365NmzY5rIuPj9ftt99epOd61113ac+ePXlqqVOnjtzd3SVJrq6uat++vWbMmKEff/xRycnJWr9+fZEeB8D1I8wAKJI5c+YoJydH9957rz777DMdOHBAiYmJeuuttxQeHq7atWvr4sWLevvtt3Xw4EF9+OGHevfddx22UbNmTZ09e1br1q3Tn3/+qXPnzqlevXrq16+fBg4cqOXLlyspKUkJCQl6/fXX9fXXX0uSRo4cqa+//loxMTE6cOCA5s2bp1WrVjmMurz44otauHCh3n33XR04cEAxMTFavny5xowZU6TnOW7cOG3evFkjRozQzp07deDAAX3++ecaOXKkJOnLL7/UW2+9pZ07d+rQoUNavHixLl26pPr161/nKwygyJw6YweAJR09etSMGDHChIaGGnd3d1O9enXz0EMPmQ0bNhhjjImJiTFBQUHGy8vLdOjQwSxevNhhcq0xxgwbNsxUrlzZSDKTJ082xhiTnZ1tJk2aZGrWrGnc3NxMYGCgefjhh82PP/5ov9/8+fNN9erVjZeXl+nRo4eZMmWKCQwMdKhvzpw5platWsbNzc3Uq1fPLF682KFdklmxYoXDuisnABtjzNatW01ERISpUKGCKV++vGnatKl57bXXjDGXJwO3adPGVKpUyXh5eZmmTZuaZcuWXd8LC6BYbMbkc8AZACziySef1L59+/Tf//7X2aUAcBImAAOwlH/84x+KiIhQ+fLltWrVKi1atEhz5sxxdlkAnIiRGQCW8re//U0bN27UmTNnVKtWLY0cOVLDhg1zdlkAnIgwAwAALI2zmQAAgKURZgAAgKURZgAAgKURZgAAgKURZgAAgKURZgAAgKURZgAAgKURZgAAgKURZgAAgKX9f91eVNqdwqHvAAAAAElFTkSuQmCC\n",
128 | "text/plain": [
129 | ""
130 | ]
131 | },
132 | "metadata": {},
133 | "output_type": "display_data"
134 | }
135 | ],
136 | "source": [
137 | "categories = ['AI', 'Data Science', 'ML', 'DeepML']\n",
138 | "values = [20, 35, 30, 55]\n",
139 | "\n",
140 | "#plt.bar(categories, values, color='blue')\n",
141 | "\n",
142 | "fig, ax = plt.subplots()\n",
143 | "bars = ax.bar(categories, values, color='orange')\n",
144 | "\n",
145 | "for bar in bars:\n",
146 | " yval = bar.get_height()\n",
147 | " plt.text(bar.get_x() + bar.get_width()/2, yval, round(yval, 1), ha='center', va='bottom')\n",
148 | "\n",
149 | "plt.xlabel('Categories')\n",
150 | "plt.ylabel('Quantity')\n",
151 | "plt.title('Bar Plot with Quantity and Values')\n",
152 | "\n",
153 | "plt.show()"
154 | ]
155 | },
156 | {
157 | "cell_type": "code",
158 | "execution_count": null,
159 | "id": "da084e87",
160 | "metadata": {},
161 | "outputs": [],
162 | "source": []
163 | }
164 | ],
165 | "metadata": {
166 | "kernelspec": {
167 | "display_name": "Python 3 (ipykernel)",
168 | "language": "python",
169 | "name": "python3"
170 | },
171 | "language_info": {
172 | "codemirror_mode": {
173 | "name": "ipython",
174 | "version": 3
175 | },
176 | "file_extension": ".py",
177 | "mimetype": "text/x-python",
178 | "name": "python",
179 | "nbconvert_exporter": "python",
180 | "pygments_lexer": "ipython3",
181 | "version": "3.9.13"
182 | }
183 | },
184 | "nbformat": 4,
185 | "nbformat_minor": 5
186 | }
187 |
--------------------------------------------------------------------------------