├── job-data.csv ├── README.md └── dataJob.ipynb /job-data.csv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elouardyabderrahim/Analyse-des-opportunites-emploi/HEAD/job-data.csv -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | ## Understanding Job Market Trends in AI, Data Science, and Big Data to Optimize Recruitment and Talent Management 2 | 3 | ### Project Overview 4 | 5 | As a Data Developer, the aim of this project is to conduct an in-depth analysis of the job market in the emerging fields of Artificial Intelligence (AI), Data Science, and Big Data. The goal is to enhance our recruitment initiatives, talent acquisition strategies, and skills development programs. 6 | 7 | ### Objectives 8 | 9 | 1. **Market Analysis**: Perform a comprehensive analysis of the job market in AI, Data Science, and Big Data to identify key trends and insights. 10 | 11 | 2. **Recruitment Targeting**: Use the analysis to better target recruitment efforts, ensuring that we attract the most suitable talent for our needs. 12 | 13 | 3. **Talent Acquisition and Skill Development**: Develop strategies for effective talent acquisition and create programs for skill development based on the identified market trends. 14 | 15 | 4. **Data Visualization**: Create clear and informative visualizations of the analysis results to help stakeholders understand the conclusions drawn from the data. 16 | 17 | 5. **Data Storage System**: Implement a data storage system to manage and facilitate access to the information collected throughout the project. 18 | 19 | ### Key Deliverables 20 | 21 | - **Market Analysis Report**: A detailed report highlighting the key trends and insights from the job market analysis. 22 | - **Visualization Dashboards**: Interactive and informative dashboards that present the analysis results in a clear manner. 23 | - **Data Storage Solution**: A robust system for storing and managing the collected data, ensuring easy access and retrieval for future use. 24 | 25 | 26 | -------------------------------------------------------------------------------- /dataJob.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": {}, 6 | "source": [ 7 | "# Exploration des données" 8 | ] 9 | }, 10 | { 11 | "cell_type": "code", 12 | "execution_count": 2, 13 | "metadata": {}, 14 | "outputs": [], 15 | "source": [ 16 | "import pandas as pd\n", 17 | "import numpy as np\n", 18 | "dataFrame=pd.read_csv(\"job-data.csv\", encoding='latin-1')" 19 | ] 20 | }, 21 | { 22 | "cell_type": "code", 23 | "execution_count": 3, 24 | "metadata": {}, 25 | "outputs": [ 26 | { 27 | "data": { 28 | "text/html": [ 29 | "
\n", 30 | "\n", 43 | "\n", 44 | " \n", 45 | " \n", 46 | " \n", 47 | " \n", 48 | " \n", 49 | " \n", 50 | " \n", 51 | " \n", 52 | " \n", 53 | " \n", 54 | " \n", 55 | " \n", 56 | " \n", 57 | " \n", 58 | " \n", 59 | " \n", 60 | " \n", 61 | " \n", 62 | " \n", 63 | " \n", 64 | " \n", 65 | " \n", 66 | " \n", 67 | " \n", 68 | " \n", 69 | " \n", 70 | " \n", 71 | " \n", 72 | " \n", 73 | " \n", 74 | " \n", 75 | " \n", 76 | " \n", 77 | " \n", 78 | " \n", 79 | " \n", 80 | " \n", 81 | " \n", 82 | " \n", 83 | " \n", 84 | " \n", 85 | " \n", 86 | " \n", 87 | " \n", 88 | " \n", 89 | " \n", 90 | " \n", 91 | " \n", 92 | " \n", 93 | " \n", 94 | " \n", 95 | " \n", 96 | " \n", 97 | " \n", 98 | " \n", 99 | " \n", 100 | " \n", 101 | " \n", 102 | " \n", 103 | " \n", 104 | " \n", 105 | " \n", 106 | " \n", 107 | " \n", 108 | " \n", 109 | " \n", 110 | " \n", 111 | " \n", 112 | " \n", 113 | " \n", 114 | "
CompanyJob TitleLocationJob TypeExperience levelSalaryRequirment of the companyFacilities
0SGSClinical Data AnalystRichardson, TX, United StatesFull TimeEntry-level48K+ *Computer Science,Data quality,Genetics,Mathema...,,,,
1OcorianAML/CFT & Data AnalystEbène, MauritiusFull TimeEntry-level48K+ *Agile,Data management,Finance,Security,,,,,,
2CricutMachine Learning EngineerSouth Jordan, UT, United StatesFull TimeNaN90K+ *Agile,Architecture,AWS,Computer Science,Comput...Career development,,,,
3Bosch GroupApplication Developer & Data AnalystNonantola, ItalyFull TimeEntry-level48K+ *Engineering,Industrial,Oracle,Power BI,R,R&D,,,,
4Publicis GroupeData Engineer Full time (Public Sector) USAArlington, VA, United StatesFull TimeMid-level108K+AWS,Azure,Computer Science,Consulting,Dataflow...Flex hours,Flex vacation,Parental leave,Unlimi...
\n", 115 | "
" 116 | ], 117 | "text/plain": [ 118 | " Company Job Title \\\n", 119 | "0 SGS Clinical Data Analyst \n", 120 | "1 Ocorian AML/CFT & Data Analyst \n", 121 | "2 Cricut Machine Learning Engineer \n", 122 | "3 Bosch Group Application Developer & Data Analyst \n", 123 | "4 Publicis Groupe Data Engineer Full time (Public Sector) USA \n", 124 | "\n", 125 | " Location Job Type Experience level Salary \\\n", 126 | "0 Richardson, TX, United States Full Time Entry-level 48K+ * \n", 127 | "1 Ebène, Mauritius Full Time Entry-level 48K+ * \n", 128 | "2 South Jordan, UT, United States Full Time NaN 90K+ * \n", 129 | "3 Nonantola, Italy Full Time Entry-level 48K+ * \n", 130 | "4 Arlington, VA, United States Full Time Mid-level 108K+ \n", 131 | "\n", 132 | " Requirment of the company \\\n", 133 | "0 Computer Science,Data quality,Genetics,Mathema... \n", 134 | "1 Agile,Data management,Finance,Security,, \n", 135 | "2 Agile,Architecture,AWS,Computer Science,Comput... \n", 136 | "3 Engineering,Industrial,Oracle,Power BI,R,R&D \n", 137 | "4 AWS,Azure,Computer Science,Consulting,Dataflow... \n", 138 | "\n", 139 | " Facilities \n", 140 | "0 ,,,, \n", 141 | "1 ,,,, \n", 142 | "2 Career development,,,, \n", 143 | "3 ,,,, \n", 144 | "4 Flex hours,Flex vacation,Parental leave,Unlimi... " 145 | ] 146 | }, 147 | "execution_count": 3, 148 | "metadata": {}, 149 | "output_type": "execute_result" 150 | } 151 | ], 152 | "source": [ 153 | "dataFrame.head()" 154 | ] 155 | }, 156 | { 157 | "cell_type": "code", 158 | "execution_count": 4, 159 | "metadata": {}, 160 | "outputs": [ 161 | { 162 | "name": "stdout", 163 | "output_type": "stream", 164 | "text": [ 165 | "number of rows : 3198\n", 166 | "number of columns : 8 === Index(['Company', 'Job Title', 'Location', 'Job Type', 'Experience level',\n", 167 | " 'Salary', 'Requirment of the company ', 'Facilities'],\n", 168 | " dtype='object')\n" 169 | ] 170 | } 171 | ], 172 | "source": [ 173 | "print(\"number of rows :\",dataFrame.shape[0])\n", 174 | "print(\"number of columns :\",str(dataFrame.shape[1]),\" === \", dataFrame.columns)" 175 | ] 176 | }, 177 | { 178 | "cell_type": "code", 179 | "execution_count": 5, 180 | "metadata": {}, 181 | "outputs": [ 182 | { 183 | "name": "stdout", 184 | "output_type": "stream", 185 | "text": [ 186 | "the data columns are :\n", 187 | "Company\n", 188 | "Job Title\n", 189 | "Location\n", 190 | "Job Type\n", 191 | "Experience level\n", 192 | "Salary\n", 193 | "Requirment of the company \n", 194 | "Facilities\n" 195 | ] 196 | } 197 | ], 198 | "source": [ 199 | "dataFrameColumns=dataFrame.columns\n", 200 | "print(\"the data columns are :\")\n", 201 | "for i in dataFrameColumns:\n", 202 | " print(i)" 203 | ] 204 | }, 205 | { 206 | "cell_type": "code", 207 | "execution_count": 6, 208 | "metadata": {}, 209 | "outputs": [ 210 | { 211 | "name": "stdout", 212 | "output_type": "stream", 213 | "text": [ 214 | "Company object\n", 215 | "Job Title object\n", 216 | "Location object\n", 217 | "Job Type object\n", 218 | "Experience level object\n", 219 | "Salary object\n", 220 | "Requirment of the company object\n", 221 | "Facilities object\n", 222 | "dtype: object\n" 223 | ] 224 | } 225 | ], 226 | "source": [ 227 | "print(dataFrame.dtypes)" 228 | ] 229 | }, 230 | { 231 | "cell_type": "code", 232 | "execution_count": 7, 233 | "metadata": {}, 234 | "outputs": [ 235 | { 236 | "data": { 237 | "text/html": [ 238 | "
\n", 239 | "\n", 252 | "\n", 253 | " \n", 254 | " \n", 255 | " \n", 256 | " \n", 257 | " \n", 258 | " \n", 259 | " \n", 260 | " \n", 261 | " \n", 262 | " \n", 263 | " \n", 264 | " \n", 265 | " \n", 266 | " \n", 267 | " \n", 268 | " \n", 269 | " \n", 270 | " \n", 271 | " \n", 272 | " \n", 273 | " \n", 274 | " \n", 275 | " \n", 276 | " \n", 277 | " \n", 278 | " \n", 279 | " \n", 280 | " \n", 281 | " \n", 282 | " \n", 283 | " \n", 284 | " \n", 285 | " \n", 286 | " \n", 287 | " \n", 288 | " \n", 289 | " \n", 290 | " \n", 291 | " \n", 292 | " \n", 293 | " \n", 294 | " \n", 295 | " \n", 296 | " \n", 297 | " \n", 298 | " \n", 299 | " \n", 300 | " \n", 301 | " \n", 302 | " \n", 303 | " \n", 304 | " \n", 305 | " \n", 306 | " \n", 307 | " \n", 308 | " \n", 309 | " \n", 310 | " \n", 311 | " \n", 312 | "
CompanyJob TitleLocationJob TypeExperience levelSalaryRequirment of the companyFacilities
count31973197319731972962300931983198
unique110621381117342182600777
topPublicis GroupeData EngineerBengaluru, IndiaFull TimeSenior-level115K+ *Big Data,Business Intelligence,Data analysis,E...,,,,
freq126105903116187625312542
\n", 313 | "
" 314 | ], 315 | "text/plain": [ 316 | " Company Job Title Location Job Type \\\n", 317 | "count 3197 3197 3197 3197 \n", 318 | "unique 1106 2138 1117 3 \n", 319 | "top Publicis Groupe Data Engineer Bengaluru, India Full Time \n", 320 | "freq 126 105 90 3116 \n", 321 | "\n", 322 | " Experience level Salary \\\n", 323 | "count 2962 3009 \n", 324 | "unique 4 218 \n", 325 | "top Senior-level 115K+ * \n", 326 | "freq 1876 253 \n", 327 | "\n", 328 | " Requirment of the company Facilities \n", 329 | "count 3198 3198 \n", 330 | "unique 2600 777 \n", 331 | "top Big Data,Business Intelligence,Data analysis,E... ,,,, \n", 332 | "freq 12 542 " 333 | ] 334 | }, 335 | "execution_count": 7, 336 | "metadata": {}, 337 | "output_type": "execute_result" 338 | } 339 | ], 340 | "source": [ 341 | "dataFrame.describe()" 342 | ] 343 | }, 344 | { 345 | "cell_type": "markdown", 346 | "metadata": {}, 347 | "source": [ 348 | "### Missing values" 349 | ] 350 | }, 351 | { 352 | "cell_type": "code", 353 | "execution_count": 8, 354 | "metadata": {}, 355 | "outputs": [ 356 | { 357 | "data": { 358 | "text/plain": [ 359 | "Company 1\n", 360 | "Job Title 1\n", 361 | "Location 1\n", 362 | "Job Type 1\n", 363 | "Experience level 236\n", 364 | "Salary 189\n", 365 | "Requirment of the company 0\n", 366 | "Facilities 0\n", 367 | "dtype: int64" 368 | ] 369 | }, 370 | "execution_count": 8, 371 | "metadata": {}, 372 | "output_type": "execute_result" 373 | } 374 | ], 375 | "source": [ 376 | "missing_values_count=dataFrame.isna().sum()\n", 377 | "missing_values_count[0:8]" 378 | ] 379 | }, 380 | { 381 | "cell_type": "code", 382 | "execution_count": 9, 383 | "metadata": {}, 384 | "outputs": [ 385 | { 386 | "name": "stdout", 387 | "output_type": "stream", 388 | "text": [ 389 | "1.676829268292683\n" 390 | ] 391 | } 392 | ], 393 | "source": [ 394 | "total_cells = np.product(dataFrame.shape)\n", 395 | "total_missing = missing_values_count.sum()\n", 396 | "\n", 397 | "# percent of data that is missing\n", 398 | "percent_missing = (total_missing/total_cells) * 100\n", 399 | "print(percent_missing)\n" 400 | ] 401 | }, 402 | { 403 | "cell_type": "markdown", 404 | "metadata": {}, 405 | "source": [ 406 | "### Unique Values" 407 | ] 408 | }, 409 | { 410 | "cell_type": "code", 411 | "execution_count": 10, 412 | "metadata": {}, 413 | "outputs": [], 414 | "source": [ 415 | "def number_of_unique_values(dataframe):\n", 416 | " columns=dataframe.columns\n", 417 | " print(\"column\",\"====\",\"number of unique values\")\n", 418 | "\n", 419 | " for column in columns:\n", 420 | " if len(dataFrame[column].unique())< 10:\n", 421 | " print(\"====================================\")\n", 422 | "\n", 423 | " print(column,\"====\",len(dataFrame[column].unique()),\"--\",dataFrame[column].unique())\n", 424 | " else:\n", 425 | " column_teen=dataFrame[column].unique()\n", 426 | " print(\"====================================\")\n", 427 | " print(column,\"====\",len(dataFrame[column].unique()),\"--\",column_teen[0:5])\n" 428 | ] 429 | }, 430 | { 431 | "cell_type": "code", 432 | "execution_count": 11, 433 | "metadata": {}, 434 | "outputs": [ 435 | { 436 | "name": "stdout", 437 | "output_type": "stream", 438 | "text": [ 439 | "column ==== number of unique values\n", 440 | "====================================\n", 441 | "Company ==== 1107 -- ['SGS' 'Ocorian' 'Cricut' 'Bosch Group' 'Publicis Groupe']\n", 442 | "====================================\n", 443 | "Job Title ==== 2139 -- ['Clinical Data Analyst' 'AML/CFT & Data Analyst'\n", 444 | " 'Machine Learning Engineer' 'Application Developer & Data Analyst'\n", 445 | " 'Data Engineer Full time (Public Sector) USA']\n", 446 | "====================================\n", 447 | "Location ==== 1118 -- ['Richardson, TX, United States' 'Ebène, Mauritius'\n", 448 | " 'South Jordan, UT, United States' 'Nonantola, Italy'\n", 449 | " 'Arlington, VA, United States']\n", 450 | "====================================\n", 451 | "Job Type ==== 4 -- ['Full Time' 'Internship' 'Part Time' nan]\n", 452 | "====================================\n", 453 | "Experience level ==== 5 -- ['Entry-level' nan 'Mid-level' 'Senior-level' 'Executive-level']\n", 454 | "====================================\n", 455 | "Salary ==== 219 -- [' 48K+ *' ' 90K+ *' ' 108K+' ' 184K+' ' 39K+ *']\n", 456 | "====================================\n", 457 | "Requirment of the company ==== 2600 -- ['Computer Science,Data quality,Genetics,Mathematics,SAS,Statistics'\n", 458 | " 'Agile,Data management,Finance,Security,,'\n", 459 | " 'Agile,Architecture,AWS,Computer Science,Computer Vision,Deep Learning'\n", 460 | " 'Engineering,Industrial,Oracle,Power BI,R,R&D'\n", 461 | " 'AWS,Azure,Computer Science,Consulting,Dataflow,Data pipelines']\n", 462 | "====================================\n", 463 | "Facilities ==== 777 -- [',,,,' 'Career development,,,,'\n", 464 | " 'Flex hours,Flex vacation,Parental leave,Unlimited paid time off,'\n", 465 | " '401(k) matching,Career development,Competitive pay,Equity,Flex hours'\n", 466 | " 'Gear,,,,']\n" 467 | ] 468 | } 469 | ], 470 | "source": [ 471 | "number_of_unique_values(dataFrame)" 472 | ] 473 | }, 474 | { 475 | "cell_type": "markdown", 476 | "metadata": {}, 477 | "source": [ 478 | "### Duplicates" 479 | ] 480 | }, 481 | { 482 | "cell_type": "code", 483 | "execution_count": 12, 484 | "metadata": {}, 485 | "outputs": [ 486 | { 487 | "data": { 488 | "text/plain": [ 489 | "202" 490 | ] 491 | }, 492 | "execution_count": 12, 493 | "metadata": {}, 494 | "output_type": "execute_result" 495 | } 496 | ], 497 | "source": [ 498 | "dataFrame.duplicated().sum()" 499 | ] 500 | }, 501 | { 502 | "cell_type": "markdown", 503 | "metadata": {}, 504 | "source": [ 505 | "### Company" 506 | ] 507 | }, 508 | { 509 | "cell_type": "code", 510 | "execution_count": 13, 511 | "metadata": {}, 512 | "outputs": [ 513 | { 514 | "name": "stdout", 515 | "output_type": "stream", 516 | "text": [ 517 | "['SGS' 'Ocorian' 'Cricut' ... 'DNSFilter' 'MUFG Investor Services'\n", 518 | " 'Galileo Financial Technologies'] 1107\n" 519 | ] 520 | } 521 | ], 522 | "source": [ 523 | "print(dataFrame[\"Company\"].unique(),\n", 524 | "len(dataFrame[\"Company\"].unique()))" 525 | ] 526 | }, 527 | { 528 | "cell_type": "markdown", 529 | "metadata": {}, 530 | "source": [ 531 | "### Job Title" 532 | ] 533 | }, 534 | { 535 | "cell_type": "code", 536 | "execution_count": 14, 537 | "metadata": {}, 538 | "outputs": [ 539 | { 540 | "name": "stdout", 541 | "output_type": "stream", 542 | "text": [ 543 | "['Clinical Data Analyst' 'AML/CFT & Data Analyst'\n", 544 | " 'Machine Learning Engineer' ...\n", 545 | " 'Application Integration Engineer, Computer Vision Program'\n", 546 | " 'Senior Software Engineer, Machine Learning - Ads Intelligence'\n", 547 | " 'Data Scientist - New College Graduate'] 2139\n" 548 | ] 549 | } 550 | ], 551 | "source": [ 552 | "print(dataFrame[\"Job Title\"].unique(),\n", 553 | "len(dataFrame[\"Job Title\"].unique()))" 554 | ] 555 | }, 556 | { 557 | "cell_type": "markdown", 558 | "metadata": {}, 559 | "source": [ 560 | "### Location" 561 | ] 562 | }, 563 | { 564 | "cell_type": "code", 565 | "execution_count": 15, 566 | "metadata": {}, 567 | "outputs": [ 568 | { 569 | "name": "stdout", 570 | "output_type": "stream", 571 | "text": [ 572 | "['Richardson, TX, United States' 'Ebène, Mauritius'\n", 573 | " 'South Jordan, UT, United States' ...\n", 574 | " 'Chantilly, Virginia, United States'\n", 575 | " 'Sunnyvale, CA; San Francisco, CA; New York \\x85' 'Biñan, Philippines'] 1118\n" 576 | ] 577 | } 578 | ], 579 | "source": [ 580 | "print(dataFrame[\"Location\"].unique(),\n", 581 | "len(dataFrame[\"Location\"].unique()))" 582 | ] 583 | }, 584 | { 585 | "cell_type": "markdown", 586 | "metadata": {}, 587 | "source": [ 588 | "### Job Type" 589 | ] 590 | }, 591 | { 592 | "cell_type": "code", 593 | "execution_count": 16, 594 | "metadata": {}, 595 | "outputs": [ 596 | { 597 | "name": "stdout", 598 | "output_type": "stream", 599 | "text": [ 600 | "['Full Time' 'Internship' 'Part Time' nan] 4\n" 601 | ] 602 | } 603 | ], 604 | "source": [ 605 | "print(dataFrame[\"Job Type\"].unique(),\n", 606 | "len(dataFrame[\"Job Type\"].unique()))" 607 | ] 608 | }, 609 | { 610 | "cell_type": "markdown", 611 | "metadata": {}, 612 | "source": [ 613 | "### Experience level\n", 614 | " " 615 | ] 616 | }, 617 | { 618 | "cell_type": "code", 619 | "execution_count": 17, 620 | "metadata": {}, 621 | "outputs": [ 622 | { 623 | "name": "stdout", 624 | "output_type": "stream", 625 | "text": [ 626 | "['Entry-level' nan 'Mid-level' 'Senior-level' 'Executive-level'] 5\n" 627 | ] 628 | } 629 | ], 630 | "source": [ 631 | "print(dataFrame[\"Experience level\"].unique(),\n", 632 | "len(dataFrame[\"Experience level\"].unique()))" 633 | ] 634 | }, 635 | { 636 | "cell_type": "markdown", 637 | "metadata": {}, 638 | "source": [ 639 | "### Salary" 640 | ] 641 | }, 642 | { 643 | "cell_type": "markdown", 644 | "metadata": {}, 645 | "source": [ 646 | "the salary form 'corrency,salary,+,*' / \n", 647 | "if there is no corrancy its in '$' " 648 | ] 649 | }, 650 | { 651 | "cell_type": "code", 652 | "execution_count": 18, 653 | "metadata": {}, 654 | "outputs": [ 655 | { 656 | "name": "stdout", 657 | "output_type": "stream", 658 | "text": [ 659 | "219 [' 48K+ *' ' 90K+ *' ' 108K+' ' 184K+' ' 39K+ *' nan ' 140K+' ' 40K+ *'\n", 660 | " ' 80K+ *' ' 35K+ *' ' 62K+ *' ' 159K+' ' 97K+' ' 92K+ *' ' 129K+ *'\n", 661 | " ' 115K+ *' ' 44K+ *' ' 73K+ *' ' 59K+ *' ' 106K+' ' 105K+ *' ' 55K+ *'\n", 662 | " ' 110K+ *' ' 63K+ *' ' 49K+ *' ' 180K+' ' 127K+' ' 60K+' ' 45K+ *'\n", 663 | " ' 135K+' ' 69K+ *' ' 176K+' ' 65K+ *' ' 51K+ *' ' 67K+' ' 104K+' ' 105K+'\n", 664 | " ' 166K+' ' 131K+ *' ' 115K+' ' 43K+' ' 81K+ *' ' 96K+ *' ' 56K+ *'\n", 665 | " ' 130K+' ' 131K+' ' 50K+ *' ' 100K+' ' 60K+ *' ' 52K+' ' 135K+ *' ' 76K+'\n", 666 | " ' 172K+' ' 119K+' ' 125K+' ' 116K+' ' 77K+ *' ' 74K+ *' ' 70K+ *'\n", 667 | " ' 120K+' ' 189K+' ' 149K+' ' 110K+' ' 90K+' ' 30K+ *' ' 167K+' ' 236K+'\n", 668 | " ' 179K+' ' 80K+' ' 200K+' ' 139K+' ' 129K+' ' 113K+' ' 150K+' ' 158K+'\n", 669 | " ' 40K+' ' 184K+ *' ' 133K+' ' 78K+' ' 36K+ *' ' 122K+ *' ' 81K+' ' 59K+'\n", 670 | " 'EUR 81K' ' 190K+' ' 72K+' ' 136K+' ' 102K+ *' ' 31K+ *' ' 89K+ *'\n", 671 | " ' 156K+' ' 107K+' ' 199K+' ' 224K+' ' 142K+' 'GBP 35K' ' 183K+' ' 164K+'\n", 672 | " 'EUR 130K+' ' 174K+' ' 84K+' ' 79K+' ' 103K+ *' ' 143K+' ' 175K+'\n", 673 | " ' 170K+' ' 141K+ *' ' 283K+' ' 151K+' ' 111K+' ' 51K+' ' 96K+' ' 148K+'\n", 674 | " ' 204K+' ' 202K+' ' 295K+' ' 68K+' ' 195K+' ' 145K+' ' 50K+' ' 267K+'\n", 675 | " ' 200K+ *' ' 109K+ *' ' 310K+' ' 153K+' ' 154K+' ' 86K+' ' 70K+' ' 207K+'\n", 676 | " ' 85K+' ' 66K+' ' 315K+' ' 160K+' ' 66K+ *' ' 144K+' ' 245K+' ' 126K+'\n", 677 | " ' 63K+' ' 182K+' ' 157K+' ' 214K+' ' 173K+' 'EUR 80K+' ' 120K+ *'\n", 678 | " 'EUR 36K+' 'EUR 60K+' 'GBP 42K+' ' 112K+' ' 124K+' ' 185K+' ' 147K+'\n", 679 | " ' 122K+' 'GBP 80K+' ' 144K+ *' ' 146K+' ' 165K+' ' 75K+' ' 163K+'\n", 680 | " ' 193K+' ' 109K+' 'GBP 60K+' ' 218K+' ' 230K+' ' 168K+' ' 134K+' ' 225K+'\n", 681 | " ' 253K+' ' 83K+' ' 235K+' ' 187K+' ' 227K+' ' 73K+' ' 61K+ *' ' 171K+'\n", 682 | " ' 234K+' 'GBP 45K+' ' 155K+' ' 71K+' ' 94K+' ' 57K+ *' ' 197K+' ' 102K+'\n", 683 | " ' 82K+' ' 177K+' 'GBP 50K+' ' 93K+' ' 55K+' ' 121K+' ' 42K+ *' ' 45K+'\n", 684 | " ' 75K+ *' ' 152K+' ' 161K+' ' 155K+ *' ' 132K+' 'GBP 55K+' ' 138K+'\n", 685 | " ' 196K+' ' 205K+' 'GBP 65K+' ' 178K+' ' 95K+' ' 33K+ *' ' 54K+ *' ' 98K+'\n", 686 | " ' 141K+' ' 95K+ *' ' 65K+' 'GBP 55K' ' 99K+' ' 220K+' ' 74K+' ' 103K+'\n", 687 | " ' 100K+ *' 'GBP 51K+' ' 128K+' 'GBP 54K+' ' 123K+' ' 117K+']\n" 688 | ] 689 | } 690 | ], 691 | "source": [ 692 | "print(len(dataFrame[\"Salary\"].unique()),\" \",dataFrame[\"Salary\"].unique())\n", 693 | "# get the values with the +*" 694 | ] 695 | }, 696 | { 697 | "cell_type": "markdown", 698 | "metadata": {}, 699 | "source": [ 700 | "### Requirment of the company " 701 | ] 702 | }, 703 | { 704 | "cell_type": "code", 705 | "execution_count": 19, 706 | "metadata": {}, 707 | "outputs": [ 708 | { 709 | "name": "stdout", 710 | "output_type": "stream", 711 | "text": [ 712 | "2600 ['Computer Science,Data quality,Genetics,Mathematics,SAS,Statistics'\n", 713 | " 'Agile,Data management,Finance,Security,,'\n", 714 | " 'Agile,Architecture,AWS,Computer Science,Computer Vision,Deep Learning'\n", 715 | " ...\n", 716 | " 'Computer Science,Data analysis,Engineering,Excel,Feature engineering,Keras'\n", 717 | " 'APIs,Clustering,Computer Science,Data visualization,Deep Learning,Docker'\n", 718 | " 'Computer Science,Data Analytics,Data Mining,Economics,Engineering,GCP']\n" 719 | ] 720 | } 721 | ], 722 | "source": [ 723 | "print(len(dataFrame[\"Requirment of the company \"].unique()),\" \",dataFrame[\"Requirment of the company \"].unique())" 724 | ] 725 | }, 726 | { 727 | "cell_type": "markdown", 728 | "metadata": {}, 729 | "source": [ 730 | "### Facilities" 731 | ] 732 | }, 733 | { 734 | "cell_type": "code", 735 | "execution_count": 20, 736 | "metadata": {}, 737 | "outputs": [ 738 | { 739 | "name": "stdout", 740 | "output_type": "stream", 741 | "text": [ 742 | "777 [',,,,' 'Career development,,,,'\n", 743 | " 'Flex hours,Flex vacation,Parental leave,Unlimited paid time off,'\n", 744 | " '401(k) matching,Career development,Competitive pay,Equity,Flex hours'\n", 745 | " 'Gear,,,,'\n", 746 | " 'Career development,Competitive pay,Equity,Flex vacation,Health care'\n", 747 | " 'Career development,Medical leave,Salary bonus,Startup environment,'\n", 748 | " 'Career development,Health care,Medical leave,,'\n", 749 | " 'Career development,Startup environment,,,' 'Flex hours,,,,'\n", 750 | " 'Team events,,,,'\n", 751 | " 'Career development,Competitive pay,Health care,Salary bonus,'\n", 752 | " 'Flex hours,Flex vacation,Home office stipend,Parental leave,Startup environment'\n", 753 | " 'Competitive pay,Equity,Health care,Insurance,'\n", 754 | " 'Career development,Equity,Fitness / gym,Home office stipend,Relocation support'\n", 755 | " 'Career development,Flex hours,,,' 'Career development,Team events,,,'\n", 756 | " 'Career development,Flex hours,Health care,,' 'Health care,,,,'\n", 757 | " 'Career development,Flex vacation,,,' 'Fitness / gym,,,,'\n", 758 | " 'Career development,Flex hours,Health care,Startup environment,'\n", 759 | " 'Startup environment,,,,'\n", 760 | " 'Career development,Fitness / gym,Flex hours,Flex vacation,Health care'\n", 761 | " 'Career development,Equity,Flex hours,Flex vacation,Health care'\n", 762 | " 'Career development,Relocation support,,,'\n", 763 | " 'Career development,Competitive pay,Health care,,'\n", 764 | " '401(k) matching,Career development,Competitive pay,Equity,Flex vacation'\n", 765 | " 'Career development,Flex hours,Startup environment,,'\n", 766 | " 'Flex hours,Flex vacation,,,'\n", 767 | " 'Career development,Fitness / gym,Flex hours,Flex vacation,Gear'\n", 768 | " '401(k) matching,Career development,Competitive pay,Equity,Fertility benefits'\n", 769 | " 'Salary bonus,Startup environment,,,'\n", 770 | " 'Career development,Competitive pay,Equity,Salary bonus,' 'Equity,,,,'\n", 771 | " 'Career development,Conferences,Flex hours,,'\n", 772 | " 'Career development,Conferences,Equity,Health care,'\n", 773 | " 'Cell phone stipend,Competitive pay,Fitness / gym,Health care,Insurance'\n", 774 | " 'Career development,Competitive pay,Conferences,Equity,Health care'\n", 775 | " 'Career development,Home office stipend,,,'\n", 776 | " '401(k) matching,Health care,Salary bonus,Wellness,'\n", 777 | " 'Career development,Competitive pay,,,'\n", 778 | " '401(k) matching,Career development,Equity,Gear,Health care'\n", 779 | " 'Career development,Equity,Fitness / gym,Flex hours,Flex vacation'\n", 780 | " 'Career development,Startup environment,Team events,,'\n", 781 | " 'Career development,Competitive pay,Equity,Flex hours,Team events'\n", 782 | " 'Career development,Competitive pay,Flex hours,Health care,Salary bonus'\n", 783 | " 'Flex hours,Health care,Insurance,Medical leave,'\n", 784 | " 'Career development,Flex hours,Flex vacation,Health care,Insurance'\n", 785 | " 'Career development,Health care,Insurance,,'\n", 786 | " 'Career development,Flex hours,Parental leave,,'\n", 787 | " 'Career development,Equity,Salary bonus,,' 'Insurance,,,,'\n", 788 | " 'Flex hours,Flex vacation,Medical leave,Salary bonus,Wellness'\n", 789 | " 'Career development,Competitive pay,Flex hours,Flex vacation,Health care'\n", 790 | " '401(k) matching,Career development,Competitive pay,Flex hours,Flex vacation'\n", 791 | " 'Equity,Health care,Insurance,Salary bonus,Wellness'\n", 792 | " 'Career development,Competitive pay,Salary bonus,,'\n", 793 | " '401(k) matching,Flex hours,Flex vacation,Health care,Salary bonus'\n", 794 | " 'Career development,Competitive pay,Equity,Fitness / gym,Health care'\n", 795 | " 'Career development,Competitive pay,Equity,Flex hours,Flex vacation'\n", 796 | " '401(k) matching,Competitive pay,Equity,Health care,Insurance'\n", 797 | " 'Competitive pay,Flex vacation,Gear,Medical leave,Parental leave'\n", 798 | " 'Competitive pay,Health care,Team events,,'\n", 799 | " 'Career development,Competitive pay,Startup environment,Team events,'\n", 800 | " 'Career development,Flex vacation,Startup environment,,'\n", 801 | " 'Competitive pay,Flex vacation,,,'\n", 802 | " 'Career development,Flex hours,Flex vacation,Health care,Startup environment'\n", 803 | " 'Competitive pay,Equity,Flex vacation,Health care,Salary bonus'\n", 804 | " 'Career development,Equity,Flex vacation,Startup environment,Transparency'\n", 805 | " 'Career development,Equity,Flex hours,Health care,Startup environment'\n", 806 | " 'Transparency,,,,'\n", 807 | " 'Career development,Equity,Health care,Insurance,Parental leave'\n", 808 | " 'Career development,Equity,Health care,Home office stipend,Insurance'\n", 809 | " 'Career development,Insurance,,,'\n", 810 | " 'Career development,Equity,Health care,Insurance,Medical leave'\n", 811 | " 'Career development,Flex hours,Health care,Home office stipend,'\n", 812 | " 'Career development,Fitness / gym,Health care,Insurance,'\n", 813 | " 'Career development,Conferences,,,'\n", 814 | " 'Career development,Equity,Health care,Insurance,Salary bonus'\n", 815 | " 'Flex hours,Startup environment,,,'\n", 816 | " '401(k) matching,Career development,Equity,Flex vacation,Health care'\n", 817 | " 'Career development,Competitive pay,Conferences,Fitness / gym,Gear'\n", 818 | " 'Career development,Competitive pay,Conferences,Fertility benefits,Health care'\n", 819 | " 'Career development,Health care,Insurance,Medical leave,Parental leave'\n", 820 | " '401(k) matching,Career development,Conferences,Equity,Flex hours'\n", 821 | " 'Competitive pay,Equity,Health care,Medical leave,Parental leave'\n", 822 | " 'Fitness / gym,Flex hours,Flex vacation,Home office stipend,Salary bonus'\n", 823 | " 'Equity,Relocation support,,,'\n", 824 | " 'Career development,Flex hours,Team events,,' '401(k) matching,,,,'\n", 825 | " 'Career development,Parental leave,Wellness,,'\n", 826 | " 'Career development,Flex hours,Flex vacation,Health care,Home office stipend'\n", 827 | " '401(k) matching,Equity,Flex hours,Flex vacation,Health care'\n", 828 | " 'Career development,Conferences,Flex vacation,Health care,Insurance'\n", 829 | " 'Career development,Competitive pay,Conferences,Salary bonus,Startup environment'\n", 830 | " 'Career development,Competitive pay,Flex hours,Team events,'\n", 831 | " 'Conferences,Startup environment,Team events,,'\n", 832 | " 'Career development,Equity,Flex hours,Salary bonus,'\n", 833 | " 'Career development,Competitive pay,Conferences,Equity,Salary bonus'\n", 834 | " '401(k) matching,Competitive pay,Equity,Fertility benefits,Fitness / gym'\n", 835 | " 'Career development,Competitive pay,Fitness / gym,Health care,Insurance'\n", 836 | " 'Career development,Competitive pay,Health care,Startup environment,'\n", 837 | " 'Career development,Parental leave,,,'\n", 838 | " 'Career development,Conferences,Flex hours,Flex vacation,Health care'\n", 839 | " 'Career development,Competitive pay,Health care,Insurance,'\n", 840 | " 'Career development,Conferences,Startup environment,Team events,'\n", 841 | " 'Career development,Competitive pay,Flex vacation,Health care,Insurance'\n", 842 | " 'Career development,Flex hours,Flex vacation,Parental leave,'\n", 843 | " 'Career development,Medical leave,,,'\n", 844 | " 'Career development,Competitive pay,Flex hours,Health care,Home office stipend'\n", 845 | " 'Career development,Health care,,,'\n", 846 | " 'Equity,Health care,Insurance,Medical leave,Parental leave'\n", 847 | " 'Flex hours,Flex vacation,Parental leave,,'\n", 848 | " 'Competitive pay,Health care,Medical leave,Parental leave,'\n", 849 | " 'Career development,Competitive pay,Equity,Health care,Home office stipend'\n", 850 | " 'Career development,Lunch / meals,Team events,,'\n", 851 | " 'Career development,Equity,Flex hours,Health care,Salary bonus'\n", 852 | " 'Career development,Conferences,Health care,Medical leave,Parental leave'\n", 853 | " 'Career development,Competitive pay,Equity,Flex hours,Health care'\n", 854 | " 'Career development,Competitive pay,Equity,Startup environment,Transparency'\n", 855 | " 'Career development,Competitive pay,Salary bonus,Wellness,'\n", 856 | " 'Career development,Health care,Startup environment,Team events,'\n", 857 | " 'Health care,Wellness,,,' 'Competitive pay,Startup environment,,,'\n", 858 | " 'Competitive pay,Health care,Relocation support,,'\n", 859 | " '401(k) matching,Career development,Health care,Startup environment,'\n", 860 | " '401(k) matching,Career development,Competitive pay,Equity,Health care'\n", 861 | " 'Career development,Equity,Flex vacation,Health care,Insurance'\n", 862 | " 'Career development,Flex hours,Startup environment,Yoga,'\n", 863 | " 'Career development,Startup environment,Unlimited paid time off,,'\n", 864 | " 'Career development,Conferences,Equity,Flex hours,Health care'\n", 865 | " 'Career development,Competitive pay,Team events,,'\n", 866 | " 'Career development,Conferences,Flex hours,Parental leave,'\n", 867 | " 'Career development,Equity,Salary bonus,Startup environment,'\n", 868 | " 'Career development,Insurance,Parental leave,Salary bonus,Startup environment'\n", 869 | " 'Career development,Health care,Startup environment,,'\n", 870 | " 'Career development,Competitive pay,Equity,Health care,Parental leave'\n", 871 | " 'Flex vacation,Gear,Health care,Team events,'\n", 872 | " 'Career development,Flex hours,Salary bonus,Startup environment,Team events'\n", 873 | " 'Career development,Conferences,Flex vacation,Parental leave,'\n", 874 | " 'Career development,Flex hours,Team events,Yoga,'\n", 875 | " 'Career development,Equity,Flex hours,Flex vacation,Home office stipend'\n", 876 | " 'Health care,Insurance,,,'\n", 877 | " '401(k) matching,Career development,Equity,Flex hours,Flex vacation'\n", 878 | " 'Career development,Equity,,,'\n", 879 | " '401(k) matching,Career development,Competitive pay,Health care,Insurance'\n", 880 | " 'Career development,Equity,Flex hours,Flex vacation,Salary bonus'\n", 881 | " 'Career development,Conferences,Gear,Lunch / meals,Salary bonus'\n", 882 | " 'Career development,Competitive pay,Equity,,'\n", 883 | " 'Career development,Competitive pay,Equity,Gear,Health care'\n", 884 | " 'Career development,Equity,Flex hours,Home office stipend,'\n", 885 | " 'Career development,Competitive pay,Equity,Startup environment,Team events'\n", 886 | " 'Career development,Competitive pay,Startup environment,,'\n", 887 | " 'Career development,Flex hours,Flex vacation,Health care,Relocation support'\n", 888 | " 'Career development,Competitive pay,Conferences,Flex hours,Flex vacation'\n", 889 | " 'Career development,Conferences,Startup environment,,'\n", 890 | " 'Career development,Competitive pay,Parental leave,Startup environment,Wellness'\n", 891 | " '401(k) matching,Competitive pay,Equity,Flex hours,Flex vacation'\n", 892 | " '401(k) matching,Health care,Insurance,Wellness,'\n", 893 | " 'Competitive pay,Flex hours,Health care,Team events,' 'Salary bonus,,,,'\n", 894 | " 'Career development,Competitive pay,Health care,Team events,'\n", 895 | " 'Flex hours,Salary bonus,,,'\n", 896 | " 'Career development,Equity,Gear,Medical leave,Salary bonus'\n", 897 | " 'Career development,Flex vacation,Health care,Home office stipend,Parental leave'\n", 898 | " '401(k) matching,Career development,Flex hours,Flex vacation,Health care'\n", 899 | " 'Competitive pay,Equity,,,'\n", 900 | " 'Career development,Conferences,Salary bonus,Startup environment,'\n", 901 | " 'Career development,Flex hours,Flex vacation,Startup environment,Team events'\n", 902 | " 'Career development,Flex hours,Flex vacation,Team events,'\n", 903 | " 'Competitive pay,Flex hours,Flex vacation,Health care,Salary bonus'\n", 904 | " 'Career development,Flex vacation,Health care,Medical leave,Parental leave'\n", 905 | " 'Competitive pay,Lunch / meals,Startup environment,Wellness,'\n", 906 | " 'Competitive pay,Fertility benefits,Flex hours,Health care,Medical leave'\n", 907 | " 'Career development,Conferences,Health care,Lunch / meals,Medical leave'\n", 908 | " 'Flex hours,Flex vacation,Gear,Home office stipend,Team events'\n", 909 | " 'Conferences,,,,'\n", 910 | " 'Career development,Competitive pay,Flex hours,Gear,Startup environment'\n", 911 | " 'Equity,Flex hours,Flex vacation,Health care,Insurance'\n", 912 | " 'Career development,Fitness / gym,Flex hours,Flex vacation,Salary bonus'\n", 913 | " 'Career development,Insurance,Team events,,'\n", 914 | " 'Equity,Flex hours,Insurance,Team events,'\n", 915 | " 'Career development,Flex hours,Health care,Team events,'\n", 916 | " 'Flex hours,Health care,Insurance,,'\n", 917 | " 'Career development,Equity,Startup environment,Unlimited paid time off,Wellness'\n", 918 | " 'Career development,Equity,Flex hours,Health care,Insurance'\n", 919 | " 'Career development,Competitive pay,Equity,Flex hours,Medical leave'\n", 920 | " 'Team events,Unlimited paid time off,,,'\n", 921 | " 'Career development,Flex hours,Health care,Parental leave,Relocation support'\n", 922 | " '401(k) matching,Career development,Flex hours,Flexible spending account,Flex vacation'\n", 923 | " '401(k) matching,Career development,Competitive pay,Conferences,Fitness / gym'\n", 924 | " 'Travel,,,,'\n", 925 | " 'Career development,Conferences,Equity,Flex hours,Flex vacation'\n", 926 | " '401(k) matching,Career development,Equity,Health care,Medical leave'\n", 927 | " 'Flex vacation,Medical leave,,,'\n", 928 | " 'Competitive pay,Equity,Flex hours,Health care,Salary bonus'\n", 929 | " 'Career development,Flex hours,Insurance,Startup environment,Team events'\n", 930 | " 'Career development,Equity,Startup environment,Team events,'\n", 931 | " 'Competitive pay,Flex hours,,,'\n", 932 | " 'Career development,Competitive pay,Equity,Medical leave,Parental leave'\n", 933 | " 'Career development,Competitive pay,Equity,Health care,Insurance'\n", 934 | " 'Career development,Competitive pay,Equity,Flex vacation,Salary bonus'\n", 935 | " 'Career development,Flex vacation,Health care,Home office stipend,Medical leave'\n", 936 | " 'Career development,Competitive pay,Equity,Fertility benefits,Flex hours'\n", 937 | " 'Career development,Flex hours,Flex vacation,Health care,Team events'\n", 938 | " '401(k) matching,Career development,Equity,Fertility benefits,Health care'\n", 939 | " '401(k) matching,Career development,Fertility benefits,Flex hours,Flex vacation'\n", 940 | " 'Flex hours,Flex vacation,Transparency,Unlimited paid time off,'\n", 941 | " 'Career development,Health care,Salary bonus,,'\n", 942 | " '401(k) matching,Career development,Competitive pay,Flex vacation,Health care'\n", 943 | " 'Career development,Flex hours,Flex vacation,Salary bonus,'\n", 944 | " 'Career development,Equity,Flex hours,Flex vacation,Team events'\n", 945 | " 'Career development,Yoga,,,' 'Flex hours,Team events,,,'\n", 946 | " 'Career development,Fitness / gym,Health care,Parental leave,Startup environment'\n", 947 | " 'Equity,Flex hours,,,'\n", 948 | " 'Career development,Equity,Flex hours,Health care,Home office stipend'\n", 949 | " 'Health care,Insurance,Medical leave,Salary bonus,'\n", 950 | " 'Competitive pay,Insurance,,,' 'Startup environment,Team events,,,'\n", 951 | " 'Career development,Medical leave,Startup environment,,'\n", 952 | " 'Career development,Flex hours,Salary bonus,Team events,'\n", 953 | " 'Career development,Travel,,,'\n", 954 | " 'Career development,Equity,Startup environment,,'\n", 955 | " 'Career development,Flex hours,Health care,Medical leave,Parental leave'\n", 956 | " 'Career development,Competitive pay,Fitness / gym,Gear,Health care'\n", 957 | " 'Career development,Competitive pay,Insurance,,'\n", 958 | " 'Career development,Flex hours,Salary bonus,Startup environment,'\n", 959 | " 'Career development,Competitive pay,Flex hours,Parental leave,Salary bonus'\n", 960 | " 'Career development,Equity,Gear,,'\n", 961 | " 'Career development,Competitive pay,Flex hours,Health care,Team events'\n", 962 | " 'Career development,Equity,Health care,Medical leave,Unlimited paid time off'\n", 963 | " 'Career development,Competitive pay,Flex vacation,Home office stipend,Insurance'\n", 964 | " '401(k) matching,Competitive pay,Health care,Insurance,Salary bonus'\n", 965 | " 'Competitive pay,Startup environment,Team events,,'\n", 966 | " '401(k) matching,Career development,Conferences,Flex hours,Flex vacation'\n", 967 | " 'Career development,Equity,Team events,,' 'Competitive pay,,,,'\n", 968 | " 'Career development,Parental leave,Team events,,'\n", 969 | " '401(k) matching,Career development,Cell phone stipend,Competitive pay,Conferences'\n", 970 | " 'Career development,Equity,Health care,,'\n", 971 | " 'Competitive pay,Flex hours,Health care,Startup environment,'\n", 972 | " 'Career development,Competitive pay,Flex hours,Flex vacation,Gear'\n", 973 | " 'Career development,Flex hours,Flex vacation,,'\n", 974 | " 'Career development,Competitive pay,Conferences,Health care,Salary bonus'\n", 975 | " '401(k) matching,Career development,Competitive pay,Fitness / gym,Flex hours'\n", 976 | " 'Career development,Fitness / gym,Flex hours,Health care,Medical leave'\n", 977 | " 'Career development,Flex hours,Flex vacation,Insurance,Parental leave'\n", 978 | " 'Flex hours,Flex vacation,Startup environment,Team events,'\n", 979 | " 'Equity,Flex hours,Flex vacation,Health care,Unlimited paid time off'\n", 980 | " 'Career development,Competitive pay,Health care,Insurance,Startup environment'\n", 981 | " 'Career development,Flex vacation,Health care,Insurance,Medical leave'\n", 982 | " '401(k) matching,Career development,Flexible spending account,Flex vacation,Health care'\n", 983 | " 'Career development,Conferences,Flex vacation,Health care,Startup environment'\n", 984 | " 'Career development,Competitive pay,Equity,Health care,Team events'\n", 985 | " 'Competitive pay,Equity,Flex vacation,Health care,Wellness'\n", 986 | " 'Career development,Equity,Insurance,Startup environment,Team events'\n", 987 | " 'Career development,Fitness / gym,,,'\n", 988 | " 'Home office stipend,Startup environment,Team events,Yoga,'\n", 989 | " 'Career development,Competitive pay,Fitness / gym,Flex hours,Flex vacation'\n", 990 | " 'Career development,Competitive pay,Flex vacation,Health care,Startup environment'\n", 991 | " 'Career development,Equity,Flex hours,Health care,Parental leave'\n", 992 | " 'Flex hours,Gear,,,'\n", 993 | " 'Flex hours,Flex vacation,Medical leave,Salary bonus,Team events'\n", 994 | " 'Health care,Insurance,Team events,,'\n", 995 | " 'Career development,Health care,Medical leave,Salary bonus,'\n", 996 | " 'Career development,Conferences,Health care,Salary bonus,'\n", 997 | " 'Career development,Health care,Team events,,'\n", 998 | " 'Career development,Relocation support,Startup environment,,'\n", 999 | " 'Career development,Equity,Flex hours,Startup environment,'\n", 1000 | " 'Career development,Equity,Flex hours,,'\n", 1001 | " 'Career development,Competitive pay,Equity,Fertility benefits,Flex vacation'\n", 1002 | " 'Career development,Flex vacation,Health care,Team events,'\n", 1003 | " 'Career development,Conferences,Flex hours,Home office stipend,Startup environment'\n", 1004 | " 'Career development,Startup environment,Travel,,' 'Equity,Health care,,,'\n", 1005 | " 'Career development,Flex vacation,Startup environment,Team events,'\n", 1006 | " 'Career development,Equity,Fertility benefits,Flex hours,Flex vacation'\n", 1007 | " '401(k) matching,Career development,Equity,Health care,Insurance'\n", 1008 | " 'Competitive pay,Conferences,Equity,Salary bonus,Startup environment'\n", 1009 | " 'Career development,Conferences,Flex vacation,Health care,Salary bonus'\n", 1010 | " 'Competitive pay,Flex hours,Health care,Snacks / Drinks,Team events'\n", 1011 | " 'Conferences,Flex hours,Flex vacation,Health care,Unlimited paid time off'\n", 1012 | " 'Career development,Flex vacation,Health care,Startup environment,Team events'\n", 1013 | " 'Career development,Flex hours,Insurance,Parental leave,'\n", 1014 | " 'Competitive pay,Equity,Flex hours,Startup environment,Team events'\n", 1015 | " 'Career development,Flex hours,Medical leave,Parental leave,Salary bonus'\n", 1016 | " 'Career development,Fitness / gym,Health care,Insurance,Medical leave'\n", 1017 | " '401(k) matching,Career development,Flex vacation,Health care,Salary bonus'\n", 1018 | " 'Career development,Flex hours,Flex vacation,Health care,Parental leave'\n", 1019 | " 'Equity,Flex hours,Flex vacation,Health care,'\n", 1020 | " 'Career development,Home office stipend,Snacks / Drinks,Wellness,'\n", 1021 | " 'Career development,Equity,Flex vacation,Insurance,Team events'\n", 1022 | " '401(k) matching,Career development,Health care,Startup environment,Wellness'\n", 1023 | " 'Career development,Flex hours,Parental leave,Team events,'\n", 1024 | " 'Career development,Equity,Startup environment,Team events,Transparency'\n", 1025 | " 'Career development,Equity,Insurance,Team events,'\n", 1026 | " 'Career development,Conferences,Team events,,'\n", 1027 | " 'Career development,Competitive pay,Equity,Flex hours,'\n", 1028 | " 'Career development,Insurance,Startup environment,,'\n", 1029 | " 'Fitness / gym,Team events,,,'\n", 1030 | " 'Career development,Conferences,Equity,Flex vacation,Relocation support'\n", 1031 | " 'Career development,Conferences,Equity,Startup environment,'\n", 1032 | " 'Flex hours,Insurance,Medical leave,Parental leave,' 'Wellness,,,,'\n", 1033 | " 'Career development,Equity,Travel,,'\n", 1034 | " 'Career development,Cell phone stipend,Competitive pay,Gear,Health care'\n", 1035 | " 'Career development,Health care,Insurance,Medical leave,Startup environment'\n", 1036 | " 'Career development,Flex hours,Flex vacation,Startup environment,Unlimited paid time off'\n", 1037 | " 'Career development,Equity,Fitness / gym,Health care,Paid sabbatical'\n", 1038 | " 'Career development,Flex vacation,Health care,Pet friendly,Startup environment'\n", 1039 | " 'Flex vacation,Salary bonus,,,'\n", 1040 | " 'Career development,Flex hours,Gear,Startup environment,Travel'\n", 1041 | " 'Career development,Equity,Parental leave,Startup environment,Team events'\n", 1042 | " 'Career development,Competitive pay,Conferences,Flex hours,Health care'\n", 1043 | " 'Competitive pay,Equity,Flex hours,Flex vacation,Health care'\n", 1044 | " 'Health care,Startup environment,,,'\n", 1045 | " 'Competitive pay,Flex hours,Flex vacation,Health care,Insurance'\n", 1046 | " 'Career development,Competitive pay,Equity,Health care,Startup environment'\n", 1047 | " 'Career development,Flex hours,Flex vacation,Startup environment,'\n", 1048 | " 'Career development,Competitive pay,Equity,Health care,Medical leave'\n", 1049 | " 'Career development,Competitive pay,Flex hours,Flex vacation,Home office stipend'\n", 1050 | " 'Career development,Equity,Flex hours,Insurance,Startup environment'\n", 1051 | " 'Career development,Flex hours,Salary bonus,,'\n", 1052 | " 'Career development,Wellness,,,'\n", 1053 | " 'Flex hours,Flex vacation,Relocation support,,'\n", 1054 | " 'Career development,Flex hours,Health care,Medical leave,Salary bonus'\n", 1055 | " 'Career development,Flex hours,Flex vacation,Medical leave,Parental leave'\n", 1056 | " 'Career development,Fitness / gym,Health care,Parental leave,'\n", 1057 | " 'Career development,Gear,Health care,,'\n", 1058 | " 'Career development,Equity,Flex hours,Parental leave,Startup environment'\n", 1059 | " 'Career development,Conferences,Medical leave,Parental leave,Salary bonus'\n", 1060 | " 'Career development,Health care,Pet friendly,Salary bonus,Team events'\n", 1061 | " 'Career development,Lunch / meals,Yoga,,'\n", 1062 | " 'Career development,Fitness / gym,Home office stipend,Insurance,Salary bonus'\n", 1063 | " '401(k) matching,Career development,Competitive pay,Conferences,Equity'\n", 1064 | " 'Equity,Home office stipend,Relocation support,,'\n", 1065 | " 'Career development,Medical leave,Salary bonus,,'\n", 1066 | " 'Career development,Equity,Health care,Salary bonus,'\n", 1067 | " '401(k) matching,Career development,Competitive pay,Startup environment,'\n", 1068 | " '401(k) matching,Career development,Competitive pay,,'\n", 1069 | " 'Career development,Competitive pay,Health care,Insurance,Relocation support'\n", 1070 | " 'Career development,Equity,Flex vacation,Health care,Medical leave'\n", 1071 | " 'Competitive pay,Equity,Health care,Insurance,Parental leave'\n", 1072 | " 'Equity,Flex hours,Health care,Insurance,Parental leave'\n", 1073 | " 'Career development,Conferences,Equity,,'\n", 1074 | " 'Flex hours,Health care,Relocation support,Startup environment,'\n", 1075 | " 'Flex hours,Flex vacation,Health care,,'\n", 1076 | " 'Career development,Health care,Medical leave,Relocation support,Startup environment'\n", 1077 | " '401(k) matching,Competitive pay,Health care,Insurance,Startup environment'\n", 1078 | " 'Career development,Conferences,Flex vacation,Health care,Relocation support'\n", 1079 | " '401(k) matching,Equity,Flex vacation,Health care,Insurance'\n", 1080 | " 'Career development,Flex hours,Health care,Insurance,'\n", 1081 | " 'Competitive pay,Equity,Health care,Salary bonus,Startup environment'\n", 1082 | " '401(k) matching,Health care,Medical leave,Parental leave,Team events'\n", 1083 | " 'Career development,Competitive pay,Flex hours,Health care,Snacks / Drinks'\n", 1084 | " '401(k) matching,Flex hours,Flex vacation,Health care,Medical leave'\n", 1085 | " 'Career development,Equity,Flex hours,Flex vacation,Startup environment'\n", 1086 | " 'Competitive pay,Equity,Flex hours,Flex vacation,'\n", 1087 | " '401(k) matching,Career development,Cell phone stipend,Competitive pay,Gear'\n", 1088 | " 'Equity,Salary bonus,,,' 'Flex hours,Startup environment,Team events,,'\n", 1089 | " 'Career development,Health care,Startup environment,Wellness,'\n", 1090 | " 'Competitive pay,Flex vacation,Startup environment,Team events,'\n", 1091 | " 'Competitive pay,Equity,Flex vacation,Salary bonus,Startup environment'\n", 1092 | " '401(k) matching,Health care,Insurance,Medical leave,Parental leave'\n", 1093 | " '401(k) matching,Career development,Conferences,Flex vacation,Health care'\n", 1094 | " 'Career development,Competitive pay,Fitness / gym,Health care,Parental leave'\n", 1095 | " 'Insurance,Team events,,,'\n", 1096 | " 'Career development,Equity,Flex vacation,Health care,Relocation support'\n", 1097 | " 'Career development,Flex vacation,Gear,Health care,Insurance'\n", 1098 | " 'Career development,Flex hours,Flex vacation,Health care,Medical leave'\n", 1099 | " 'Career development,Flex hours,Flex vacation,Parental leave,Startup environment'\n", 1100 | " '401(k) matching,Career development,Conferences,Equity,Fitness / gym'\n", 1101 | " 'Competitive pay,Flex vacation,Startup environment,,'\n", 1102 | " 'Career development,Flex hours,Health care,Salary bonus,Startup environment'\n", 1103 | " 'Career development,Flex hours,Startup environment,Team events,'\n", 1104 | " 'Career development,Equity,Gear,Health care,Insurance'\n", 1105 | " 'Career development,Flex vacation,Health care,,'\n", 1106 | " 'Career development,Gear,Health care,Home office stipend,Insurance'\n", 1107 | " 'Career development,Competitive pay,Flex hours,Parental leave,Startup environment'\n", 1108 | " 'Flex hours,Flex vacation,Gear,Health care,'\n", 1109 | " 'Career development,Flex vacation,Team events,,'\n", 1110 | " 'Career development,Competitive pay,Equity,Flex hours,Startup environment'\n", 1111 | " 'Career development,Salary bonus,,,'\n", 1112 | " 'Flex hours,Flex vacation,Health care,Insurance,Parental leave'\n", 1113 | " 'Career development,Equity,Medical leave,Startup environment,Team events'\n", 1114 | " 'Career development,Competitive pay,Health care,Lunch / meals,Unlimited paid time off'\n", 1115 | " 'Flex vacation,Gear,Health care,Insurance,'\n", 1116 | " 'Career development,Parental leave,Salary bonus,Wellness,'\n", 1117 | " 'Career development,Health care,Insurance,Salary bonus,'\n", 1118 | " 'Career development,Competitive pay,Equity,Parental leave,Team events'\n", 1119 | " 'Career development,Conferences,Flex hours,Flex vacation,Home office stipend'\n", 1120 | " '401(k) matching,Career development,Fertility benefits,Flex vacation,Snacks / Drinks'\n", 1121 | " 'Career development,Health care,Parental leave,Salary bonus,'\n", 1122 | " 'Career development,Competitive pay,Fertility benefits,Flex vacation,Gear'\n", 1123 | " 'Career development,Conferences,Fitness / gym,Flex hours,Flex vacation'\n", 1124 | " 'Career development,Startup environment,Transparency,,'\n", 1125 | " 'Career development,Flat hierarchy,Startup environment,,'\n", 1126 | " 'Career development,Conferences,Equity,Flex hours,Startup environment'\n", 1127 | " 'Career development,Conferences,Equity,Salary bonus,'\n", 1128 | " 'Career development,Home office stipend,Relocation support,Startup environment,'\n", 1129 | " 'Career development,Flex hours,Parental leave,Startup environment,'\n", 1130 | " 'Career development,Health care,Insurance,Startup environment,Yoga'\n", 1131 | " 'Competitive pay,Flex hours,Gear,,'\n", 1132 | " '401(k) matching,Career development,Equity,Health care,Unlimited paid time off'\n", 1133 | " 'Career development,Competitive pay,Equity,Health care,Salary bonus'\n", 1134 | " '401(k) matching,Career development,Flex hours,Flex vacation,Gear'\n", 1135 | " 'Career development,Competitive pay,Fitness / gym,Flex hours,Health care'\n", 1136 | " 'Equity,Health care,Salary bonus,,'\n", 1137 | " 'Equity,Flex hours,Flex vacation,Parental leave,'\n", 1138 | " 'Career development,Insurance,Parental leave,,'\n", 1139 | " 'Career development,Competitive pay,Equity,Gear,Startup environment'\n", 1140 | " 'Competitive pay,Equity,Health care,Insurance,Medical leave'\n", 1141 | " 'Career development,Flex hours,Flex vacation,Gear,Health care'\n", 1142 | " 'Equity,Startup environment,,,'\n", 1143 | " 'Career development,Flex hours,Home office stipend,Paid sabbatical,Parental leave'\n", 1144 | " 'Startup environment,Wellness,,,'\n", 1145 | " 'Career development,Flex hours,Flex vacation,Health care,Wellness'\n", 1146 | " 'Equity,Salary bonus,Startup environment,,'\n", 1147 | " 'Career development,Competitive pay,Flex hours,Flex vacation,'\n", 1148 | " 'Equity,Fitness / gym,Health care,Insurance,Startup environment'\n", 1149 | " 'Health care,Insurance,Parental leave,Relocation support,'\n", 1150 | " 'Career development,Competitive pay,Equity,Flex hours,Parental leave'\n", 1151 | " 'Career development,Competitive pay,Equity,Fitness / gym,Flex hours'\n", 1152 | " 'Competitive pay,Flex hours,Flex vacation,Salary bonus,'\n", 1153 | " 'Competitive pay,Equity,Startup environment,Team events,'\n", 1154 | " 'Career development,Competitive pay,Conferences,Equity,Flex vacation'\n", 1155 | " 'Competitive pay,Equity,Flex hours,Team events,'\n", 1156 | " 'Flat hierarchy,Flex hours,Startup environment,,'\n", 1157 | " 'Career development,Gear,Home office stipend,Relocation support,Signing bonus'\n", 1158 | " 'Competitive pay,Equity,Fertility benefits,Flex hours,Flex vacation'\n", 1159 | " 'Career development,Health care,Home office stipend,,'\n", 1160 | " 'Flex hours,Flex vacation,Parental leave,Startup environment,'\n", 1161 | " 'Career development,Health care,Medical leave,Startup environment,'\n", 1162 | " 'Career development,Transparency,,,'\n", 1163 | " 'Equity,Health care,Insurance,Relocation support,Salary bonus'\n", 1164 | " 'Health care,Medical leave,,,'\n", 1165 | " '401(k) matching,Career development,Flex vacation,Health care,Medical leave'\n", 1166 | " 'Career development,Flex hours,Snacks / Drinks,Team events,'\n", 1167 | " 'Career development,Equity,Health care,Home office stipend,Salary bonus'\n", 1168 | " 'Competitive pay,Equity,Health care,Wellness,'\n", 1169 | " 'Career development,Flex hours,Flex vacation,Relocation support,'\n", 1170 | " 'Competitive pay,Flex hours,Startup environment,,'\n", 1171 | " 'Career development,Flex vacation,Health care,Insurance,Unlimited paid time off'\n", 1172 | " '401(k) matching,Career development,Fertility benefits,Health care,Insurance'\n", 1173 | " 'Career development,Equity,Lunch / meals,,'\n", 1174 | " '401(k) matching,Health care,Insurance,,'\n", 1175 | " 'Competitive pay,Equity,Health care,Salary bonus,'\n", 1176 | " 'Career development,Competitive pay,Health care,Salary bonus,Unlimited paid time off'\n", 1177 | " 'Career development,Competitive pay,Flex hours,,'\n", 1178 | " 'Career development,Conferences,Flex hours,Flex vacation,Team events'\n", 1179 | " 'Career development,Equity,Flex vacation,,'\n", 1180 | " 'Career development,Equity,Health care,Startup environment,'\n", 1181 | " 'Career development,Competitive pay,Equity,Flat hierarchy,Health care'\n", 1182 | " 'Career development,Flex hours,Flex vacation,Parental leave,Salary bonus'\n", 1183 | " 'Career development,Flex hours,Health care,Startup environment,Team events'\n", 1184 | " 'Career development,Competitive pay,Equity,Fertility benefits,Health care'\n", 1185 | " 'Career development,Health care,Parental leave,Startup environment,'\n", 1186 | " 'Flex hours,Flex vacation,Gear,Pet friendly,Salary bonus'\n", 1187 | " 'Career development,Equity,Gear,Parental leave,Startup environment'\n", 1188 | " 'Career development,Fitness / gym,Flex hours,,'\n", 1189 | " 'Flex vacation,Health care,Insurance,,' 'Health care,Salary bonus,,,'\n", 1190 | " 'Career development,Competitive pay,Conferences,Team events,'\n", 1191 | " 'Health care,Parental leave,Startup environment,,'\n", 1192 | " 'Career development,Equity,Flex vacation,Health care,Startup environment'\n", 1193 | " 'Health care,Salary bonus,Startup environment,,'\n", 1194 | " 'Career development,Equity,Flex hours,Flex vacation,Gear'\n", 1195 | " 'Competitive pay,Team events,,,'\n", 1196 | " 'Career development,Competitive pay,Health care,Medical leave,Startup environment'\n", 1197 | " 'Conferences,Startup environment,,,'\n", 1198 | " 'Career development,Conferences,Insurance,Parental leave,Startup environment'\n", 1199 | " 'Career development,Competitive pay,Fitness / gym,Flex hours,Home office stipend'\n", 1200 | " 'Career development,Competitive pay,Salary bonus,Startup environment,'\n", 1201 | " 'Career development,Parental leave,Startup environment,Wellness,'\n", 1202 | " 'Competitive pay,Health care,Salary bonus,,'\n", 1203 | " '401(k) matching,Career development,Fitness / gym,Flex hours,Flex vacation'\n", 1204 | " '401(k) matching,Career development,Health care,Insurance,Startup environment'\n", 1205 | " 'Equity,Flex vacation,Health care,Insurance,Medical leave'\n", 1206 | " 'Career development,Flex hours,Insurance,Startup environment,'\n", 1207 | " 'Career development,Flex hours,Flex vacation,Gear,Parental leave'\n", 1208 | " 'Career development,Health care,Startup environment,Transparency,'\n", 1209 | " '401(k) matching,Career development,Health care,Insurance,Medical leave'\n", 1210 | " 'Career development,Competitive pay,Health care,Salary bonus,Wellness'\n", 1211 | " 'Career development,Flex hours,Wellness,,'\n", 1212 | " 'Career development,Medical leave,Parental leave,,'\n", 1213 | " '401(k) matching,Career development,Competitive pay,Fitness / gym,Flex vacation'\n", 1214 | " 'Career development,Insurance,Salary bonus,,'\n", 1215 | " 'Flex hours,Health care,Insurance,Team events,'\n", 1216 | " 'Career development,Equity,Health care,Salary bonus,Startup environment'\n", 1217 | " 'Career development,Flex vacation,Health care,Paid sabbatical,Parental leave'\n", 1218 | " 'Career development,Competitive pay,Health care,Medical leave,Parental leave'\n", 1219 | " 'Career development,Fitness / gym,Medical leave,Team events,Wellness'\n", 1220 | " 'Career development,Competitive pay,Fertility benefits,Health care,Insurance'\n", 1221 | " 'Career development,Competitive pay,Health care,Home office stipend,Salary bonus'\n", 1222 | " 'Career development,Equity,Home office stipend,,'\n", 1223 | " 'Flex hours,Flex vacation,Health care,Startup environment,Wellness'\n", 1224 | " 'Career development,Team events,Travel,,'\n", 1225 | " 'Career development,Equity,Health care,Home office stipend,Medical leave'\n", 1226 | " 'Career development,Competitive pay,Health care,Insurance,Wellness'\n", 1227 | " 'Career development,Salary bonus,Team events,,'\n", 1228 | " 'Career development,Startup environment,Team events,Transparency,'\n", 1229 | " 'Career development,Equity,Fitness / gym,Health care,Relocation support'\n", 1230 | " 'Fitness / gym,Flex hours,Health care,Snacks / Drinks,'\n", 1231 | " 'Equity,Medical leave,Salary bonus,,'\n", 1232 | " 'Flex hours,Flex vacation,Health care,Unlimited paid time off,'\n", 1233 | " 'Fitness / gym,Health care,Salary bonus,Team events,'\n", 1234 | " 'Competitive pay,Equity,Snacks / Drinks,Team events,'\n", 1235 | " 'Home office stipend,,,,'\n", 1236 | " 'Career development,Competitive pay,Flex hours,Health care,Startup environment'\n", 1237 | " 'Career development,Fitness / gym,Flex hours,Health care,Snacks / Drinks'\n", 1238 | " 'Medical leave,,,,'\n", 1239 | " 'Career development,Flex hours,Medical leave,Parental leave,Relocation support'\n", 1240 | " 'Career development,Equity,Health care,Parental leave,Wellness'\n", 1241 | " 'Equity,Health care,Insurance,Medical leave,'\n", 1242 | " 'Career development,Fitness / gym,Team events,,'\n", 1243 | " 'Fitness / gym,Flex vacation,Health care,Home office stipend,Unlimited paid time off'\n", 1244 | " 'Career development,Competitive pay,Conferences,Equity,Fertility benefits'\n", 1245 | " 'Career development,Flex hours,Flex vacation,Health care,Paid sabbatical'\n", 1246 | " 'Career development,Insurance,Parental leave,Snacks / Drinks,Startup environment'\n", 1247 | " 'Career development,Flex hours,Salary bonus,Team events,Yoga'\n", 1248 | " 'Career development,Equity,Team events,Wellness,'\n", 1249 | " 'Career development,Insurance,Parental leave,Salary bonus,Snacks / Drinks'\n", 1250 | " 'Equity,Flex vacation,Salary bonus,Startup environment,Team events'\n", 1251 | " 'Career development,Flex hours,Health care,Team events,Transparency'\n", 1252 | " '401(k) matching,Equity,Fertility benefits,Health care,Insurance'\n", 1253 | " 'Career development,Health care,Insurance,Medical leave,'\n", 1254 | " 'Career development,Competitive pay,Conferences,Startup environment,'\n", 1255 | " 'Career development,Conferences,Wellness,,'\n", 1256 | " 'Competitive pay,Flex hours,Flex vacation,Salary bonus,Startup environment'\n", 1257 | " 'Career development,Conferences,Fitness / gym,Flex hours,Health care'\n", 1258 | " 'Career development,Fitness / gym,Health care,Insurance,Salary bonus'\n", 1259 | " 'Flex hours,Flex vacation,Health care,Startup environment,'\n", 1260 | " 'Fitness / gym,Health care,Insurance,Salary bonus,Startup environment'\n", 1261 | " '401(k) matching,Career development,Competitive pay,Equity,Parental leave'\n", 1262 | " 'Competitive pay,Health care,Salary bonus,Wellness,'\n", 1263 | " 'Competitive pay,Equity,Flex vacation,Startup environment,'\n", 1264 | " 'Career development,Equity,Home office stipend,Startup environment,Team events'\n", 1265 | " 'Career development,Fitness / gym,Flex hours,Flex vacation,Home office stipend'\n", 1266 | " 'Career development,Competitive pay,Flex hours,Flex vacation,Pet friendly'\n", 1267 | " 'Competitive pay,Health care,Startup environment,,'\n", 1268 | " 'Career development,Flex hours,Flex vacation,Health care,Pet friendly'\n", 1269 | " 'Career development,Flex vacation,Gear,Health care,Startup environment'\n", 1270 | " 'Career development,Equity,Flex hours,Team events,'\n", 1271 | " 'Career development,Flex hours,Snacks / Drinks,Startup environment,Team events'\n", 1272 | " 'Career development,Flex vacation,Health care,Medical leave,Unlimited paid time off'\n", 1273 | " 'Career development,Equity,Flex hours,Health care,Relocation support'\n", 1274 | " 'Flex vacation,,,,'\n", 1275 | " 'Career development,Conferences,Flex hours,Health care,Medical leave'\n", 1276 | " 'Career development,Signing bonus,,,'\n", 1277 | " 'Career development,Fertility benefits,Fitness / gym,Health care,Insurance'\n", 1278 | " 'Career development,Equity,Flex hours,Insurance,Parental leave'\n", 1279 | " 'Flex vacation,Startup environment,Team events,,'\n", 1280 | " 'Equity,Flex vacation,Health care,Team events,Unlimited paid time off'\n", 1281 | " 'Yoga,,,,' 'Competitive pay,Flat hierarchy,Flex hours,,'\n", 1282 | " 'Career development,Health care,Salary bonus,Team events,Transparency'\n", 1283 | " 'Career development,Conferences,Fitness / gym,Team events,'\n", 1284 | " '401(k) matching,Career development,Conferences,Fitness / gym,Flex vacation'\n", 1285 | " '401(k) matching,Flex vacation,Health care,Unlimited paid time off,'\n", 1286 | " 'Career development,Health care,Home office stipend,Startup environment,Team events'\n", 1287 | " 'Career development,Flex hours,Flex vacation,Parental leave,Snacks / Drinks'\n", 1288 | " 'Flex hours,Flex vacation,Startup environment,,'\n", 1289 | " '401(k) matching,Equity,Health care,Salary bonus,Unlimited paid time off'\n", 1290 | " 'Career development,Flex hours,Medical leave,,'\n", 1291 | " 'Career development,Equity,Health care,Medical leave,Parental leave'\n", 1292 | " '401(k) matching,Equity,Health care,Home office stipend,Unlimited paid time off'\n", 1293 | " 'Career development,Fitness / gym,Health care,Lunch / meals,Startup environment'\n", 1294 | " 'Career development,Equity,Team events,Travel,'\n", 1295 | " 'Career development,Competitive pay,Equity,Health care,Lunch / meals'\n", 1296 | " 'Medical leave,Salary bonus,,,'\n", 1297 | " 'Career development,Competitive pay,Fitness / gym,Health care,Salary bonus'\n", 1298 | " 'Career development,Flex hours,Startup environment,Travel,'\n", 1299 | " '401(k) matching,Career development,Equity,Fitness / gym,Health care'\n", 1300 | " 'Competitive pay,Insurance,Team events,,'\n", 1301 | " 'Career development,Competitive pay,Health care,Salary bonus,Startup environment'\n", 1302 | " '401(k) matching,Flex hours,Flex vacation,Health care,Insurance'\n", 1303 | " 'Career development,Equity,Medical leave,Startup environment,'\n", 1304 | " 'Career development,Cell phone stipend,Competitive pay,Equity,Fertility benefits'\n", 1305 | " '401(k) matching,Career development,Competitive pay,Health care,Lunch / meals'\n", 1306 | " 'Career development,Flex vacation,Gear,Health care,Home office stipend'\n", 1307 | " 'Career development,Insurance,Parental leave,Salary bonus,'\n", 1308 | " 'Career development,Flex hours,Medical leave,Parental leave,Startup environment'\n", 1309 | " 'Career development,Flex vacation,Health care,Insurance,'\n", 1310 | " 'Competitive pay,Equity,Flex hours,Flex vacation,Parental leave'\n", 1311 | " 'Career development,Competitive pay,Conferences,Health care,Insurance'\n", 1312 | " 'Career development,Equity,Home office stipend,Relocation support,Startup environment'\n", 1313 | " 'Career development,Gear,,,'\n", 1314 | " 'Career development,Fertility benefits,Parental leave,,'\n", 1315 | " 'Flex hours,Flex vacation,Team events,,'\n", 1316 | " 'Career development,Health care,Medical leave,Wellness,'\n", 1317 | " 'Fitness / gym,Health care,Insurance,Salary bonus,'\n", 1318 | " 'Flex hours,Health care,,,'\n", 1319 | " 'Career development,Competitive pay,Equity,Relocation support,Salary bonus'\n", 1320 | " 'Career development,Competitive pay,Health care,Insurance,Salary bonus'\n", 1321 | " 'Career development,Competitive pay,Flex vacation,Health care,Medical leave'\n", 1322 | " 'Career development,Competitive pay,Flex hours,Gear,Health care'\n", 1323 | " 'Career development,Equity,Fitness / gym,Health care,Insurance'\n", 1324 | " 'Equity,Flex hours,Flex vacation,Home office stipend,Salary bonus'\n", 1325 | " 'Career development,Conferences,Salary bonus,,'\n", 1326 | " 'Career development,Conferences,Flex vacation,,'\n", 1327 | " 'Fitness / gym,Health care,Medical leave,Salary bonus,'\n", 1328 | " 'Career development,Competitive pay,Equity,Salary bonus,Startup environment'\n", 1329 | " 'Flex hours,Medical leave,Salary bonus,Startup environment,Team events'\n", 1330 | " 'Competitive pay,Gear,Health care,Team events,'\n", 1331 | " 'Competitive pay,Flex hours,Gear,Team events,'\n", 1332 | " 'Career development,Competitive pay,Conferences,Equity,'\n", 1333 | " 'Equity,Gear,Health care,Salary bonus,Startup environment'\n", 1334 | " 'Flex hours,Health care,Home office stipend,Salary bonus,'\n", 1335 | " '401(k) matching,Career development,Equity,Health care,'\n", 1336 | " 'Competitive pay,Flex vacation,Team events,Unlimited paid time off,'\n", 1337 | " '401(k) matching,Career development,Competitive pay,Equity,Gear'\n", 1338 | " 'Equity,Flex hours,Team events,Yoga,'\n", 1339 | " '401(k) matching,Career development,Competitive pay,Fitness / gym,Health care'\n", 1340 | " 'Career development,Conferences,Flex hours,Health care,Home office stipend'\n", 1341 | " 'Career development,Competitive pay,Gear,Relocation support,Transparency'\n", 1342 | " 'Career development,Equity,Flex hours,Salary bonus,Yoga'\n", 1343 | " 'Career development,Flex vacation,Health care,Insurance,Salary bonus'\n", 1344 | " 'Career development,Competitive pay,Health care,Medical leave,Pet friendly'\n", 1345 | " 'Career development,Competitive pay,Equity,Flex hours,Insurance'\n", 1346 | " 'Career development,Competitive pay,Equity,Health care,'\n", 1347 | " 'Competitive pay,Equity,Health care,Parental leave,Startup environment'\n", 1348 | " 'Career development,Startup environment,Contract,,'\n", 1349 | " 'Career development,Flex hours,Pet friendly,Salary bonus,'\n", 1350 | " '401(k) matching,Career development,Equity,Health care,Home office stipend'\n", 1351 | " 'Career development,Parental leave,Startup environment,Transparency,'\n", 1352 | " 'Career development,Competitive pay,Equity,Flex hours,Flexible spending account'\n", 1353 | " 'Home office stipend,Team events,,,'\n", 1354 | " '401(k) matching,Competitive pay,Equity,Health care,'\n", 1355 | " 'Career development,Flex hours,Flex vacation,Insurance,Medical leave'\n", 1356 | " '401(k) matching,Career development,Competitive pay,Parental leave,Salary bonus'\n", 1357 | " 'Career development,Equity,Health care,Medical leave,'\n", 1358 | " '401(k) matching,Career development,Competitive pay,Equity,Fitness / gym'\n", 1359 | " 'Competitive pay,Equity,Unlimited paid time off,,'\n", 1360 | " 'Career development,Competitive pay,Flex hours,Health care,Insurance'\n", 1361 | " 'Career development,Competitive pay,Medical leave,Relocation support,'\n", 1362 | " 'Flex hours,Medical leave,Parental leave,,'\n", 1363 | " '401(k) matching,Equity,Flex hours,Salary bonus,Team events'\n", 1364 | " 'Fitness / gym,Health care,Insurance,Medical leave,'\n", 1365 | " 'Career development,Flex hours,Health care,Parental leave,Salary bonus'\n", 1366 | " 'Career development,Gear,Health care,Lunch / meals,Salary bonus'\n", 1367 | " 'Career development,Competitive pay,Flex hours,Health care,'\n", 1368 | " 'Equity,Health care,Parental leave,Startup environment,'\n", 1369 | " 'Equity,Flex hours,Home office stipend,Startup environment,Team events'\n", 1370 | " 'Career development,Cell phone stipend,Equity,Fitness / gym,Flex hours'\n", 1371 | " 'Flex hours,,Freelance,,' 'Career development,Snacks / Drinks,Wellness,,'\n", 1372 | " 'Equity,Flex hours,Team events,,'\n", 1373 | " 'Career development,Insurance,Salary bonus,Transparency,'\n", 1374 | " 'Career development,Competitive pay,Health care,Parental leave,Salary bonus'\n", 1375 | " 'Career development,Flex hours,Flex vacation,Health care,Unlimited paid time off'\n", 1376 | " 'Career development,Equity,Fitness / gym,Health care,Home office stipend'\n", 1377 | " 'Career development,Fitness / gym,Flex hours,Health care,Home office stipend'\n", 1378 | " 'Equity,Flex hours,Health care,Insurance,'\n", 1379 | " 'Equity,Flex hours,Salary bonus,Startup environment,Team events'\n", 1380 | " 'Career development,Competitive pay,Fertility benefits,Health care,Medical leave'\n", 1381 | " 'Career development,Fertility benefits,Parental leave,Startup environment,'\n", 1382 | " 'Career development,Flex hours,Health care,Home office stipend,Salary bonus'\n", 1383 | " 'Fitness / gym,Startup environment,Team events,,'\n", 1384 | " 'Competitive pay,Equity,Health care,Salary bonus,Wellness'\n", 1385 | " 'Flex hours,Health care,Insurance,Medical leave,Team events'\n", 1386 | " 'Career development,Conferences,Flex hours,Salary bonus,Team events'\n", 1387 | " 'Career development,Competitive pay,Conferences,Health care,Startup environment'\n", 1388 | " 'Career development,Flex hours,Health care,Medical leave,'\n", 1389 | " 'Competitive pay,Equity,Salary bonus,Startup environment,Transparency'\n", 1390 | " '401(k) matching,Career development,Competitive pay,Health care,Medical leave'\n", 1391 | " 'Career development,Conferences,Flex vacation,Health care,'\n", 1392 | " 'Career development,Conferences,Flex hours,Health care,Team events'\n", 1393 | " 'Flat hierarchy,,,,'\n", 1394 | " 'Career development,Flex vacation,Relocation support,Salary bonus,'\n", 1395 | " 'Career development,Equity,Flat hierarchy,Gear,Signing bonus'\n", 1396 | " '401(k) matching,Competitive pay,Equity,Gear,'\n", 1397 | " 'Competitive pay,Flex hours,Salary bonus,Startup environment,'\n", 1398 | " 'Career development,Equity,Fertility benefits,Flex vacation,Health care'\n", 1399 | " 'Career development,Startup environment,Yoga,,'\n", 1400 | " '401(k) matching,Career development,Health care,Insurance,'\n", 1401 | " 'Gear,Home office stipend,Startup environment,,'\n", 1402 | " 'Flex hours,Salary bonus,Startup environment,Team events,Yoga'\n", 1403 | " '401(k) matching,Career development,Equity,Flex hours,Health care'\n", 1404 | " 'Career development,Flex hours,Gear,Health care,Parental leave'\n", 1405 | " 'Career development,Relocation support,Startup environment,Team events,'\n", 1406 | " 'Career development,Equity,Flex hours,Flex vacation,Medical leave'\n", 1407 | " '401(k) matching,Competitive pay,Equity,Flex hours,Health care'\n", 1408 | " 'Career development,Health care,Insurance,Team events,'\n", 1409 | " 'Career development,Fertility benefits,Flex hours,Flex vacation,Health care'\n", 1410 | " '401(k) matching,Flex vacation,Health care,Medical leave,Parental leave'\n", 1411 | " 'Career development,Competitive pay,Equity,Home office stipend,'\n", 1412 | " 'Competitive pay,Equity,Startup environment,,'\n", 1413 | " 'Career development,Flex vacation,Health care,Parental leave,Startup environment'\n", 1414 | " 'Career development,Flex hours,Flex vacation,Relocation support,Startup environment'\n", 1415 | " 'Competitive pay,Equity,Team events,Unlimited paid time off,Wellness'\n", 1416 | " '401(k) matching,Career development,Equity,Fertility benefits,Gear'\n", 1417 | " 'Career development,Competitive pay,Gear,Home office stipend,Travel'\n", 1418 | " 'Competitive pay,Home office stipend,,,'\n", 1419 | " 'Career development,Health care,Parental leave,,'\n", 1420 | " 'Career development,Competitive pay,Flat hierarchy,Flex hours,Relocation support'\n", 1421 | " '401(k) matching,Career development,Equity,Insurance,Parental leave'\n", 1422 | " 'Health care,Pet friendly,Team events,,'\n", 1423 | " 'Equity,Flex hours,Flex vacation,Gear,Health care'\n", 1424 | " '401(k) matching,Health care,Medical leave,Parental leave,'\n", 1425 | " 'Career development,Competitive pay,Salary bonus,Team events,'\n", 1426 | " 'Flex hours,Health care,Insurance,Parental leave,'\n", 1427 | " 'Flex hours,Health care,Insurance,Parental leave,Startup environment'\n", 1428 | " 'Career development,Equity,Health care,Insurance,Team events'\n", 1429 | " 'Flex vacation,Relocation support,Team events,,'\n", 1430 | " 'Career development,Competitive pay,Health care,Unlimited paid time off,'\n", 1431 | " '401(k) matching,Career development,Competitive pay,Health care,Startup environment'\n", 1432 | " '401(k) matching,Equity,Insurance,Parental leave,Wellness'\n", 1433 | " 'Career development,Salary bonus,Startup environment,,'\n", 1434 | " '401(k) matching,Career development,Equity,Health care,Salary bonus'\n", 1435 | " 'Competitive pay,Equity,Health care,Parental leave,Team events'\n", 1436 | " 'Health care,Medical leave,Team events,,' 'Team events,Travel,,,'\n", 1437 | " 'Career development,Equity,Flex hours,Startup environment,Team events'\n", 1438 | " 'Flex hours,Flex vacation,Health care,Medical leave,Parental leave'\n", 1439 | " 'Competitive pay,Equity,Salary bonus,Team events,Unlimited paid time off'\n", 1440 | " 'Career development,Flex vacation,Health care,Parental leave,'\n", 1441 | " 'Career development,Competitive pay,Flex hours,Flexible spending account,Flex vacation'\n", 1442 | " 'Career development,Competitive pay,Flex hours,Health care,Medical leave'\n", 1443 | " 'Unlimited paid time off,,,,'\n", 1444 | " 'Career development,Fitness / gym,Flex vacation,Health care,Medical leave'\n", 1445 | " '401(k) matching,Competitive pay,Equity,Flex hours,Flexible spending account'\n", 1446 | " 'Career development,Competitive pay,Flex vacation,,'\n", 1447 | " 'Career development,Competitive pay,Conferences,Flex vacation,Health care'\n", 1448 | " 'Career development,Flex hours,Flex vacation,Health care,Salary bonus'\n", 1449 | " '401(k) matching,Health care,Salary bonus,,'\n", 1450 | " 'Career development,Health care,Insurance,Startup environment,'\n", 1451 | " 'Career development,Equity,Flex hours,Yoga,'\n", 1452 | " 'Conferences,Salary bonus,,,' 'Career development,Equity,Insurance,,'\n", 1453 | " '401(k) matching,Career development,Flex vacation,Health care,Insurance'\n", 1454 | " 'Flex vacation,Health care,Parental leave,Startup environment,'\n", 1455 | " 'Career development,Competitive pay,Conferences,Flex hours,'\n", 1456 | " '401(k) matching,Career development,Conferences,Health care,'\n", 1457 | " 'Career development,Competitive pay,Flex vacation,Startup environment,'\n", 1458 | " 'Career development,Flex hours,Flex vacation,Home office stipend,Transparency'\n", 1459 | " 'Career development,Fitness / gym,Pet friendly,Startup environment,Unlimited paid time off'\n", 1460 | " 'Career development,Flex hours,Pet friendly,Team events,'\n", 1461 | " 'Career development,Equity,Flex hours,Insurance,Wellness'\n", 1462 | " 'Parental leave,,,,'\n", 1463 | " 'Competitive pay,Flex hours,Relocation support,Startup environment,'\n", 1464 | " '401(k) matching,Career development,Competitive pay,Conferences,Flex hours'\n", 1465 | " 'Career development,Competitive pay,Medical leave,Startup environment,'\n", 1466 | " 'Competitive pay,Flex hours,Transparency,,'\n", 1467 | " 'Career development,Conferences,Flex hours,Health care,Insurance'\n", 1468 | " 'Career development,Competitive pay,Equity,Flex vacation,Relocation support'\n", 1469 | " 'Career development,Conferences,Fitness / gym,Health care,Insurance'\n", 1470 | " '401(k) matching,Career development,Conferences,Health care,Insurance'\n", 1471 | " 'Career development,Competitive pay,Health care,Salary bonus,Team events'\n", 1472 | " 'Career development,Equity,Fitness / gym,Gear,Home office stipend'\n", 1473 | " 'Salary bonus,Team events,,,'\n", 1474 | " 'Competitive pay,Health care,Lunch / meals,Wellness,'\n", 1475 | " 'Health care,Startup environment,Team events,Wellness,'\n", 1476 | " 'Career development,Equity,Fitness / gym,Gear,Relocation support'\n", 1477 | " 'Competitive pay,Equity,Flex hours,Flex vacation,Salary bonus'\n", 1478 | " 'Equity,Flex vacation,,,'\n", 1479 | " 'Competitive pay,Flex hours,Startup environment,Team events,'\n", 1480 | " 'Career development,Flex hours,Health care,Relocation support,Salary bonus'\n", 1481 | " 'Fitness / gym,Flex hours,Flex vacation,Health care,Salary bonus'\n", 1482 | " '401(k) matching,Health care,Startup environment,,'\n", 1483 | " 'Career development,Flex hours,Health care,Insurance,Parental leave'\n", 1484 | " 'Career development,Gear,Lunch / meals,Salary bonus,Team events'\n", 1485 | " 'Flex hours,Team events,Wellness,,'\n", 1486 | " '401(k) matching,Career development,Equity,Fitness / gym,Flex hours'\n", 1487 | " 'Career development,Equity,Flex hours,Startup environment,Yoga'\n", 1488 | " 'Career development,Conferences,Relocation support,Salary bonus,Team events'\n", 1489 | " 'Career development,Equity,Flex hours,Gear,Health care'\n", 1490 | " 'Competitive pay,Salary bonus,,,'\n", 1491 | " 'Career development,Flex hours,Gear,Health care,Home office stipend'\n", 1492 | " 'Career development,Competitive pay,Health care,Home office stipend,Unlimited paid time off'\n", 1493 | " 'Career development,Conferences,Equity,Flex hours,'\n", 1494 | " 'Equity,Health care,Startup environment,Team events,'\n", 1495 | " 'Health care,Insurance,Parental leave,Salary bonus,'\n", 1496 | " 'Career development,Competitive pay,Flex hours,Salary bonus,Transparency'\n", 1497 | " '401(k) matching,Flex hours,Flex vacation,Health care,Startup environment']\n" 1498 | ] 1499 | } 1500 | ], 1501 | "source": [ 1502 | "print(len(dataFrame[\"Facilities\"].unique()),\" \",dataFrame[\"Facilities\"].unique())" 1503 | ] 1504 | }, 1505 | { 1506 | "cell_type": "markdown", 1507 | "metadata": {}, 1508 | "source": [ 1509 | "\n", 1510 | "On essaie d'afficher les premières lignes de notre dataset pour juste connaître sa forme.\n", 1511 | "" 1524 | ] 1525 | }, 1526 | { 1527 | "cell_type": "markdown", 1528 | "metadata": {}, 1529 | "source": [ 1530 | "### language check" 1531 | ] 1532 | }, 1533 | { 1534 | "cell_type": "markdown", 1535 | "metadata": {}, 1536 | "source": [ 1537 | "other languages existence in the df." 1538 | ] 1539 | }, 1540 | { 1541 | "cell_type": "code", 1542 | "execution_count": 21, 1543 | "metadata": {}, 1544 | "outputs": [], 1545 | "source": [ 1546 | "def detect_language_with_langdetect(line): \n", 1547 | " from langdetect import detect_langs\n", 1548 | " try: \n", 1549 | " langs = detect_langs(line) \n", 1550 | " for item in langs: \n", 1551 | " # The first one returned is usually the one that has the highest probability\n", 1552 | " return item.lang\n", 1553 | " except: return \"err\"\n" 1554 | ] 1555 | }, 1556 | { 1557 | "cell_type": "code", 1558 | "execution_count": 22, 1559 | "metadata": {}, 1560 | "outputs": [], 1561 | "source": [ 1562 | "prob_lang=list(map(detect_language_with_langdetect,dataFrame['Job Title'].to_list()))" 1563 | ] 1564 | }, 1565 | { 1566 | "cell_type": "code", 1567 | "execution_count": 23, 1568 | "metadata": {}, 1569 | "outputs": [], 1570 | "source": [ 1571 | "unique_langs=set(prob_lang)" 1572 | ] 1573 | }, 1574 | { 1575 | "cell_type": "code", 1576 | "execution_count": 24, 1577 | "metadata": {}, 1578 | "outputs": [ 1579 | { 1580 | "data": { 1581 | "text/plain": [ 1582 | "{'af',\n", 1583 | " 'ca',\n", 1584 | " 'da',\n", 1585 | " 'de',\n", 1586 | " 'en',\n", 1587 | " 'err',\n", 1588 | " 'es',\n", 1589 | " 'et',\n", 1590 | " 'fi',\n", 1591 | " 'fr',\n", 1592 | " 'id',\n", 1593 | " 'it',\n", 1594 | " 'lt',\n", 1595 | " 'nl',\n", 1596 | " 'no',\n", 1597 | " 'pl',\n", 1598 | " 'pt',\n", 1599 | " 'ro',\n", 1600 | " 'sl',\n", 1601 | " 'sv',\n", 1602 | " 'tl',\n", 1603 | " 'tr'}" 1604 | ] 1605 | }, 1606 | "execution_count": 24, 1607 | "metadata": {}, 1608 | "output_type": "execute_result" 1609 | } 1610 | ], 1611 | "source": [ 1612 | "unique_langs" 1613 | ] 1614 | }, 1615 | { 1616 | "cell_type": "code", 1617 | "execution_count": 25, 1618 | "metadata": {}, 1619 | "outputs": [ 1620 | { 1621 | "name": "stdout", 1622 | "output_type": "stream", 1623 | "text": [ 1624 | "English: 64.88%, Other: 35.12%\n" 1625 | ] 1626 | } 1627 | ], 1628 | "source": [ 1629 | "import pandas as pd\n", 1630 | "import langdetect\n", 1631 | "import re\n", 1632 | "\n", 1633 | "\n", 1634 | "\n", 1635 | "def remove_emoji(text):\n", 1636 | " emoji_pattern = re.compile(\"[\"\n", 1637 | " u\"\\U0001F600-\\U0001F64F\" # emoticons\n", 1638 | " u\"\\U0001F300-\\U0001F5FF\" # symbols & pictographs\n", 1639 | " u\"\\U0001F680-\\U0001F6FF\" # transport & map symbols\n", 1640 | " u\"\\U0001F1E0-\\U0001F1FF\" # flags (iOS)\n", 1641 | " \"]+\", flags=re.UNICODE)\n", 1642 | " return emoji_pattern.sub(r'', text)\n", 1643 | "\n", 1644 | "def is_english(text):\n", 1645 | " if not isinstance(text, str):\n", 1646 | " return False\n", 1647 | " try:\n", 1648 | " text = remove_emoji(text)\n", 1649 | " lang = langdetect.detect(text)\n", 1650 | " return lang == 'en'\n", 1651 | " except langdetect.LangDetectException:\n", 1652 | " return False\n", 1653 | "\n", 1654 | "# Apply the function to create a new column\n", 1655 | "dataFrame['Is English'] = dataFrame['Job Title'].apply(is_english)\n", 1656 | "\n", 1657 | "# Calculate counts\n", 1658 | "english_count = dataFrame['Is English'].sum()\n", 1659 | "total_count = len(dataFrame)\n", 1660 | "other_count = total_count - english_count\n", 1661 | "\n", 1662 | "# Calculate percentages\n", 1663 | "english_percentage = english_count / total_count * 100\n", 1664 | "other_percentage = other_count / total_count * 100\n", 1665 | "\n", 1666 | "print(f\"English: {english_percentage:.2f}%, Other: {other_percentage:.2f}%\")\n" 1667 | ] 1668 | }, 1669 | { 1670 | "cell_type": "markdown", 1671 | "metadata": {}, 1672 | "source": [ 1673 | "# Data Cleaning" 1674 | ] 1675 | }, 1676 | { 1677 | "cell_type": "code", 1678 | "execution_count": 26, 1679 | "metadata": {}, 1680 | "outputs": [ 1681 | { 1682 | "name": "stdout", 1683 | "output_type": "stream", 1684 | "text": [ 1685 | "list of unique Salary : ['GBP 80K+', 'GBP 65K+', 'GBP 60K+', 'GBP 55K+', 'GBP 55K', 'GBP 54K+', 'GBP 51K+', 'GBP 50K+', 'GBP 45K+', 'GBP 42K+', 'GBP 35K', 'EUR 81K', 'EUR 80K+', 'EUR 60K+', 'EUR 36K+', 'EUR 130K+', ' 99K+', ' 98K+', ' 97K+', ' 96K+ *', ' 96K+', ' 95K+ *', ' 95K+', ' 94K+', ' 93K+', ' 92K+ *', ' 90K+ *', ' 90K+', ' 89K+ *', ' 86K+', ' 85K+', ' 84K+', ' 83K+', ' 82K+', ' 81K+ *', ' 81K+', ' 80K+ *', ' 80K+', ' 79K+', ' 78K+', ' 77K+ *', ' 76K+', ' 75K+ *', ' 75K+', ' 74K+ *', ' 74K+', ' 73K+ *', ' 73K+', ' 72K+', ' 71K+', ' 70K+ *', ' 70K+', ' 69K+ *', ' 68K+', ' 67K+', ' 66K+ *', ' 66K+', ' 65K+ *', ' 65K+', ' 63K+ *', ' 63K+', ' 62K+ *', ' 61K+ *', ' 60K+ *', ' 60K+', ' 59K+ *', ' 59K+', ' 57K+ *', ' 56K+ *', ' 55K+ *', ' 55K+', ' 54K+ *', ' 52K+', ' 51K+ *', ' 51K+', ' 50K+ *', ' 50K+', ' 49K+ *', ' 48K+ *', ' 45K+ *', ' 45K+', ' 44K+ *', ' 43K+', ' 42K+ *', ' 40K+ *', ' 40K+', ' 39K+ *', ' 36K+ *', ' 35K+ *', ' 33K+ *', ' 31K+ *', ' 315K+', ' 310K+', ' 30K+ *', ' 295K+', ' 283K+', ' 267K+', ' 253K+', ' 245K+', ' 236K+', ' 235K+', ' 234K+', ' 230K+', ' 227K+', ' 225K+', ' 224K+', ' 220K+', ' 218K+', ' 214K+', ' 207K+', ' 205K+', ' 204K+', ' 202K+', ' 200K+ *', ' 200K+', ' 199K+', ' 197K+', ' 196K+', ' 195K+', ' 193K+', ' 190K+', ' 189K+', ' 187K+', ' 185K+', ' 184K+ *', ' 184K+', ' 183K+', ' 182K+', ' 180K+', ' 179K+', ' 178K+', ' 177K+', ' 176K+', ' 175K+', ' 174K+', ' 173K+', ' 172K+', ' 171K+', ' 170K+', ' 168K+', ' 167K+', ' 166K+', ' 165K+', ' 164K+', ' 163K+', ' 161K+', ' 160K+', ' 159K+', ' 158K+', ' 157K+', ' 156K+', ' 155K+ *', ' 155K+', ' 154K+', ' 153K+', ' 152K+', ' 151K+', ' 150K+', ' 149K+', ' 148K+', ' 147K+', ' 146K+', ' 145K+', ' 144K+ *', ' 144K+', ' 143K+', ' 142K+', ' 141K+ *', ' 141K+', ' 140K+', ' 139K+', ' 138K+', ' 136K+', ' 135K+ *', ' 135K+', ' 134K+', ' 133K+', ' 132K+', ' 131K+ *', ' 131K+', ' 130K+', ' 129K+ *', ' 129K+', ' 128K+', ' 127K+', ' 126K+', ' 125K+', ' 124K+', ' 123K+', ' 122K+ *', ' 122K+', ' 121K+', ' 120K+ *', ' 120K+', ' 119K+', ' 117K+', ' 116K+', ' 115K+ *', ' 115K+', ' 113K+', ' 112K+', ' 111K+', ' 110K+ *', ' 110K+', ' 109K+ *', ' 109K+', ' 108K+', ' 107K+', ' 106K+', ' 105K+ *', ' 105K+', ' 104K+', ' 103K+ *', ' 103K+', ' 102K+ *', ' 102K+', ' 100K+ *', ' 100K+', nan]\n" 1686 | ] 1687 | } 1688 | ], 1689 | "source": [ 1690 | "print(\"list of unique Salary :\",dataFrame[\"Salary\"].sort_values(ascending=False).unique().tolist())" 1691 | ] 1692 | }, 1693 | { 1694 | "cell_type": "markdown", 1695 | "metadata": {}, 1696 | "source": [ 1697 | "## Duplicates" 1698 | ] 1699 | }, 1700 | { 1701 | "cell_type": "code", 1702 | "execution_count": 30, 1703 | "metadata": {}, 1704 | "outputs": [ 1705 | { 1706 | "data": { 1707 | "text/plain": [ 1708 | "0" 1709 | ] 1710 | }, 1711 | "execution_count": 30, 1712 | "metadata": {}, 1713 | "output_type": "execute_result" 1714 | } 1715 | ], 1716 | "source": [ 1717 | "# delete and check of duplicates :\n", 1718 | "dataFrame.drop_duplicates(inplace=True)\n", 1719 | "dataFrame.duplicated().sum()" 1720 | ] 1721 | }, 1722 | { 1723 | "cell_type": "markdown", 1724 | "metadata": {}, 1725 | "source": [ 1726 | "## Handling Missing Values" 1727 | ] 1728 | }, 1729 | { 1730 | "cell_type": "markdown", 1731 | "metadata": {}, 1732 | "source": [ 1733 | "### Salary" 1734 | ] 1735 | }, 1736 | { 1737 | "cell_type": "code", 1738 | "execution_count": 48, 1739 | "metadata": {}, 1740 | "outputs": [ 1741 | { 1742 | "name": "stdout", 1743 | "output_type": "stream", 1744 | "text": [ 1745 | "Number of messing values in the salary : 175\n" 1746 | ] 1747 | } 1748 | ], 1749 | "source": [ 1750 | "print(\"Number of messing values in the salary :\",dataFrame[dataFrame[\"Salary\"].isna()].shape[0])" 1751 | ] 1752 | }, 1753 | { 1754 | "cell_type": "code", 1755 | "execution_count": 43, 1756 | "metadata": {}, 1757 | "outputs": [ 1758 | { 1759 | "data": { 1760 | "text/html": [ 1761 | "
\n", 1762 | "\n", 1775 | "\n", 1776 | " \n", 1777 | " \n", 1778 | " \n", 1779 | " \n", 1780 | " \n", 1781 | " \n", 1782 | " \n", 1783 | " \n", 1784 | " \n", 1785 | " \n", 1786 | " \n", 1787 | " \n", 1788 | " \n", 1789 | " \n", 1790 | " \n", 1791 | " \n", 1792 | " \n", 1793 | " \n", 1794 | " \n", 1795 | " \n", 1796 | " \n", 1797 | " \n", 1798 | " \n", 1799 | " \n", 1800 | " \n", 1801 | " \n", 1802 | " \n", 1803 | " \n", 1804 | " \n", 1805 | " \n", 1806 | " \n", 1807 | " \n", 1808 | " \n", 1809 | " \n", 1810 | " \n", 1811 | " \n", 1812 | " \n", 1813 | " \n", 1814 | " \n", 1815 | " \n", 1816 | " \n", 1817 | " \n", 1818 | " \n", 1819 | " \n", 1820 | " \n", 1821 | " \n", 1822 | " \n", 1823 | " \n", 1824 | " \n", 1825 | " \n", 1826 | " \n", 1827 | " \n", 1828 | " \n", 1829 | " \n", 1830 | " \n", 1831 | " \n", 1832 | " \n", 1833 | " \n", 1834 | " \n", 1835 | " \n", 1836 | " \n", 1837 | " \n", 1838 | " \n", 1839 | " \n", 1840 | " \n", 1841 | " \n", 1842 | " \n", 1843 | " \n", 1844 | " \n", 1845 | " \n", 1846 | " \n", 1847 | " \n", 1848 | " \n", 1849 | " \n", 1850 | " \n", 1851 | " \n", 1852 | " \n", 1853 | " \n", 1854 | " \n", 1855 | " \n", 1856 | " \n", 1857 | " \n", 1858 | " \n", 1859 | " \n", 1860 | " \n", 1861 | " \n", 1862 | " \n", 1863 | " \n", 1864 | " \n", 1865 | " \n", 1866 | " \n", 1867 | " \n", 1868 | " \n", 1869 | " \n", 1870 | " \n", 1871 | " \n", 1872 | " \n", 1873 | " \n", 1874 | " \n", 1875 | " \n", 1876 | " \n", 1877 | " \n", 1878 | " \n", 1879 | " \n", 1880 | " \n", 1881 | " \n", 1882 | " \n", 1883 | " \n", 1884 | " \n", 1885 | " \n", 1886 | " \n", 1887 | " \n", 1888 | " \n", 1889 | " \n", 1890 | " \n", 1891 | " \n", 1892 | " \n", 1893 | " \n", 1894 | " \n", 1895 | " \n", 1896 | " \n", 1897 | " \n", 1898 | " \n", 1899 | " \n", 1900 | " \n", 1901 | " \n", 1902 | " \n", 1903 | " \n", 1904 | " \n", 1905 | " \n", 1906 | " \n", 1907 | " \n", 1908 | " \n", 1909 | " \n", 1910 | " \n", 1911 | " \n", 1912 | " \n", 1913 | " \n", 1914 | " \n", 1915 | " \n", 1916 | " \n", 1917 | " \n", 1918 | " \n", 1919 | " \n", 1920 | " \n", 1921 | " \n", 1922 | " \n", 1923 | " \n", 1924 | "
CompanyJob TitleLocationJob TypeExperience levelSalaryRequirment of the companyFacilitiesIs English
7NielsenIQIntern (Business Intelligence Service Support)Bangkok, ThailandInternshipEntry-levelNaNBusiness Intelligence,Excel,Genetics,,,,,,,True
8Western DigitalSummer 2023 Data Engineering InternSan Jose, CA, United StatesInternshipEntry-levelNaNBig Data,Computer Science,Engineering,Machine ...Career development,Competitive pay,Equity,Flex...False
44REWE International Dienstleistungsgesellschaft...Junior Data Science Engineer (m/w/x)Wien, AustriaFull TimeEntry-levelNaNCI/CD,Computer Science,Data pipelines,Deep Lea...,,,,True
75MetioraData Analyst InternMadrid, SpainFull TimeEntry-levelNaNMatplotlib,MongoDB,NumPy,Pandas,Power BI,Python,,,,True
170WallboxAnalytics Engineer InternBarcelona, Catalonia, SpainInternshipEntry-levelNaNAirflow,BigQuery,CI/CD,Databricks,Data quality...Career development,Flex hours,Team events,,True
..............................
3107BarbaricumAI Intern (ChatGPT Specialist)RemoteInternshipEntry-levelNaNAPIs,ChatGPT,Engineering,GPT,GPT-3,GPT-4Career development,,,,True
3109METRO/MAKROSTAGE 6 mois - Data Scientist Junior H/FNanterre, FranceFull TimeEntry-levelNaNBig Data,Power BI,Python,R,SQL,,,,,True
3134Junglee GamesETL and Data Warehouse Testing InternBengaluru, Karnataka, IndiaInternshipEntry-levelNaNComputer Science,Data quality,Data warehouse,E...,,,,True
3152LelyStage: Computer Science, Robotics, Computer Vi...Maassluis, NetherlandsFull TimeEntry-levelNaNComputer Science,Computer Vision,Engineering,O...,,,,True
3159DeezerData Analyst Intern m/f/d - BusinessParis, FranceInternshipEntry-levelNaNData analysis,Data pipelines,Data visualizatio...Career development,Health care,Insurance,Start...True
\n", 1925 | "

114 rows × 9 columns

\n", 1926 | "
" 1927 | ], 1928 | "text/plain": [ 1929 | " Company \\\n", 1930 | "7 NielsenIQ \n", 1931 | "8 Western Digital \n", 1932 | "44 REWE International Dienstleistungsgesellschaft... \n", 1933 | "75 Metiora \n", 1934 | "170 Wallbox \n", 1935 | "... ... \n", 1936 | "3107 Barbaricum \n", 1937 | "3109 METRO/MAKRO \n", 1938 | "3134 Junglee Games \n", 1939 | "3152 Lely \n", 1940 | "3159 Deezer \n", 1941 | "\n", 1942 | " Job Title \\\n", 1943 | "7 Intern (Business Intelligence Service Support) \n", 1944 | "8 Summer 2023 Data Engineering Intern \n", 1945 | "44 Junior Data Science Engineer (m/w/x) \n", 1946 | "75 Data Analyst Intern \n", 1947 | "170 Analytics Engineer Intern \n", 1948 | "... ... \n", 1949 | "3107 AI Intern (ChatGPT Specialist) \n", 1950 | "3109 STAGE 6 mois - Data Scientist Junior H/F \n", 1951 | "3134 ETL and Data Warehouse Testing Intern \n", 1952 | "3152 Stage: Computer Science, Robotics, Computer Vi... \n", 1953 | "3159 Data Analyst Intern m/f/d - Business \n", 1954 | "\n", 1955 | " Location Job Type Experience level Salary \\\n", 1956 | "7 Bangkok, Thailand Internship Entry-level NaN \n", 1957 | "8 San Jose, CA, United States Internship Entry-level NaN \n", 1958 | "44 Wien, Austria Full Time Entry-level NaN \n", 1959 | "75 Madrid, Spain Full Time Entry-level NaN \n", 1960 | "170 Barcelona, Catalonia, Spain Internship Entry-level NaN \n", 1961 | "... ... ... ... ... \n", 1962 | "3107 Remote Internship Entry-level NaN \n", 1963 | "3109 Nanterre, France Full Time Entry-level NaN \n", 1964 | "3134 Bengaluru, Karnataka, India Internship Entry-level NaN \n", 1965 | "3152 Maassluis, Netherlands Full Time Entry-level NaN \n", 1966 | "3159 Paris, France Internship Entry-level NaN \n", 1967 | "\n", 1968 | " Requirment of the company \\\n", 1969 | "7 Business Intelligence,Excel,Genetics,,, \n", 1970 | "8 Big Data,Computer Science,Engineering,Machine ... \n", 1971 | "44 CI/CD,Computer Science,Data pipelines,Deep Lea... \n", 1972 | "75 Matplotlib,MongoDB,NumPy,Pandas,Power BI,Python \n", 1973 | "170 Airflow,BigQuery,CI/CD,Databricks,Data quality... \n", 1974 | "... ... \n", 1975 | "3107 APIs,ChatGPT,Engineering,GPT,GPT-3,GPT-4 \n", 1976 | "3109 Big Data,Power BI,Python,R,SQL, \n", 1977 | "3134 Computer Science,Data quality,Data warehouse,E... \n", 1978 | "3152 Computer Science,Computer Vision,Engineering,O... \n", 1979 | "3159 Data analysis,Data pipelines,Data visualizatio... \n", 1980 | "\n", 1981 | " Facilities Is English \n", 1982 | "7 ,,,, True \n", 1983 | "8 Career development,Competitive pay,Equity,Flex... False \n", 1984 | "44 ,,,, True \n", 1985 | "75 ,,,, True \n", 1986 | "170 Career development,Flex hours,Team events,, True \n", 1987 | "... ... ... \n", 1988 | "3107 Career development,,,, True \n", 1989 | "3109 ,,,, True \n", 1990 | "3134 ,,,, True \n", 1991 | "3152 ,,,, True \n", 1992 | "3159 Career development,Health care,Insurance,Start... True \n", 1993 | "\n", 1994 | "[114 rows x 9 columns]" 1995 | ] 1996 | }, 1997 | "execution_count": 43, 1998 | "metadata": {}, 1999 | "output_type": "execute_result" 2000 | } 2001 | ], 2002 | "source": [ 2003 | "dataFrame[(dataFrame[\"Experience level\"]==\"Entry-level\") & ( dataFrame[\"Salary\"].isna()) ]" 2004 | ] 2005 | }, 2006 | { 2007 | "cell_type": "code", 2008 | "execution_count": 50, 2009 | "metadata": {}, 2010 | "outputs": [ 2011 | { 2012 | "data": { 2013 | "text/html": [ 2014 | "
\n", 2015 | "\n", 2028 | "\n", 2029 | " \n", 2030 | " \n", 2031 | " \n", 2032 | " \n", 2033 | " \n", 2034 | " \n", 2035 | " \n", 2036 | " \n", 2037 | " \n", 2038 | " \n", 2039 | " \n", 2040 | " \n", 2041 | " \n", 2042 | " \n", 2043 | " \n", 2044 | " \n", 2045 | " \n", 2046 | " \n", 2047 | " \n", 2048 | " \n", 2049 | " \n", 2050 | " \n", 2051 | " \n", 2052 | " \n", 2053 | " \n", 2054 | " \n", 2055 | " \n", 2056 | " \n", 2057 | " \n", 2058 | " \n", 2059 | " \n", 2060 | " \n", 2061 | " \n", 2062 | " \n", 2063 | " \n", 2064 | " \n", 2065 | " \n", 2066 | " \n", 2067 | " \n", 2068 | " \n", 2069 | " \n", 2070 | " \n", 2071 | " \n", 2072 | " \n", 2073 | " \n", 2074 | " \n", 2075 | " \n", 2076 | " \n", 2077 | " \n", 2078 | " \n", 2079 | " \n", 2080 | " \n", 2081 | " \n", 2082 | " \n", 2083 | " \n", 2084 | " \n", 2085 | " \n", 2086 | " \n", 2087 | " \n", 2088 | " \n", 2089 | " \n", 2090 | " \n", 2091 | " \n", 2092 | " \n", 2093 | " \n", 2094 | " \n", 2095 | " \n", 2096 | " \n", 2097 | " \n", 2098 | " \n", 2099 | " \n", 2100 | " \n", 2101 | " \n", 2102 | " \n", 2103 | " \n", 2104 | " \n", 2105 | " \n", 2106 | " \n", 2107 | " \n", 2108 | " \n", 2109 | " \n", 2110 | " \n", 2111 | " \n", 2112 | " \n", 2113 | " \n", 2114 | " \n", 2115 | " \n", 2116 | " \n", 2117 | " \n", 2118 | " \n", 2119 | " \n", 2120 | " \n", 2121 | " \n", 2122 | " \n", 2123 | " \n", 2124 | " \n", 2125 | " \n", 2126 | " \n", 2127 | " \n", 2128 | " \n", 2129 | " \n", 2130 | " \n", 2131 | " \n", 2132 | " \n", 2133 | " \n", 2134 | " \n", 2135 | " \n", 2136 | " \n", 2137 | " \n", 2138 | " \n", 2139 | " \n", 2140 | " \n", 2141 | " \n", 2142 | " \n", 2143 | " \n", 2144 | " \n", 2145 | " \n", 2146 | " \n", 2147 | " \n", 2148 | " \n", 2149 | " \n", 2150 | " \n", 2151 | " \n", 2152 | " \n", 2153 | " \n", 2154 | " \n", 2155 | " \n", 2156 | " \n", 2157 | " \n", 2158 | " \n", 2159 | " \n", 2160 | " \n", 2161 | " \n", 2162 | " \n", 2163 | " \n", 2164 | " \n", 2165 | " \n", 2166 | " \n", 2167 | " \n", 2168 | " \n", 2169 | " \n", 2170 | " \n", 2171 | " \n", 2172 | " \n", 2173 | " \n", 2174 | " \n", 2175 | " \n", 2176 | " \n", 2177 | "
CompanyJob TitleLocationJob TypeExperience levelSalaryRequirment of the companyFacilitiesIs English
39AngiSenior Data ScientistIndianapolis, IN - HybridFull TimeSenior-levelNaNBig Data,Data Mining,Machine Learning,Mathemat...401(k) matching,Career development,Competitive...False
87Civis AnalyticsLead Applied Data Scientist (Experience with M...RemoteFull TimeSenior-levelNaNCausal inference,Computer Science,Consulting,D...401(k) matching,Career development,Competitive...True
168Faraday FutureSenior Big Data EngineerSan Jose, California, United StatesFull TimeSenior-levelNaNAirflow,AWS,Azure,Big Data,Computer Science,Da...Equity,Relocation support,,,True
201VeritoneData Analytics EngineerUnited StatesFull TimeSenior-levelNaNAgile,APIs,AWS,Business Analytics,Business Int...401(k) matching,Career development,Competitive...True
208Publicis GroupeSenior Associate Data EngineeringHouston, TX, United StatesFull TimeMid-levelNaNAgile,Architecture,AWS,Azure,BigQuery,BigtableCareer development,Flex hours,Flex vacation,Pa...True
..............................
2896ZappiData ScientistLondon, England, United KingdomFull TimeMid-levelNaNAPIs,AWS,CI/CD,Computer Vision,Data Mining,Eng...Career development,Flex hours,Flex vacation,Ho...False
2936ComplyAdvantageDirector of Data ScienceLondon, England, United KingdomFull TimeExecutive-levelNaNData strategy,Engineering,Machine Learning,NLP...Career development,Competitive pay,Equity,Flex...True
3080DuckDuckGoSenior Backend Engineer, AIRemote jobFull TimeSenior-levelNaNEngineering,Genetics,Machine Learning,ML model...Career development,Equity,Flex hours,Flex vaca...False
3099NBCUniversalData Scientist, Data & AnalyticsNew York City, United StatesFull TimeSenior-levelNaNAgile,Airflow,Architecture,AWS,Azure,CI/CDCareer development,Health care,Insurance,Medic...True
3166DNSFilterSenior Data ScientistWashington, District of Columbia, United State...Full TimeMid-levelNaNAWS,Computer Science,Data analysis,Data visual...Career development,Flex hours,Flex vacation,He...False
\n", 2178 | "

61 rows × 9 columns

\n", 2179 | "
" 2180 | ], 2181 | "text/plain": [ 2182 | " Company Job Title \\\n", 2183 | "39 Angi Senior Data Scientist \n", 2184 | "87 Civis Analytics Lead Applied Data Scientist (Experience with M... \n", 2185 | "168 Faraday Future Senior Big Data Engineer \n", 2186 | "201 Veritone Data Analytics Engineer \n", 2187 | "208 Publicis Groupe Senior Associate Data Engineering \n", 2188 | "... ... ... \n", 2189 | "2896 Zappi Data Scientist \n", 2190 | "2936 ComplyAdvantage Director of Data Science \n", 2191 | "3080 DuckDuckGo Senior Backend Engineer, AI \n", 2192 | "3099 NBCUniversal Data Scientist, Data & Analytics \n", 2193 | "3166 DNSFilter Senior Data Scientist \n", 2194 | "\n", 2195 | " Location Job Type \\\n", 2196 | "39 Indianapolis, IN - Hybrid Full Time \n", 2197 | "87 Remote Full Time \n", 2198 | "168 San Jose, California, United States Full Time \n", 2199 | "201 United States Full Time \n", 2200 | "208 Houston, TX, United States Full Time \n", 2201 | "... ... ... \n", 2202 | "2896 London, England, United Kingdom Full Time \n", 2203 | "2936 London, England, United Kingdom Full Time \n", 2204 | "3080 Remote job Full Time \n", 2205 | "3099 New York City, United States Full Time \n", 2206 | "3166 Washington, District of Columbia, United State... Full Time \n", 2207 | "\n", 2208 | " Experience level Salary \\\n", 2209 | "39 Senior-level NaN \n", 2210 | "87 Senior-level NaN \n", 2211 | "168 Senior-level NaN \n", 2212 | "201 Senior-level NaN \n", 2213 | "208 Mid-level NaN \n", 2214 | "... ... ... \n", 2215 | "2896 Mid-level NaN \n", 2216 | "2936 Executive-level NaN \n", 2217 | "3080 Senior-level NaN \n", 2218 | "3099 Senior-level NaN \n", 2219 | "3166 Mid-level NaN \n", 2220 | "\n", 2221 | " Requirment of the company \\\n", 2222 | "39 Big Data,Data Mining,Machine Learning,Mathemat... \n", 2223 | "87 Causal inference,Computer Science,Consulting,D... \n", 2224 | "168 Airflow,AWS,Azure,Big Data,Computer Science,Da... \n", 2225 | "201 Agile,APIs,AWS,Business Analytics,Business Int... \n", 2226 | "208 Agile,Architecture,AWS,Azure,BigQuery,Bigtable \n", 2227 | "... ... \n", 2228 | "2896 APIs,AWS,CI/CD,Computer Vision,Data Mining,Eng... \n", 2229 | "2936 Data strategy,Engineering,Machine Learning,NLP... \n", 2230 | "3080 Engineering,Genetics,Machine Learning,ML model... \n", 2231 | "3099 Agile,Airflow,Architecture,AWS,Azure,CI/CD \n", 2232 | "3166 AWS,Computer Science,Data analysis,Data visual... \n", 2233 | "\n", 2234 | " Facilities Is English \n", 2235 | "39 401(k) matching,Career development,Competitive... False \n", 2236 | "87 401(k) matching,Career development,Competitive... True \n", 2237 | "168 Equity,Relocation support,,, True \n", 2238 | "201 401(k) matching,Career development,Competitive... True \n", 2239 | "208 Career development,Flex hours,Flex vacation,Pa... True \n", 2240 | "... ... ... \n", 2241 | "2896 Career development,Flex hours,Flex vacation,Ho... False \n", 2242 | "2936 Career development,Competitive pay,Equity,Flex... True \n", 2243 | "3080 Career development,Equity,Flex hours,Flex vaca... False \n", 2244 | "3099 Career development,Health care,Insurance,Medic... True \n", 2245 | "3166 Career development,Flex hours,Flex vacation,He... False \n", 2246 | "\n", 2247 | "[61 rows x 9 columns]" 2248 | ] 2249 | }, 2250 | "execution_count": 50, 2251 | "metadata": {}, 2252 | "output_type": "execute_result" 2253 | } 2254 | ], 2255 | "source": [ 2256 | "dataFrame[(dataFrame[\"Experience level\"]!=\"Entry-level\") & ( dataFrame[\"Salary\"].isna())]" 2257 | ] 2258 | }, 2259 | { 2260 | "cell_type": "markdown", 2261 | "metadata": {}, 2262 | "source": [ 2263 | "#### Number of NaN Values in Salary by Experience Level" 2264 | ] 2265 | }, 2266 | { 2267 | "cell_type": "code", 2268 | "execution_count": 51, 2269 | "metadata": {}, 2270 | "outputs": [ 2271 | { 2272 | "data": { 2273 | "image/png": "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tqyqVKli+8Ls0KFDWr58ua5cueLI0uMUghQcauzYscqTJ492795t1378+HE9efJEe/fuVbt27TR8+HB16NBBhmFoxIgRmjJliiT7g0Luj4C4oEiRIgoJCVGFChVsYcrZ2Vn169fXoUOHlCNHDtWsWVMzZsyQxWJRcHCwDh06pEOHDikkJMTR5QM2O3fuVIMGDexuX5E0aVK5urpq7ty5KlmypGrVqmX7vL9+/brGjRvHUM6IE3Lnzq1evXrp0aNH6t+/v06ePClJypUrl06ePKlcuXKpTp06mjVrlu2LhSVLlujo0aNKkiSJI0uPUzjyhEN169ZNjRo1Uv369e3CVOvWrbVx40Z98sknGjdunL766itJ0oMHD3T06FH5+/s7qmTAoT788EP9/PPPun37tsqVK6fg4GBJUvbs2XX06FGlTp1a3bp1k8Vi0ePHjzVkyBBt2bJFLVq0oKsHYpTVq1erfv36+vTTT7V9+3ZJT78cq1ChgoYPH67s2bNrxowZtu122rRpunfvnvLnz+/IsoFoZ7VaJUnNmjXTF198oXv37mnAgAE6fvy4kiZNqpUrVyp58uQKCAjQsWPHtH//fn399df64YcfNGnSJCVLlszBryDu4BopOFxoaKiaNWumbdu2adWqVSpTpozOnTun3r1769q1axowYIDq1aun8+fPq0ePHrp165Z8fX3pooQ47ejRo2rSpIkSJ06s3bt3277FHz58uLy9vZUkSRLFixdPvr6+2rx5swoVKuTokoEIrFarWrRooQ0bNmjlypWqUKGCTp8+re7du+vBgweqUaOGMmbMqL1792rp0qXauXOnChQo4OiygWj37AATS5Ys0ezZs5U4cWJ99913yps3r3799Ve1a9dOzs7Oih8/vry8vDRz5kwVLFjQsYXHMQQpxAjhYeq3337TqlWrVLZsWR04cEDDhg3T4cOHFRYWptSpUytBggTasWOHXFxcuNgYcV54mPLy8tLevXvl4uKiTZs26fTp0zp06JCKFi2q2rVrK3v27I4uFXgpq9Wqli1bat26dVq5cqUqVqyoY8eO6aefftLq1auVNGlSpUmTRt9//z2j8yFOeXZAoaVLl2r69OlKliyZhgwZojx58ujevXu6ePGiEiZMqOTJkytp0qQOrjjuIUjB4Z69+eJnn32mbdu2afXq1Spbtqxu3LihW7du6cSJE8qaNas+/vhjOTs7M/IY4rRnt/8TJ06ofv36SpIkifbs2cMwt4jRnv2WXbIffa9JkybauHGjfv75Z1WsWFGS9PjxYzk5OckwDG4mivfey/aP8CHMV65cqWnTpilx4sQaNGgQ3VxjAK6RgsOFZ3kXFxetWLFCFSpUUL169bRr1y6lTp1aBQoUUPPmzVWiRAk5OzsrLCyMEIU4K3z7v3LlihYtWqT8+fNr+fLlun//vsqXL6/Hjx87ukTAzi+//KLDhw9LejrCavhnfvhB4r///ivp6TfutWrVshuAwt3dXa6uroQoxAkWi0VLlizRpEmTFBwcLGdnZ12+fFnVqlXToUOH1KBBA7Vr104PHz5Ujx49XjjqMd4tghTemWdPfoZfSBl+2nrx4sXq0KGDpKd9gStXrqyGDRvqt99+i7AeuvMhLjIMQ1arVc7Ozrpy5YpKlCih/fv3S5IKFSqkZcuW6fz586pdu7aDKwWeMgxDV65c0eeff65x48bp+PHjkmTrgRC+LadOnVo//PCDJOnHH39U3bp1VaFCBe3atcuR5QPvTPjx0ZUrV9S2bVtJkpubmy5duqTSpUsrS5YstutcmzZtqqZNmyphwoRKlCiRw2rGU3Ttwzs3a9YsZcuWTeXLl5ckrVq1Sq1atdLgwYPVo0cPSU+7LlWrVk0uLi4MdYs4KbyLx8OHD21fHnh4eOj27dsqWrSoqlWrpmnTptkN+3/ixAklSJBAWbNmdVTZQAS//fabOnTooBIlSqh79+4qXLiwJOnatWv66KOPVLduXU2dOtW2LVutVn311Vfq2bOncuTI4cjSgXdm165d8vPzk5+fn0aMGCGr1arWrVsrLCxMCxcutN0vM3w/CQgIkKenp4OrBkEK71yuXLmUP39+LVu2TOfOnVPNmjXVq1cv2xmpcOFnrbg/FOKa8BC1fv16zZkzR35+fvrwww9VoUIFffrpp5o7d666dOli15ceiGmsVqvtRumbN29Whw4dVKFCBXXq1EmFChXS+PHjdfPmTQ0fPpxtGXHagwcP1Lx5c/3yyy+qUaOG7cbTDx8+VMKECe3mff46KjgWQQrvTHh/+PXr1+vbb7/VnDlzlCtXLp0+fVofffTRS5d79hsYIK5Yt26dGjVqpMGDBytTpkzaunWr5s6dq1OnTilXrlyOLg94rfADvrVr1+rPP//Ujz/+qIsXL6pu3boaOXKksmTJwgEh8P/t379fEydO1Lp16+Tr66t8+fIxOnEswNEpos3zGT38wyB37tySpC1btihhwoT68MMPX7keQhTimocPH2rOnDkaMmSIvvnmG5UvX14bN25Up06dCFGI8cI/+y0Wi7Zv364GDRooRYoUGjt2rObOnavffvtN/fr1059//hlhGSAuCN/erVarQkJCJEnFihVT//79VaJECVWpUkWnT5+2DbCFmIsjVESLZ089r1ixQpMnT5b09EMjS5Ysatu2rSZNmqQLFy7wjSTwHKvVqgsXLqhIkSK6ceOGChYsqOrVq9v2oxUrVtgu3Adiij179ig0NNTuM/2XX35RhQoV9OWXX6pWrVpq2bKlfv75Z23cuFFDhgyxG4ACiAvCj482b96sFi1aqHLlyurZs6eOHz+u3Llza/LkySpUqJCqVKmis2fPEqZiOIIUotyzIWrBggVav369BgwYoMqVK2v06NG6d++eGjZsqAIFCmjnzp2SxIcEIMnPz0937tyRu7u7cufOrSNHjqhkyZKqXr26ZsyYIUny9/fXxo0bdfr0ab7FR4yxcOFCDRw4UPfv37drNwzDbrjzkJAQVahQQaNGjdKGDRs0bNgwvhRAnGKxWPTLL7+odu3acnd3V6FChbR69Wp17dpVK1euVI4cOTRy5EgVKVJERYoU0fnz5+neF4MRpBClng1RAwcO1OTJk9W7d2+dOnVKWbNm1YYNG5Q7d26tXbtWN27c0JIlSyQxpDlw4cIF1alTRxcuXJCrq6vy5cunb775Rh988IHdiGaTJk3Svn37VKJECb7Fh8OFDwpUt25dLVy4UMmSJdPVq1cVGhoqSfr444+1detW7d69W87OzrbtOGHChMqaNavOnz+vFClSOKx+ILoFBgbafjcMQ3fu3NHw4cP13Xffac6cORo3bpz2798vLy8vTZ48WWfPnlXevHnVr18/1a5dm8/5GI7BJhAtjhw5oqFDh6pHjx4qXbq0pP/7NnLUqFE6e/asdu7cqRs3buiHH35Qq1atHFswEAMULVpUadOm1dq1ayVJPXr00IwZM9SlSxc5Ozvr9u3bWrFihXbu3KmCBQs6tljEeeEDAf311186e/asatSooTNnzqh58+b67LPP1KVLF7m4uKhly5Zau3at1q5dq7Jly0qS+vXrp+TJk6tdu3bcCwfvrTFjxujx48fy8fGxfWEcGBioYsWKqUuXLmrfvr1CQkLk4uKiW7duqXDhwmrdurWGDBkiSQoODuZm1DFcPEcXgPfD8935fvzxRz1+/Fh58+aV9H8j9jk7O2vAgAHy9/fXhQsX1LlzZ23evJkghTjl+ZEow/9ZjhgxQn369NHWrVtVqVIljR8/XqlSpdK+fft0+/ZtFShQQPv27VOePHkcWD3wlJOTk/755x8VK1ZM3t7eCgwMVN26dZU9e3b9/PPPcnd3V4cOHTRq1Cg5OTmpfPnyKlasmMLCwvTnn3/K19eXEIX32sOHD9W0aVM5OzvbAlNISIjCwsLk5+cnSbZp3t7eqlixos6dO2dbnhAV8xGkECXCQ9Tjx4/l7e2tGzdu6Pr16zpy5IgqVqwoZ2dnu5GcUqZMqVSpUmn27NkqU6aMDh48+Moh0IH3wd9//620adPaQtTVq1eVIUMG2z/L8BH5woOUJPXp00fBwcGKFy+eDMNQvHh8bCPmOH/+vO7cuaPMmTPrxx9/lIeHhxYsWKAOHTpo3rx5cnJyUrt27TRv3jzVrFlTJ0+elGEYWrBgATfbxXsr/MvlQYMGSZL27t2rjRs3qnPnzkqVKpV8fHzUqlUr5cqVS1988YXtf8Ldu3eVIUMGB1YOs/iPjLeydu1a5cqVSx988IH69OmjwMBATZkyRc7OzurTp4+mTJmihAkTqlixYrJYLHZhymq1KmfOnMqVK5cePnzo4FcCRK+xY8fKz89PEyZMkLu7u06fPq369esrW7Zs+u6775Q5c2alTZtWffr0Ubt27VS7dm2VKlVKEt9KIuYqV66cWrVqpT/++EPu7u4aM2aMnJycNGPGDHXo0EFz585VWFiY2rdvr/r166t+/fqOLhmIds9f17Ru3TqtXr1a8eLFU+fOndW8eXOdP39ebdu21R9//KH06dPr+vXr2r59uw4cOOCgqvEmCFJ4Y4GBgZo6dap8fX3VoEEDLV++XHv37pUkVa5cWcHBwRoyZIgmTZoki8Wijz/+2O7DxcnJSUuXLtWxY8eUJUsWR70M4J3ImDGjatasKXd3dz169Ejp06fXmDFjNGTIELVt21bJkiXTgAED9OGHH6pmzZratm2bSpYsKcMwuJcaYoSXdUmtX7++rFarmjZtqpkzZ2rYsGGyWCyaMWOGvvrqKy1evFiPHj1S9+7dOaOKOGnEiBFycnLSL7/8IqvVql69emnIkCHKmzevxo4dqz/++EOenp7au3ev7V6biB0YbAJv5dGjR8qSJYvu3r2rZcuWqU6dOnry5IlcXV0lPb2HyLBhw5QtWzZ9+eWXtoEnwp06dUqSuOYDccaePXs0Y8YM9e7dWwUKFJAkLV++XBs2bNCqVav0+eef6/fff1dISIjtnyvgaOEh6tq1azp8+LDq1atnm3b79m2VKVNGnTt3VqNGjdShQwfdunVLPj4+qlixoj7//HPduXNHK1asUJIkSRz4KoDoF96t79KlS7YvjzNlyiTpaVftLVu2qFatWuratauSJ0+uhw8fKn78+Hr8+LHix4/vwMrxJviaE28lICBAGTJkUKFChdS+fXudPn1arq6utjt1165dW/369dOePXv022+/RVg+T548hCi8l8KHhZZk2x/CwsJ0//59HTp0SJMmTdKhQ4ckSY0aNbIN0uLu7q47d+7o4sWLunfvniNKByIID1GFChVS/fr1VaNGDS1fvtw2fPmoUaO0bNkySdL3338vb29vjR49Whs2bNCiRYu0cOFCQhTiBIvFop9//lmffPKJSpUqpVatWumHH36QJI0cOVKVK1fW+vXrNWXKFPn7+ythwoRycnIiRMVSnJGCKc937ZCedu8ICgrSZ599piNHjmjnzp22i+alp9/OHD9+XPny5eN+UYhTLl68KBcXF6VPn16rVq3S9u3bNWXKFC1btkyjR49W3rx51bVrVxUuXNi2THBwsG7evKnQ0FC6vCJGuXLliho0aCAXFxcFBwercOHC2rp1q/r166fEiRNr4cKF6tixo6pVq6bTp0+rW7ducnFx0YoVK5QgQQJHlw9Eq/AzUX///bdKliypb7/9VokSJdKePXu0bt069ezZU926dZMkffvtt1qyZInatm2rvn370n07FiNIIdKeHeJ8yZIlun79utKkSaPGjRsrXrx48vf3V+vWrXXs2DFt2rRJuXLlUvPmzZUlSxYNHz5c0v8Ngw6870JCQlS/fn3t3LlTI0aMUKdOnbRgwQI1b95ckrR06VKNGTNGefPmVffu3W33hWIfQUzm5+envn37ymq1qkWLFrJYLJo4caISJ06stWvX6qOPPtKuXbvk6uqqc+fOKUGCBEqXLp2jywbeCV9fX/36668KCAjQxIkTJT39AmLmzJn68ccf1bt3b1uY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", 2274 | "text/plain": [ 2275 | "
" 2276 | ] 2277 | }, 2278 | "metadata": {}, 2279 | "output_type": "display_data" 2280 | } 2281 | ], 2282 | "source": [ 2283 | "import matplotlib.pyplot as plt\n", 2284 | "\n", 2285 | "nan_counts = dataFrame['Salary'].isna().groupby(dataFrame['Experience level']).sum()\n", 2286 | "\n", 2287 | "nan_counts.plot(kind='bar', color='skyblue', figsize=(10, 6))\n", 2288 | "plt.title('Number of NaN Values in Salary by Experience Level')\n", 2289 | "plt.xlabel('Experience Level')\n", 2290 | "plt.ylabel('Number of NaN Values')\n", 2291 | "plt.xticks(rotation=45)\n", 2292 | "plt.grid(axis='y')\n", 2293 | "plt.show()" 2294 | ] 2295 | } 2296 | ], 2297 | "metadata": { 2298 | "kernelspec": { 2299 | "display_name": "scraping_brief", 2300 | "language": "python", 2301 | "name": "python3" 2302 | }, 2303 | "language_info": { 2304 | "codemirror_mode": { 2305 | "name": "ipython", 2306 | "version": 3 2307 | }, 2308 | "file_extension": ".py", 2309 | "mimetype": "text/x-python", 2310 | "name": "python", 2311 | "nbconvert_exporter": "python", 2312 | "pygments_lexer": "ipython3", 2313 | "version": "3.10.0" 2314 | }, 2315 | "orig_nbformat": 4 2316 | }, 2317 | "nbformat": 4, 2318 | "nbformat_minor": 2 2319 | } 2320 | --------------------------------------------------------------------------------