├── README.md
├── Popular_Baby_Names.sql
├── .ipynb_checkpoints
└── Data-Splitter-checkpoint.ipynb
└── Data-Splitter.ipynb
/README.md:
--------------------------------------------------------------------------------
1 | # Data-Splitter
--------------------------------------------------------------------------------
/Popular_Baby_Names.sql:
--------------------------------------------------------------------------------
1 | create database Popular_Baby_Names
2 |
3 | use Popular_Baby_Names
4 |
5 |
6 | select * from Popular_Baby_Names
--------------------------------------------------------------------------------
/.ipynb_checkpoints/Data-Splitter-checkpoint.ipynb:
--------------------------------------------------------------------------------
1 | {
2 | "cells": [
3 | {
4 | "cell_type": "code",
5 | "execution_count": 15,
6 | "id": "6463840f",
7 | "metadata": {},
8 | "outputs": [],
9 | "source": [
10 | "import pandas as pd \n",
11 | "import pyodbc\n",
12 | "import json"
13 | ]
14 | },
15 | {
16 | "cell_type": "code",
17 | "execution_count": 9,
18 | "id": "a1386b5d",
19 | "metadata": {},
20 | "outputs": [
21 | {
22 | "data": {
23 | "text/html": [
24 | "
\n",
25 | "\n",
38 | "
\n",
39 | " \n",
40 | " \n",
41 | " | \n",
42 | " Year of Birth | \n",
43 | " Gender | \n",
44 | " Ethnicity | \n",
45 | " Child's First Name | \n",
46 | " Count | \n",
47 | " Rank | \n",
48 | "
\n",
49 | " \n",
50 | " \n",
51 | " \n",
52 | " | 0 | \n",
53 | " 2011 | \n",
54 | " FEMALE | \n",
55 | " HISPANIC | \n",
56 | " GERALDINE | \n",
57 | " 13 | \n",
58 | " 75 | \n",
59 | "
\n",
60 | " \n",
61 | " | 1 | \n",
62 | " 2011 | \n",
63 | " FEMALE | \n",
64 | " HISPANIC | \n",
65 | " GIA | \n",
66 | " 21 | \n",
67 | " 67 | \n",
68 | "
\n",
69 | " \n",
70 | " | 2 | \n",
71 | " 2011 | \n",
72 | " FEMALE | \n",
73 | " HISPANIC | \n",
74 | " GIANNA | \n",
75 | " 49 | \n",
76 | " 42 | \n",
77 | "
\n",
78 | " \n",
79 | " | 3 | \n",
80 | " 2011 | \n",
81 | " FEMALE | \n",
82 | " HISPANIC | \n",
83 | " GISELLE | \n",
84 | " 38 | \n",
85 | " 51 | \n",
86 | "
\n",
87 | " \n",
88 | " | 4 | \n",
89 | " 2011 | \n",
90 | " FEMALE | \n",
91 | " HISPANIC | \n",
92 | " GRACE | \n",
93 | " 36 | \n",
94 | " 53 | \n",
95 | "
\n",
96 | " \n",
97 | " | ... | \n",
98 | " ... | \n",
99 | " ... | \n",
100 | " ... | \n",
101 | " ... | \n",
102 | " ... | \n",
103 | " ... | \n",
104 | "
\n",
105 | " \n",
106 | " | 57577 | \n",
107 | " 2014 | \n",
108 | " MALE | \n",
109 | " WHITE NON HISPANIC | \n",
110 | " Yousef | \n",
111 | " 18 | \n",
112 | " 94 | \n",
113 | "
\n",
114 | " \n",
115 | " | 57578 | \n",
116 | " 2014 | \n",
117 | " MALE | \n",
118 | " WHITE NON HISPANIC | \n",
119 | " Youssef | \n",
120 | " 24 | \n",
121 | " 88 | \n",
122 | "
\n",
123 | " \n",
124 | " | 57579 | \n",
125 | " 2014 | \n",
126 | " MALE | \n",
127 | " WHITE NON HISPANIC | \n",
128 | " Yusuf | \n",
129 | " 16 | \n",
130 | " 96 | \n",
131 | "
\n",
132 | " \n",
133 | " | 57580 | \n",
134 | " 2014 | \n",
135 | " MALE | \n",
136 | " WHITE NON HISPANIC | \n",
137 | " Zachary | \n",
138 | " 90 | \n",
139 | " 39 | \n",
140 | "
\n",
141 | " \n",
142 | " | 57581 | \n",
143 | " 2014 | \n",
144 | " MALE | \n",
145 | " WHITE NON HISPANIC | \n",
146 | " Zev | \n",
147 | " 49 | \n",
148 | " 65 | \n",
149 | "
\n",
150 | " \n",
151 | "
\n",
152 | "
57582 rows × 6 columns
\n",
153 | "
"
154 | ],
155 | "text/plain": [
156 | " Year of Birth Gender Ethnicity Child's First Name Count \\\n",
157 | "0 2011 FEMALE HISPANIC GERALDINE 13 \n",
158 | "1 2011 FEMALE HISPANIC GIA 21 \n",
159 | "2 2011 FEMALE HISPANIC GIANNA 49 \n",
160 | "3 2011 FEMALE HISPANIC GISELLE 38 \n",
161 | "4 2011 FEMALE HISPANIC GRACE 36 \n",
162 | "... ... ... ... ... ... \n",
163 | "57577 2014 MALE WHITE NON HISPANIC Yousef 18 \n",
164 | "57578 2014 MALE WHITE NON HISPANIC Youssef 24 \n",
165 | "57579 2014 MALE WHITE NON HISPANIC Yusuf 16 \n",
166 | "57580 2014 MALE WHITE NON HISPANIC Zachary 90 \n",
167 | "57581 2014 MALE WHITE NON HISPANIC Zev 49 \n",
168 | "\n",
169 | " Rank \n",
170 | "0 75 \n",
171 | "1 67 \n",
172 | "2 42 \n",
173 | "3 51 \n",
174 | "4 53 \n",
175 | "... ... \n",
176 | "57577 94 \n",
177 | "57578 88 \n",
178 | "57579 96 \n",
179 | "57580 39 \n",
180 | "57581 65 \n",
181 | "\n",
182 | "[57582 rows x 6 columns]"
183 | ]
184 | },
185 | "execution_count": 9,
186 | "metadata": {},
187 | "output_type": "execute_result"
188 | }
189 | ],
190 | "source": [
191 | "df = pd.read_csv('Popular_Baby_Names.csv')\n",
192 | "df"
193 | ]
194 | },
195 | {
196 | "cell_type": "code",
197 | "execution_count": 10,
198 | "id": "8d4f6743",
199 | "metadata": {},
200 | "outputs": [
201 | {
202 | "name": "stdout",
203 | "output_type": "stream",
204 | "text": [
205 | "\n",
206 | "RangeIndex: 57582 entries, 0 to 57581\n",
207 | "Data columns (total 6 columns):\n",
208 | " # Column Non-Null Count Dtype \n",
209 | "--- ------ -------------- ----- \n",
210 | " 0 Year of Birth 57582 non-null int64 \n",
211 | " 1 Gender 57582 non-null object\n",
212 | " 2 Ethnicity 57582 non-null object\n",
213 | " 3 Child's First Name 57582 non-null object\n",
214 | " 4 Count 57582 non-null int64 \n",
215 | " 5 Rank 57582 non-null int64 \n",
216 | "dtypes: int64(3), object(3)\n",
217 | "memory usage: 2.6+ MB\n"
218 | ]
219 | }
220 | ],
221 | "source": [
222 | "df.info()"
223 | ]
224 | },
225 | {
226 | "cell_type": "code",
227 | "execution_count": null,
228 | "id": "cd438718",
229 | "metadata": {},
230 | "outputs": [],
231 | "source": [
232 | "data = data.sample(frac=1).reset_index(drop=True)\n"
233 | ]
234 | },
235 | {
236 | "cell_type": "code",
237 | "execution_count": null,
238 | "id": "c64d9a65",
239 | "metadata": {},
240 | "outputs": [],
241 | "source": []
242 | }
243 | ],
244 | "metadata": {
245 | "kernelspec": {
246 | "display_name": "Python 3 (ipykernel)",
247 | "language": "python",
248 | "name": "python3"
249 | },
250 | "language_info": {
251 | "codemirror_mode": {
252 | "name": "ipython",
253 | "version": 3
254 | },
255 | "file_extension": ".py",
256 | "mimetype": "text/x-python",
257 | "name": "python",
258 | "nbconvert_exporter": "python",
259 | "pygments_lexer": "ipython3",
260 | "version": "3.11.3"
261 | }
262 | },
263 | "nbformat": 4,
264 | "nbformat_minor": 5
265 | }
266 |
--------------------------------------------------------------------------------
/Data-Splitter.ipynb:
--------------------------------------------------------------------------------
1 | {
2 | "cells": [
3 | {
4 | "cell_type": "code",
5 | "execution_count": 1,
6 | "id": "38f5b7b3",
7 | "metadata": {},
8 | "outputs": [],
9 | "source": [
10 | "import pandas as pd \n",
11 | "import pyodbc\n",
12 | "import json"
13 | ]
14 | },
15 | {
16 | "cell_type": "code",
17 | "execution_count": 2,
18 | "id": "01221e86",
19 | "metadata": {},
20 | "outputs": [
21 | {
22 | "data": {
23 | "text/html": [
24 | "\n",
25 | "\n",
38 | "
\n",
39 | " \n",
40 | " \n",
41 | " | \n",
42 | " Year of Birth | \n",
43 | " Gender | \n",
44 | " Ethnicity | \n",
45 | " Child's First Name | \n",
46 | " Count | \n",
47 | " Rank | \n",
48 | "
\n",
49 | " \n",
50 | " \n",
51 | " \n",
52 | " | 0 | \n",
53 | " 2011 | \n",
54 | " FEMALE | \n",
55 | " HISPANIC | \n",
56 | " GERALDINE | \n",
57 | " 13 | \n",
58 | " 75 | \n",
59 | "
\n",
60 | " \n",
61 | " | 1 | \n",
62 | " 2011 | \n",
63 | " FEMALE | \n",
64 | " HISPANIC | \n",
65 | " GIA | \n",
66 | " 21 | \n",
67 | " 67 | \n",
68 | "
\n",
69 | " \n",
70 | " | 2 | \n",
71 | " 2011 | \n",
72 | " FEMALE | \n",
73 | " HISPANIC | \n",
74 | " GIANNA | \n",
75 | " 49 | \n",
76 | " 42 | \n",
77 | "
\n",
78 | " \n",
79 | " | 3 | \n",
80 | " 2011 | \n",
81 | " FEMALE | \n",
82 | " HISPANIC | \n",
83 | " GISELLE | \n",
84 | " 38 | \n",
85 | " 51 | \n",
86 | "
\n",
87 | " \n",
88 | " | 4 | \n",
89 | " 2011 | \n",
90 | " FEMALE | \n",
91 | " HISPANIC | \n",
92 | " GRACE | \n",
93 | " 36 | \n",
94 | " 53 | \n",
95 | "
\n",
96 | " \n",
97 | " | ... | \n",
98 | " ... | \n",
99 | " ... | \n",
100 | " ... | \n",
101 | " ... | \n",
102 | " ... | \n",
103 | " ... | \n",
104 | "
\n",
105 | " \n",
106 | " | 57577 | \n",
107 | " 2014 | \n",
108 | " MALE | \n",
109 | " WHITE NON HISPANIC | \n",
110 | " Yousef | \n",
111 | " 18 | \n",
112 | " 94 | \n",
113 | "
\n",
114 | " \n",
115 | " | 57578 | \n",
116 | " 2014 | \n",
117 | " MALE | \n",
118 | " WHITE NON HISPANIC | \n",
119 | " Youssef | \n",
120 | " 24 | \n",
121 | " 88 | \n",
122 | "
\n",
123 | " \n",
124 | " | 57579 | \n",
125 | " 2014 | \n",
126 | " MALE | \n",
127 | " WHITE NON HISPANIC | \n",
128 | " Yusuf | \n",
129 | " 16 | \n",
130 | " 96 | \n",
131 | "
\n",
132 | " \n",
133 | " | 57580 | \n",
134 | " 2014 | \n",
135 | " MALE | \n",
136 | " WHITE NON HISPANIC | \n",
137 | " Zachary | \n",
138 | " 90 | \n",
139 | " 39 | \n",
140 | "
\n",
141 | " \n",
142 | " | 57581 | \n",
143 | " 2014 | \n",
144 | " MALE | \n",
145 | " WHITE NON HISPANIC | \n",
146 | " Zev | \n",
147 | " 49 | \n",
148 | " 65 | \n",
149 | "
\n",
150 | " \n",
151 | "
\n",
152 | "
57582 rows × 6 columns
\n",
153 | "
"
154 | ],
155 | "text/plain": [
156 | " Year of Birth Gender Ethnicity Child's First Name Count \\\n",
157 | "0 2011 FEMALE HISPANIC GERALDINE 13 \n",
158 | "1 2011 FEMALE HISPANIC GIA 21 \n",
159 | "2 2011 FEMALE HISPANIC GIANNA 49 \n",
160 | "3 2011 FEMALE HISPANIC GISELLE 38 \n",
161 | "4 2011 FEMALE HISPANIC GRACE 36 \n",
162 | "... ... ... ... ... ... \n",
163 | "57577 2014 MALE WHITE NON HISPANIC Yousef 18 \n",
164 | "57578 2014 MALE WHITE NON HISPANIC Youssef 24 \n",
165 | "57579 2014 MALE WHITE NON HISPANIC Yusuf 16 \n",
166 | "57580 2014 MALE WHITE NON HISPANIC Zachary 90 \n",
167 | "57581 2014 MALE WHITE NON HISPANIC Zev 49 \n",
168 | "\n",
169 | " Rank \n",
170 | "0 75 \n",
171 | "1 67 \n",
172 | "2 42 \n",
173 | "3 51 \n",
174 | "4 53 \n",
175 | "... ... \n",
176 | "57577 94 \n",
177 | "57578 88 \n",
178 | "57579 96 \n",
179 | "57580 39 \n",
180 | "57581 65 \n",
181 | "\n",
182 | "[57582 rows x 6 columns]"
183 | ]
184 | },
185 | "execution_count": 2,
186 | "metadata": {},
187 | "output_type": "execute_result"
188 | }
189 | ],
190 | "source": [
191 | "df = pd.read_csv('Popular_Baby_Names.csv')\n",
192 | "df"
193 | ]
194 | },
195 | {
196 | "cell_type": "code",
197 | "execution_count": 3,
198 | "id": "cc99b3f2",
199 | "metadata": {},
200 | "outputs": [
201 | {
202 | "name": "stdout",
203 | "output_type": "stream",
204 | "text": [
205 | "\n",
206 | "RangeIndex: 57582 entries, 0 to 57581\n",
207 | "Data columns (total 6 columns):\n",
208 | " # Column Non-Null Count Dtype \n",
209 | "--- ------ -------------- ----- \n",
210 | " 0 Year of Birth 57582 non-null int64 \n",
211 | " 1 Gender 57582 non-null object\n",
212 | " 2 Ethnicity 57582 non-null object\n",
213 | " 3 Child's First Name 57582 non-null object\n",
214 | " 4 Count 57582 non-null int64 \n",
215 | " 5 Rank 57582 non-null int64 \n",
216 | "dtypes: int64(3), object(3)\n",
217 | "memory usage: 2.6+ MB\n"
218 | ]
219 | }
220 | ],
221 | "source": [
222 | "df.info()"
223 | ]
224 | },
225 | {
226 | "cell_type": "code",
227 | "execution_count": 4,
228 | "id": "67bd91e5",
229 | "metadata": {},
230 | "outputs": [],
231 | "source": [
232 | "# Mélanger les lignes pour une répartition aléatoire des données\n",
233 | "df = df.sample(frac=1).reset_index(drop=True)"
234 | ]
235 | },
236 | {
237 | "cell_type": "code",
238 | "execution_count": 5,
239 | "id": "861978ed",
240 | "metadata": {},
241 | "outputs": [
242 | {
243 | "data": {
244 | "text/html": [
245 | "\n",
246 | "\n",
259 | "
\n",
260 | " \n",
261 | " \n",
262 | " | \n",
263 | " Year of Birth | \n",
264 | " Gender | \n",
265 | " Ethnicity | \n",
266 | " Child's First Name | \n",
267 | " Count | \n",
268 | " Rank | \n",
269 | "
\n",
270 | " \n",
271 | " \n",
272 | " \n",
273 | " | 0 | \n",
274 | " 2014 | \n",
275 | " MALE | \n",
276 | " ASIAN AND PACIFIC ISLANDER | \n",
277 | " Jeffrey | \n",
278 | " 17 | \n",
279 | " 51 | \n",
280 | "
\n",
281 | " \n",
282 | " | 1 | \n",
283 | " 2013 | \n",
284 | " MALE | \n",
285 | " ASIAN AND PACIFIC ISLANDER | \n",
286 | " Jordan | \n",
287 | " 19 | \n",
288 | " 48 | \n",
289 | "
\n",
290 | " \n",
291 | " | 2 | \n",
292 | " 2014 | \n",
293 | " MALE | \n",
294 | " HISPANIC | \n",
295 | " Kai | \n",
296 | " 13 | \n",
297 | " 95 | \n",
298 | "
\n",
299 | " \n",
300 | " | 3 | \n",
301 | " 2012 | \n",
302 | " MALE | \n",
303 | " HISPANIC | \n",
304 | " ISAIAH | \n",
305 | " 79 | \n",
306 | " 43 | \n",
307 | "
\n",
308 | " \n",
309 | " | 4 | \n",
310 | " 2013 | \n",
311 | " FEMALE | \n",
312 | " WHITE NON HISPANIC | \n",
313 | " Ester | \n",
314 | " 10 | \n",
315 | " 82 | \n",
316 | "
\n",
317 | " \n",
318 | " | ... | \n",
319 | " ... | \n",
320 | " ... | \n",
321 | " ... | \n",
322 | " ... | \n",
323 | " ... | \n",
324 | " ... | \n",
325 | "
\n",
326 | " \n",
327 | " | 57577 | \n",
328 | " 2011 | \n",
329 | " FEMALE | \n",
330 | " HISPANIC | \n",
331 | " AMY | \n",
332 | " 87 | \n",
333 | " 17 | \n",
334 | "
\n",
335 | " \n",
336 | " | 57578 | \n",
337 | " 2012 | \n",
338 | " MALE | \n",
339 | " HISPANIC | \n",
340 | " JORDAN | \n",
341 | " 57 | \n",
342 | " 58 | \n",
343 | "
\n",
344 | " \n",
345 | " | 57579 | \n",
346 | " 2013 | \n",
347 | " MALE | \n",
348 | " WHITE NON HISPANIC | \n",
349 | " Meir | \n",
350 | " 40 | \n",
351 | " 70 | \n",
352 | "
\n",
353 | " \n",
354 | " | 57580 | \n",
355 | " 2013 | \n",
356 | " FEMALE | \n",
357 | " HISPANIC | \n",
358 | " Kendra | \n",
359 | " 17 | \n",
360 | " 71 | \n",
361 | "
\n",
362 | " \n",
363 | " | 57581 | \n",
364 | " 2014 | \n",
365 | " FEMALE | \n",
366 | " BLACK NON HISPANIC | \n",
367 | " Alexandria | \n",
368 | " 10 | \n",
369 | " 41 | \n",
370 | "
\n",
371 | " \n",
372 | "
\n",
373 | "
57582 rows × 6 columns
\n",
374 | "
"
375 | ],
376 | "text/plain": [
377 | " Year of Birth Gender Ethnicity Child's First Name \\\n",
378 | "0 2014 MALE ASIAN AND PACIFIC ISLANDER Jeffrey \n",
379 | "1 2013 MALE ASIAN AND PACIFIC ISLANDER Jordan \n",
380 | "2 2014 MALE HISPANIC Kai \n",
381 | "3 2012 MALE HISPANIC ISAIAH \n",
382 | "4 2013 FEMALE WHITE NON HISPANIC Ester \n",
383 | "... ... ... ... ... \n",
384 | "57577 2011 FEMALE HISPANIC AMY \n",
385 | "57578 2012 MALE HISPANIC JORDAN \n",
386 | "57579 2013 MALE WHITE NON HISPANIC Meir \n",
387 | "57580 2013 FEMALE HISPANIC Kendra \n",
388 | "57581 2014 FEMALE BLACK NON HISPANIC Alexandria \n",
389 | "\n",
390 | " Count Rank \n",
391 | "0 17 51 \n",
392 | "1 19 48 \n",
393 | "2 13 95 \n",
394 | "3 79 43 \n",
395 | "4 10 82 \n",
396 | "... ... ... \n",
397 | "57577 87 17 \n",
398 | "57578 57 58 \n",
399 | "57579 40 70 \n",
400 | "57580 17 71 \n",
401 | "57581 10 41 \n",
402 | "\n",
403 | "[57582 rows x 6 columns]"
404 | ]
405 | },
406 | "execution_count": 5,
407 | "metadata": {},
408 | "output_type": "execute_result"
409 | }
410 | ],
411 | "source": [
412 | "df"
413 | ]
414 | },
415 | {
416 | "cell_type": "code",
417 | "execution_count": 6,
418 | "id": "e73b61b4",
419 | "metadata": {},
420 | "outputs": [],
421 | "source": [
422 | "# Calculer le nombre de lignes pour chaque partie\n",
423 | "total_rows = len(df)\n",
424 | "json_rows = int(0.3 * total_rows)\n",
425 | "db_rows = int(0.3 * total_rows)\n",
426 | "csv_rows = total_rows - json_rows - db_rows"
427 | ]
428 | },
429 | {
430 | "cell_type": "code",
431 | "execution_count": 7,
432 | "id": "c6fa9de0",
433 | "metadata": {},
434 | "outputs": [],
435 | "source": [
436 | "# Diviser les données en trois parties\n",
437 | "json_data = df[:json_rows]\n",
438 | "db_data = df[json_rows:json_rows + db_rows]\n",
439 | "csv_data = df[json_rows + db_rows:]"
440 | ]
441 | },
442 | {
443 | "cell_type": "code",
444 | "execution_count": 8,
445 | "id": "e7113975",
446 | "metadata": {},
447 | "outputs": [],
448 | "source": [
449 | "# Sauvegarder les données au format JSON\n",
450 | "json_data.to_json(\"donnees.json\", orient=\"records\", lines=True)\n"
451 | ]
452 | },
453 | {
454 | "cell_type": "code",
455 | "execution_count": 9,
456 | "id": "db05b81b",
457 | "metadata": {},
458 | "outputs": [
459 | {
460 | "name": "stdout",
461 | "output_type": "stream",
462 | "text": [
463 | "Microsoft SQL Server 2022 (RTM) - 16.0.1000.6 (X64) \n",
464 | "\tOct 8 2022 05:58:25 \n",
465 | "\tCopyright (C) 2022 Microsoft Corporation\n",
466 | "\tExpress Edition (64-bit) on Windows 10 Pro 10.0 (Build 19045: )\n",
467 | "\n"
468 | ]
469 | }
470 | ],
471 | "source": [
472 | "# Se connecter à la base de données SQL Server\n",
473 | "conn = pyodbc.connect(\"Driver={SQL Server};Server=LAPTOP-IGO4LBSV\\SQLEXPRESS;Database=Popular_Baby_Names;Trusted_Connection=yes;\")\n",
474 | "cursor = conn.cursor()\n",
475 | "\n",
476 | "cursor.execute(\"SELECT @@version;\")\n",
477 | "row = cursor.fetchone()\n",
478 | "while row: \n",
479 | " print(row[0])\n",
480 | " row = cursor.fetchone()\n"
481 | ]
482 | },
483 | {
484 | "cell_type": "code",
485 | "execution_count": 29,
486 | "id": "b98aa821",
487 | "metadata": {
488 | "scrolled": true
489 | },
490 | "outputs": [
491 | {
492 | "name": "stdout",
493 | "output_type": "stream",
494 | "text": [
495 | "\n",
496 | "RangeIndex: 57582 entries, 0 to 57581\n",
497 | "Data columns (total 6 columns):\n",
498 | " # Column Non-Null Count Dtype \n",
499 | "--- ------ -------------- ----- \n",
500 | " 0 Year of Birth 57582 non-null int64 \n",
501 | " 1 Gender 57582 non-null object\n",
502 | " 2 Ethnicity 57582 non-null object\n",
503 | " 3 Child's First Name 57582 non-null object\n",
504 | " 4 Count 57582 non-null int64 \n",
505 | " 5 Rank 57582 non-null int64 \n",
506 | "dtypes: int64(3), object(3)\n",
507 | "memory usage: 2.6+ MB\n"
508 | ]
509 | }
510 | ],
511 | "source": [
512 | "df.info()"
513 | ]
514 | },
515 | {
516 | "cell_type": "code",
517 | "execution_count": null,
518 | "id": "e99b1194",
519 | "metadata": {},
520 | "outputs": [],
521 | "source": [
522 | "# Créer une table dans la base de données\n",
523 | "cursor = conn.cursor()\n",
524 | "cursor.execute('''create table Popular_Baby_Names (\n",
525 | " id INT PRIMARY KEY NOT NULL IDENTITY ,\n",
526 | " year int,\n",
527 | " Gender varchar(55), \n",
528 | " Ethnicity varchar(100),\n",
529 | " FirstName varchar(100),\n",
530 | " Count int,\n",
531 | " Rank int \n",
532 | " )\n",
533 | " ''')\n",
534 | "cursor.commit()\n"
535 | ]
536 | },
537 | {
538 | "cell_type": "code",
539 | "execution_count": 12,
540 | "id": "6d8974c7",
541 | "metadata": {},
542 | "outputs": [
543 | {
544 | "name": "stdout",
545 | "output_type": "stream",
546 | "text": [
547 | "\n",
548 | "RangeIndex: 57582 entries, 0 to 57581\n",
549 | "Data columns (total 6 columns):\n",
550 | " # Column Non-Null Count Dtype \n",
551 | "--- ------ -------------- ----- \n",
552 | " 0 Year of Birth 57582 non-null int64 \n",
553 | " 1 Gender 57582 non-null object\n",
554 | " 2 Ethnicity 57582 non-null object\n",
555 | " 3 Child's First Name 57582 non-null object\n",
556 | " 4 Count 57582 non-null int64 \n",
557 | " 5 Rank 57582 non-null int64 \n",
558 | "dtypes: int64(3), object(3)\n",
559 | "memory usage: 2.6+ MB\n"
560 | ]
561 | }
562 | ],
563 | "source": [
564 | "df.info()"
565 | ]
566 | },
567 | {
568 | "cell_type": "code",
569 | "execution_count": 13,
570 | "id": "3684104c",
571 | "metadata": {},
572 | "outputs": [],
573 | "source": [
574 | "cursor = conn.cursor()\n",
575 | "\n",
576 | "for index, row in db_data.iterrows():\n",
577 | " cursor.execute(\"INSERT INTO Popular_Baby_Names (year, Gender,Ethnicity,FirstName,Count,Rank) VALUES (?, ?, ?, ?, ?, ?)\", row[\"Year of Birth\"], row[\"Gender\"], row[\"Ethnicity\"], row[\"Child's First Name\"], row[\"Count\"], row[\"Rank\"])\n",
578 | "\n",
579 | "cursor.commit()\n",
580 | "cursor.close()"
581 | ]
582 | },
583 | {
584 | "cell_type": "code",
585 | "execution_count": 15,
586 | "id": "c6bcde28",
587 | "metadata": {},
588 | "outputs": [],
589 | "source": [
590 | "# Sauvegarder les données au format CSV\n",
591 | "csv_data.to_csv(\"donnees.csv\", index=False, header=False)"
592 | ]
593 | }
594 | ],
595 | "metadata": {
596 | "kernelspec": {
597 | "display_name": "Python 3 (ipykernel)",
598 | "language": "python",
599 | "name": "python3"
600 | },
601 | "language_info": {
602 | "codemirror_mode": {
603 | "name": "ipython",
604 | "version": 3
605 | },
606 | "file_extension": ".py",
607 | "mimetype": "text/x-python",
608 | "name": "python",
609 | "nbconvert_exporter": "python",
610 | "pygments_lexer": "ipython3",
611 | "version": "3.11.3"
612 | }
613 | },
614 | "nbformat": 4,
615 | "nbformat_minor": 5
616 | }
617 |
--------------------------------------------------------------------------------