diff --git a/Python/Pandas/11-Import-Export/Pandas-Demo.ipynb b/Python/Pandas/11-Import-Export/Pandas-Demo.ipynb new file mode 100644 index 000000000..70a79b0da --- /dev/null +++ b/Python/Pandas/11-Import-Export/Pandas-Demo.ipynb @@ -0,0 +1,6328 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "import pandas as pd" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "df = pd.read_csv('data/survey_results_public.csv', index_col='Respondent')\n", + "schema_df = pd.read_csv('data/survey_results_schema.csv', index_col='Column')" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [], + "source": [ + "pd.set_option('display.max_columns', 85)\n", + "pd.set_option('display.max_rows', 85)" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
MainBranchHobbyistOpenSourcerOpenSourceEmploymentCountryStudentEdLevelUndergradMajorEduOtherOrgSizeDevTypeYearsCodeAge1stCodeYearsCodeProCareerSatJobSatMgrIdiotMgrMoneyMgrWantJobSeekLastHireDateLastIntFizzBuzzJobFactorsResumeUpdateCurrencySymbolCurrencyDescCompTotalCompFreqConvertedCompWorkWeekHrsWorkPlanWorkChallengeWorkRemoteWorkLocImpSynCodeRevCodeRevHrsUnitTestsPurchaseHowPurchaseWhatLanguageWorkedWithLanguageDesireNextYearDatabaseWorkedWithDatabaseDesireNextYearPlatformWorkedWithPlatformDesireNextYearWebFrameWorkedWithWebFrameDesireNextYearMiscTechWorkedWithMiscTechDesireNextYearDevEnvironOpSysContainersBlockchainOrgBlockchainIsBetterLifeITpersonOffOnSocialMediaExtraversionScreenNameSOVisit1stSOVisitFreqSOVisitToSOFindAnswerSOTimeSavedSOHowMuchTimeSOAccountSOPartFreqSOJobsEntTeamsSOCommWelcomeChangeSONewContentAgeGenderTransSexualityEthnicityDependentsSurveyLengthSurveyEase
Respondent
1I am a student who is learning to codeYesNeverThe quality of OSS and closed source software ...Not employed, and not looking for workUnited KingdomNoPrimary/elementary schoolNaNTaught yourself a new language, framework, or ...NaNNaN410NaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNHTML/CSS;Java;JavaScript;PythonC;C++;C#;Go;HTML/CSS;Java;JavaScript;Python;SQLSQLiteMySQLMacOS;WindowsAndroid;Arduino;WindowsDjango;FlaskFlask;jQueryNode.jsNode.jsIntelliJ;Notepad++;PyCharmWindowsI do not use containersNaNNaNYesFortunately, someone else has that titleYesTwitterOnlineUsername2017A few times per month or weeklyFind answers to specific questions;Learn how t...3-5 times per weekStack Overflow was much faster31-60 minutesNoNaNNo, I didn't know that Stack Overflow had a jo...No, and I don't know what those areNeutralJust as welcome now as I felt last yearTech articles written by other developers;Indu...14.0ManNoStraight / HeterosexualNaNNoAppropriate in lengthNeither easy nor difficult
2I am a student who is learning to codeNoLess than once per yearThe quality of OSS and closed source software ...Not employed, but looking for workBosnia and HerzegovinaYes, full-timeSecondary school (e.g. American high school, G...NaNTaken an online course in programming or softw...NaNDeveloper, desktop or enterprise applications;...NaN17NaNNaNNaNNaNNaNNaNI am actively looking for a jobI've never had a jobNaNNaNFinancial performance or funding status of the...Something else changed (education, award, medi...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNC++;HTML/CSS;PythonC++;HTML/CSS;JavaScript;SQLNaNMySQLWindowsWindowsDjangoDjangoNaNNaNAtom;PyCharmWindowsI do not use containersNaNUseful across many domains and could change ma...YesYesYesInstagramOnlineUsername2017Daily or almost dailyFind answers to specific questions;Learn how t...3-5 times per weekStack Overflow was much faster11-30 minutesYesA few times per month or weeklyNo, I knew that Stack Overflow had a job board...No, and I don't know what those areYes, somewhatJust as welcome now as I felt last yearTech articles written by other developers;Indu...19.0ManNoStraight / HeterosexualNaNNoAppropriate in lengthNeither easy nor difficult
3I am not primarily a developer, but I write co...YesNeverThe quality of OSS and closed source software ...Employed full-timeThailandNoBachelor’s degree (BA, BS, B.Eng., etc.)Web development or web designTaught yourself a new language, framework, or ...100 to 499 employeesDesigner;Developer, back-end;Developer, front-...3221Slightly satisfiedSlightly satisfiedNot at all confidentNot sureNot sureI’m not actively looking, but I am open to new...1-2 years agoInterview with people in peer rolesNoLanguages, frameworks, and other technologies ...I was preparing for a job searchTHBThai baht23000.0Monthly8820.040.0There's no schedule or spec; I work on what se...Distracting work environment;Inadequate access...Less than once per month / NeverHomeAverageNoNaNNo, but I think we shouldNot sureI have little or no influenceHTML/CSSElixir;HTML/CSSPostgreSQLPostgreSQLNaNNaNNaNOther(s):NaNNaNVim;Visual Studio CodeLinux-basedI do not use containersNaNNaNYesYesYesRedditIn real life (in person)Username2011A few times per weekFind answers to specific questions;Learn how t...6-10 times per weekThey were about the sameNaNYesLess than once per month or monthlyYesNo, I've heard of them, but I am not part of a...NeutralJust as welcome now as I felt last yearTech meetups or events in your area;Courses on...28.0ManNoStraight / HeterosexualNaNYesAppropriate in lengthNeither easy nor difficult
4I am a developer by professionNoNeverThe quality of OSS and closed source software ...Employed full-timeUnited StatesNoBachelor’s degree (BA, BS, B.Eng., etc.)Computer science, computer engineering, or sof...Taken an online course in programming or softw...100 to 499 employeesDeveloper, full-stack316Less than 1 yearVery satisfiedSlightly satisfiedVery confidentNoNot sureI am not interested in new job opportunitiesLess than a year agoWrite code by hand (e.g., on a whiteboard);Int...NoLanguages, frameworks, and other technologies ...I was preparing for a job searchUSDUnited States dollar61000.0Yearly61000.080.0There's no schedule or spec; I work on what se...NaNLess than once per month / NeverHomeA little below averageNoNaNNo, but I think we shouldDevelopers typically have the most influence o...I have little or no influenceC;C++;C#;Python;SQLC;C#;JavaScript;SQLMySQL;SQLiteMySQL;SQLiteLinux;WindowsLinux;WindowsNaNNaN.NET.NETEclipse;Vim;Visual Studio;Visual Studio CodeWindowsI do not use containersNot at allUseful for decentralized currency (i.e., Bitcoin)YesSIGHYesRedditIn real life (in person)Username2014Daily or almost dailyFind answers to specific questions;Pass the ti...1-2 times per weekStack Overflow was much faster31-60 minutesYesLess than once per month or monthlyYesNo, and I don't know what those areNo, not reallyJust as welcome now as I felt last yearTech articles written by other developers;Indu...22.0ManNoStraight / HeterosexualWhite or of European descentNoAppropriate in lengthEasy
5I am a developer by professionYesOnce a month or more oftenOSS is, on average, of HIGHER quality than pro...Employed full-timeUkraineNoBachelor’s degree (BA, BS, B.Eng., etc.)Computer science, computer engineering, or sof...Taken an online course in programming or softw...10,000 or more employeesAcademic researcher;Developer, desktop or ente...16149Very dissatisfiedSlightly dissatisfiedSomewhat confidentYesNoI am not interested in new job opportunitiesLess than a year agoWrite any code;Write code by hand (e.g., on a ...NoIndustry that I'd be working in;Languages, fra...I was preparing for a job searchUAHUkrainian hryvniaNaNNaNNaN55.0There is a schedule and/or spec (made by me or...Being tasked with non-development work;Inadequ...A few days each monthOfficeA little above averageYes, because I see value in code reviewNaNYes, it's part of our processNot sureI have little or no influenceC++;HTML/CSS;Java;JavaScript;Python;SQL;VBAHTML/CSS;Java;JavaScript;SQL;WebAssemblyCouchbase;MongoDB;MySQL;Oracle;PostgreSQL;SQLiteCouchbase;Firebase;MongoDB;MySQL;Oracle;Postgr...Android;Linux;MacOS;Slack;WindowsAndroid;Docker;Kubernetes;Linux;SlackDjango;Express;Flask;jQuery;React.js;SpringFlask;jQuery;React.js;SpringCordova;Node.jsApache Spark;Hadoop;Node.js;React NativeIntelliJ;Notepad++;VimLinux-basedOutside of work, for personal projectsNot at allNaNYesAlso YesYesFacebookIn real life (in person)UsernameI don't rememberMultiple times per dayFind answers to specific questionsMore than 10 times per weekStack Overflow was much fasterNaNYesA few times per month or weeklyNo, I knew that Stack Overflow had a job board...No, I've heard of them, but I am not part of a...Yes, definitelyJust as welcome now as I felt last yearTech meetups or events in your area;Courses on...30.0ManNoStraight / HeterosexualWhite or of European descent;MultiracialNoAppropriate in lengthEasy
\n", + "
" + ], + "text/plain": [ + " MainBranch Hobbyist \\\n", + "Respondent \n", + "1 I am a student who is learning to code Yes \n", + "2 I am a student who is learning to code No \n", + "3 I am not primarily a developer, but I write co... Yes \n", + "4 I am a developer by profession No \n", + "5 I am a developer by profession Yes \n", + "\n", + " OpenSourcer \\\n", + "Respondent \n", + "1 Never \n", + "2 Less than once per year \n", + "3 Never \n", + "4 Never \n", + "5 Once a month or more often \n", + "\n", + " OpenSource \\\n", + "Respondent \n", + "1 The quality of OSS and closed source software ... \n", + "2 The quality of OSS and closed source software ... \n", + "3 The quality of OSS and closed source software ... \n", + "4 The quality of OSS and closed source software ... \n", + "5 OSS is, on average, of HIGHER quality than pro... \n", + "\n", + " Employment Country \\\n", + "Respondent \n", + "1 Not employed, and not looking for work United Kingdom \n", + "2 Not employed, but looking for work Bosnia and Herzegovina \n", + "3 Employed full-time Thailand \n", + "4 Employed full-time United States \n", + "5 Employed full-time Ukraine \n", + "\n", + " Student EdLevel \\\n", + "Respondent \n", + "1 No Primary/elementary school \n", + "2 Yes, full-time Secondary school (e.g. American high school, G... \n", + "3 No Bachelor’s degree (BA, BS, B.Eng., etc.) \n", + "4 No Bachelor’s degree (BA, BS, B.Eng., etc.) \n", + "5 No Bachelor’s degree (BA, BS, B.Eng., etc.) \n", + "\n", + " UndergradMajor \\\n", + "Respondent \n", + "1 NaN \n", + "2 NaN \n", + "3 Web development or web design \n", + "4 Computer science, computer engineering, or sof... \n", + "5 Computer science, computer engineering, or sof... \n", + "\n", + " EduOther \\\n", + "Respondent \n", + "1 Taught yourself a new language, framework, or ... \n", + "2 Taken an online course in programming or softw... \n", + "3 Taught yourself a new language, framework, or ... \n", + "4 Taken an online course in programming or softw... \n", + "5 Taken an online course in programming or softw... \n", + "\n", + " OrgSize \\\n", + "Respondent \n", + "1 NaN \n", + "2 NaN \n", + "3 100 to 499 employees \n", + "4 100 to 499 employees \n", + "5 10,000 or more employees \n", + "\n", + " DevType YearsCode \\\n", + "Respondent \n", + "1 NaN 4 \n", + "2 Developer, desktop or enterprise applications;... NaN \n", + "3 Designer;Developer, back-end;Developer, front-... 3 \n", + "4 Developer, full-stack 3 \n", + "5 Academic researcher;Developer, desktop or ente... 16 \n", + "\n", + " Age1stCode YearsCodePro CareerSat \\\n", + "Respondent \n", + "1 10 NaN NaN \n", + "2 17 NaN NaN \n", + "3 22 1 Slightly satisfied \n", + "4 16 Less than 1 year Very satisfied \n", + "5 14 9 Very dissatisfied \n", + "\n", + " JobSat MgrIdiot MgrMoney MgrWant \\\n", + "Respondent \n", + "1 NaN NaN NaN NaN \n", + "2 NaN NaN NaN NaN \n", + "3 Slightly satisfied Not at all confident Not sure Not sure \n", + "4 Slightly satisfied Very confident No Not sure \n", + "5 Slightly dissatisfied Somewhat confident Yes No \n", + "\n", + " JobSeek \\\n", + "Respondent \n", + "1 NaN \n", + "2 I am actively looking for a job \n", + "3 I’m not actively looking, but I am open to new... \n", + "4 I am not interested in new job opportunities \n", + "5 I am not interested in new job opportunities \n", + "\n", + " LastHireDate \\\n", + "Respondent \n", + "1 NaN \n", + "2 I've never had a job \n", + "3 1-2 years ago \n", + "4 Less than a year ago \n", + "5 Less than a year ago \n", + "\n", + " LastInt FizzBuzz \\\n", + "Respondent \n", + "1 NaN NaN \n", + "2 NaN NaN \n", + "3 Interview with people in peer roles No \n", + "4 Write code by hand (e.g., on a whiteboard);Int... No \n", + "5 Write any code;Write code by hand (e.g., on a ... No \n", + "\n", + " JobFactors \\\n", + "Respondent \n", + "1 NaN \n", + "2 Financial performance or funding status of the... \n", + "3 Languages, frameworks, and other technologies ... \n", + "4 Languages, frameworks, and other technologies ... \n", + "5 Industry that I'd be working in;Languages, fra... \n", + "\n", + " ResumeUpdate CurrencySymbol \\\n", + "Respondent \n", + "1 NaN NaN \n", + "2 Something else changed (education, award, medi... NaN \n", + "3 I was preparing for a job search THB \n", + "4 I was preparing for a job search USD \n", + "5 I was preparing for a job search UAH \n", + "\n", + " CurrencyDesc CompTotal CompFreq ConvertedComp \\\n", + "Respondent \n", + "1 NaN NaN NaN NaN \n", + "2 NaN NaN NaN NaN \n", + "3 Thai baht 23000.0 Monthly 8820.0 \n", + "4 United States dollar 61000.0 Yearly 61000.0 \n", + "5 Ukrainian hryvnia NaN NaN NaN \n", + "\n", + " WorkWeekHrs WorkPlan \\\n", + "Respondent \n", + "1 NaN NaN \n", + "2 NaN NaN \n", + "3 40.0 There's no schedule or spec; I work on what se... \n", + "4 80.0 There's no schedule or spec; I work on what se... \n", + "5 55.0 There is a schedule and/or spec (made by me or... \n", + "\n", + " WorkChallenge \\\n", + "Respondent \n", + "1 NaN \n", + "2 NaN \n", + "3 Distracting work environment;Inadequate access... \n", + "4 NaN \n", + "5 Being tasked with non-development work;Inadequ... \n", + "\n", + " WorkRemote WorkLoc ImpSyn \\\n", + "Respondent \n", + "1 NaN NaN NaN \n", + "2 NaN NaN NaN \n", + "3 Less than once per month / Never Home Average \n", + "4 Less than once per month / Never Home A little below average \n", + "5 A few days each month Office A little above average \n", + "\n", + " CodeRev CodeRevHrs \\\n", + "Respondent \n", + "1 NaN NaN \n", + "2 NaN NaN \n", + "3 No NaN \n", + "4 No NaN \n", + "5 Yes, because I see value in code review NaN \n", + "\n", + " UnitTests \\\n", + "Respondent \n", + "1 NaN \n", + "2 NaN \n", + "3 No, but I think we should \n", + "4 No, but I think we should \n", + "5 Yes, it's part of our process \n", + "\n", + " PurchaseHow \\\n", + "Respondent \n", + "1 NaN \n", + "2 NaN \n", + "3 Not sure \n", + "4 Developers typically have the most influence o... \n", + "5 Not sure \n", + "\n", + " PurchaseWhat \\\n", + "Respondent \n", + "1 NaN \n", + "2 NaN \n", + "3 I have little or no influence \n", + "4 I have little or no influence \n", + "5 I have little or no influence \n", + "\n", + " LanguageWorkedWith \\\n", + "Respondent \n", + "1 HTML/CSS;Java;JavaScript;Python \n", + "2 C++;HTML/CSS;Python \n", + "3 HTML/CSS \n", + "4 C;C++;C#;Python;SQL \n", + "5 C++;HTML/CSS;Java;JavaScript;Python;SQL;VBA \n", + "\n", + " LanguageDesireNextYear \\\n", + "Respondent \n", + "1 C;C++;C#;Go;HTML/CSS;Java;JavaScript;Python;SQL \n", + "2 C++;HTML/CSS;JavaScript;SQL \n", + "3 Elixir;HTML/CSS \n", + "4 C;C#;JavaScript;SQL \n", + "5 HTML/CSS;Java;JavaScript;SQL;WebAssembly \n", + "\n", + " DatabaseWorkedWith \\\n", + "Respondent \n", + "1 SQLite \n", + "2 NaN \n", + "3 PostgreSQL \n", + "4 MySQL;SQLite \n", + "5 Couchbase;MongoDB;MySQL;Oracle;PostgreSQL;SQLite \n", + "\n", + " DatabaseDesireNextYear \\\n", + "Respondent \n", + "1 MySQL \n", + "2 MySQL \n", + "3 PostgreSQL \n", + "4 MySQL;SQLite \n", + "5 Couchbase;Firebase;MongoDB;MySQL;Oracle;Postgr... \n", + "\n", + " PlatformWorkedWith \\\n", + "Respondent \n", + "1 MacOS;Windows \n", + "2 Windows \n", + "3 NaN \n", + "4 Linux;Windows \n", + "5 Android;Linux;MacOS;Slack;Windows \n", + "\n", + " PlatformDesireNextYear \\\n", + "Respondent \n", + "1 Android;Arduino;Windows \n", + "2 Windows \n", + "3 NaN \n", + "4 Linux;Windows \n", + "5 Android;Docker;Kubernetes;Linux;Slack \n", + "\n", + " WebFrameWorkedWith \\\n", + "Respondent \n", + "1 Django;Flask \n", + "2 Django \n", + "3 NaN \n", + "4 NaN \n", + "5 Django;Express;Flask;jQuery;React.js;Spring \n", + "\n", + " WebFrameDesireNextYear MiscTechWorkedWith \\\n", + "Respondent \n", + "1 Flask;jQuery Node.js \n", + "2 Django NaN \n", + "3 Other(s): NaN \n", + "4 NaN .NET \n", + "5 Flask;jQuery;React.js;Spring Cordova;Node.js \n", + "\n", + " MiscTechDesireNextYear \\\n", + "Respondent \n", + "1 Node.js \n", + "2 NaN \n", + "3 NaN \n", + "4 .NET \n", + "5 Apache Spark;Hadoop;Node.js;React Native \n", + "\n", + " DevEnviron OpSys \\\n", + "Respondent \n", + "1 IntelliJ;Notepad++;PyCharm Windows \n", + "2 Atom;PyCharm Windows \n", + "3 Vim;Visual Studio Code Linux-based \n", + "4 Eclipse;Vim;Visual Studio;Visual Studio Code Windows \n", + "5 IntelliJ;Notepad++;Vim Linux-based \n", + "\n", + " Containers BlockchainOrg \\\n", + "Respondent \n", + "1 I do not use containers NaN \n", + "2 I do not use containers NaN \n", + "3 I do not use containers NaN \n", + "4 I do not use containers Not at all \n", + "5 Outside of work, for personal projects Not at all \n", + "\n", + " BlockchainIs BetterLife \\\n", + "Respondent \n", + "1 NaN Yes \n", + "2 Useful across many domains and could change ma... Yes \n", + "3 NaN Yes \n", + "4 Useful for decentralized currency (i.e., Bitcoin) Yes \n", + "5 NaN Yes \n", + "\n", + " ITperson OffOn SocialMedia \\\n", + "Respondent \n", + "1 Fortunately, someone else has that title Yes Twitter \n", + "2 Yes Yes Instagram \n", + "3 Yes Yes Reddit \n", + "4 SIGH Yes Reddit \n", + "5 Also Yes Yes Facebook \n", + "\n", + " Extraversion ScreenName SOVisit1st \\\n", + "Respondent \n", + "1 Online Username 2017 \n", + "2 Online Username 2017 \n", + "3 In real life (in person) Username 2011 \n", + "4 In real life (in person) Username 2014 \n", + "5 In real life (in person) Username I don't remember \n", + "\n", + " SOVisitFreq \\\n", + "Respondent \n", + "1 A few times per month or weekly \n", + "2 Daily or almost daily \n", + "3 A few times per week \n", + "4 Daily or almost daily \n", + "5 Multiple times per day \n", + "\n", + " SOVisitTo \\\n", + "Respondent \n", + "1 Find answers to specific questions;Learn how t... \n", + "2 Find answers to specific questions;Learn how t... \n", + "3 Find answers to specific questions;Learn how t... \n", + "4 Find answers to specific questions;Pass the ti... \n", + "5 Find answers to specific questions \n", + "\n", + " SOFindAnswer SOTimeSaved \\\n", + "Respondent \n", + "1 3-5 times per week Stack Overflow was much faster \n", + "2 3-5 times per week Stack Overflow was much faster \n", + "3 6-10 times per week They were about the same \n", + "4 1-2 times per week Stack Overflow was much faster \n", + "5 More than 10 times per week Stack Overflow was much faster \n", + "\n", + " SOHowMuchTime SOAccount SOPartFreq \\\n", + "Respondent \n", + "1 31-60 minutes No NaN \n", + "2 11-30 minutes Yes A few times per month or weekly \n", + "3 NaN Yes Less than once per month or monthly \n", + "4 31-60 minutes Yes Less than once per month or monthly \n", + "5 NaN Yes A few times per month or weekly \n", + "\n", + " SOJobs \\\n", + "Respondent \n", + "1 No, I didn't know that Stack Overflow had a jo... \n", + "2 No, I knew that Stack Overflow had a job board... \n", + "3 Yes \n", + "4 Yes \n", + "5 No, I knew that Stack Overflow had a job board... \n", + "\n", + " EntTeams \\\n", + "Respondent \n", + "1 No, and I don't know what those are \n", + "2 No, and I don't know what those are \n", + "3 No, I've heard of them, but I am not part of a... \n", + "4 No, and I don't know what those are \n", + "5 No, I've heard of them, but I am not part of a... \n", + "\n", + " SOComm WelcomeChange \\\n", + "Respondent \n", + "1 Neutral Just as welcome now as I felt last year \n", + "2 Yes, somewhat Just as welcome now as I felt last year \n", + "3 Neutral Just as welcome now as I felt last year \n", + "4 No, not really Just as welcome now as I felt last year \n", + "5 Yes, definitely Just as welcome now as I felt last year \n", + "\n", + " SONewContent Age Gender \\\n", + "Respondent \n", + "1 Tech articles written by other developers;Indu... 14.0 Man \n", + "2 Tech articles written by other developers;Indu... 19.0 Man \n", + "3 Tech meetups or events in your area;Courses on... 28.0 Man \n", + "4 Tech articles written by other developers;Indu... 22.0 Man \n", + "5 Tech meetups or events in your area;Courses on... 30.0 Man \n", + "\n", + " Trans Sexuality \\\n", + "Respondent \n", + "1 No Straight / Heterosexual \n", + "2 No Straight / Heterosexual \n", + "3 No Straight / Heterosexual \n", + "4 No Straight / Heterosexual \n", + "5 No Straight / Heterosexual \n", + "\n", + " Ethnicity Dependents \\\n", + "Respondent \n", + "1 NaN No \n", + "2 NaN No \n", + "3 NaN Yes \n", + "4 White or of European descent No \n", + "5 White or of European descent;Multiracial No \n", + "\n", + " SurveyLength SurveyEase \n", + "Respondent \n", + "1 Appropriate in length Neither easy nor difficult \n", + "2 Appropriate in length Neither easy nor difficult \n", + "3 Appropriate in length Neither easy nor difficult \n", + "4 Appropriate in length Easy \n", + "5 Appropriate in length Easy " + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df.head()" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
MainBranchHobbyistOpenSourcerOpenSourceEmploymentCountryStudentEdLevelUndergradMajorEduOtherOrgSizeDevTypeYearsCodeAge1stCodeYearsCodeProCareerSatJobSatMgrIdiotMgrMoneyMgrWantJobSeekLastHireDateLastIntFizzBuzzJobFactorsResumeUpdateCurrencySymbolCurrencyDescCompTotalCompFreqConvertedCompWorkWeekHrsWorkPlanWorkChallengeWorkRemoteWorkLocImpSynCodeRevCodeRevHrsUnitTestsPurchaseHowPurchaseWhatLanguageWorkedWithLanguageDesireNextYearDatabaseWorkedWithDatabaseDesireNextYearPlatformWorkedWithPlatformDesireNextYearWebFrameWorkedWithWebFrameDesireNextYearMiscTechWorkedWithMiscTechDesireNextYearDevEnvironOpSysContainersBlockchainOrgBlockchainIsBetterLifeITpersonOffOnSocialMediaExtraversionScreenNameSOVisit1stSOVisitFreqSOVisitToSOFindAnswerSOTimeSavedSOHowMuchTimeSOAccountSOPartFreqSOJobsEntTeamsSOCommWelcomeChangeSONewContentAgeGenderTransSexualityEthnicityDependentsSurveyLengthSurveyEase
Respondent
8I code primarily as a hobbyYesLess than once per yearOSS is, on average, of HIGHER quality than pro...Not employed, but looking for workIndiaNaNBachelor’s degree (BA, BS, B.Eng., etc.)Computer science, computer engineering, or sof...Taught yourself a new language, framework, or ...NaNDeveloper, back-end;Engineer, site reliability816NaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNBash/Shell/PowerShell;C;C++;HTML/CSS;Java;Java...Bash/Shell/PowerShell;C;C++;Elixir;Erlang;Go;P...Cassandra;Elasticsearch;MongoDB;MySQL;Oracle;R...Cassandra;DynamoDB;Elasticsearch;Firebase;Mong...AWS;Docker;Heroku;Linux;MacOS;SlackAndroid;Arduino;AWS;Docker;Google Cloud Platfo...Express;Flask;React.js;SpringDjango;Express;Flask;React.js;Vue.jsHadoop;Node.js;PandasAnsible;Apache Spark;Chef;Hadoop;Node.js;Panda...Atom;IntelliJ;IPython / Jupyter;PyCharm;Visual...Linux-basedDevelopment;Testing;Production;Outside of work...NaNUseful across many domains and could change ma...YesSIGHYesYouTubeIn real life (in person)Handle2012A few times per weekFind answers to specific questions;Learn how t...Less than once per weekStack Overflow was slightly faster11-30 minutesYesLess than once per month or monthlyYesNo, and I don't know what those areYes, definitelyA lot more welcome now than last yearTech articles written by other developers;Indu...24.0ManNoStraight / HeterosexualNaNNaNAppropriate in lengthNeither easy nor difficult
10I am a developer by professionYesOnce a month or more oftenOSS is, on average, of HIGHER quality than pro...Employed full-timeIndiaNoMaster’s degree (MA, MS, M.Eng., MBA, etc.)NaNNaN10,000 or more employeesData or business analyst;Data scientist or mac...122010Slightly dissatisfiedSlightly dissatisfiedSomewhat confidentYesYesI’m not actively looking, but I am open to new...3-4 years agoNaNNoLanguages, frameworks, and other technologies ...NaNINRIndian rupee950000.0Yearly13293.070.0There's no schedule or spec; I work on what se...NaNA few days each monthHomeFar above averageYes, because I see value in code review4.0Yes, it's part of our processNaNNaNC#;Go;JavaScript;Python;R;SQLC#;Go;JavaScript;Kotlin;Python;R;SQLElasticsearch;MongoDB;Microsoft SQL Server;MyS...Elasticsearch;MongoDB;Microsoft SQL ServerLinux;WindowsAndroid;Linux;Raspberry Pi;WindowsAngular/Angular.js;ASP.NET;Django;Express;Flas...Angular/Angular.js;ASP.NET;Django;Express;Flas....NET;Node.js;Pandas;Torch/PyTorch.NET;Node.js;TensorFlow;Torch/PyTorchAndroid Studio;Eclipse;IPython / Jupyter;Notep...WindowsNaNNot at allUseful for immutable record keeping outside of...NoYesYesYouTubeNeitherScreen NameNaNMultiple times per dayFind answers to specific questions;Get a sense...3-5 times per weekThey were about the sameNaNYesA few times per month or weeklyYesNo, and I don't know what those areYes, somewhatSomewhat less welcome now than last yearTech articles written by other developers;Tech...NaNNaNNaNNaNNaNYesToo longDifficult
15I am a student who is learning to codeYesNeverOSS is, on average, of HIGHER quality than pro...Not employed, but looking for workIndiaYes, full-timeSecondary school (e.g. American high school, G...NaNTaken an online course in programming or softw...NaNStudent313NaNNaNNaNNaNNaNNaNI’m not actively looking, but I am open to new...I've never had a jobNaNNaNIndustry that I'd be working in;Languages, fra...Something else changed (education, award, medi...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNAssembly;Bash/Shell/PowerShell;C;C++;HTML/CSS;...Assembly;Bash/Shell/PowerShell;C;C++;C#;Go;HTM...MariaDB;MySQL;Oracle;SQLiteMariaDB;MongoDB;Microsoft SQL Server;MySQL;Ora...Linux;WindowsAndroid;Google Cloud Platform;iOS;Linux;MacOS;...NaNAngular/Angular.js;ASP.NET;Django;Drupal;jQuer...NaN.NET;.NET Core;Node.js;TensorFlow;Unity 3D;Unr...Atom;NetBeans;Notepad++;Sublime Text;VimLinux-basedDevelopmentNaNNaNYesYesWhat?YouTubeIn real life (in person)NaN2018Daily or almost dailyFind answers to specific questions;Learn how t...More than 10 times per weekThey were about the sameNaNYesLess than once per month or monthlyYesNo, I've heard of them, but I am not part of a...Yes, somewhatJust as welcome now as I felt last yearTech articles written by other developers;Indu...20.0ManNoNaNNaNYesToo longNeither easy nor difficult
50I am a developer by professionYesOnce a month or more oftenOSS is, on average, of LOWER quality than prop...Employed full-timeIndiaNoBachelor’s degree (BA, BS, B.Eng., etc.)Another engineering discipline (ex. civil, ele...Received on-the-job training in software devel...10,000 or more employeesDeveloper, back-end;DevOps specialist7152Slightly satisfiedVery satisfiedVery confidentNot sureYesI’m not actively looking, but I am open to new...1-2 years agoWrite code by hand (e.g., on a whiteboard);Int...NoSpecific department or team I'd be working on;...I was preparing for a job searchINRIndian rupee400000.0Yearly5597.07.0There is a schedule and/or spec (made by me or...Meetings;Time spent commutingLess than once per month / NeverOther place, such as a coworking space or cafeAverageNoNaNYes, it's not part of our process but the deve...The CTO, CIO, or other management purchase new...I have little or no influenceBash/Shell/PowerShell;C;C++;HTML/CSS;Java;Java...HTML/CSS;JavaScript;PythonElasticsearch;Firebase;MariaDB;MongoDB;MySQL;O...Firebase;PostgreSQL;Redis;Other(s):Arduino;AWS;Heroku;Linux;MacOS;Raspberry Pi;Wo...AWS;Docker;Heroku;Kubernetes;Linux;MacOS;WordP...Django;Express;Flask;jQueryExpress;Flask;jQuery;React.js;Vue.jsNode.jsNode.jsNotepad++;Visual Studio CodeMacOSTestingNot at allUseful for immutable record keeping outside of...YesAlso YesWhat?YouTubeIn real life (in person)Username2012Daily or almost dailyFind answers to specific questions;Learn how t...3-5 times per weekStack Overflow was slightly faster11-30 minutesYesLess than once per month or monthlyNo, I knew that Stack Overflow had a job board...No, and I don't know what those areYes, definitelyJust as welcome now as I felt last yearTech articles written by other developers;Tech...23.0ManNoNaNSouth AsianNoToo longEasy
65I am a developer by professionYesNeverNaNEmployed full-timeIndiaNoBachelor’s degree (BA, BS, B.Eng., etc.)Information systems, information technology, o...NaN20 to 99 employeesDeveloper, front-end;Developer, mobile2172Very satisfiedVery satisfiedVery confidentNoNot sureI’m not actively looking, but I am open to new...Less than a year agoWrite any code;Solve a brain-teaser style puzz...NoLanguages, frameworks, and other technologies ...My job status changed (promotion, new job, etc.)INRIndian rupeeNaNMonthlyNaN48.0There's no schedule or spec; I work on what se...NaNAbout half the timeOfficeAverageYes, because I see value in code reviewNaNYes, it's not part of our process but the deve...Not sureNaNAssembly;C;C++;C#;HTML/CSS;JavaKotlinFirebase;MySQL;Oracle;SQLiteFirebase;SQLiteAndroidAndroidASP.NETNaNNaNNaNAndroid Studio;IntelliJLinux-basedNaNNaNNaNYesYesWhat?WhatsAppIn real life (in person)NaN2017Multiple times per dayFind answers to specific questionsMore than 10 times per weekStack Overflow was slightly faster11-30 minutesYesA few times per weekNo, I knew that Stack Overflow had a job board...No, and I don't know what those areNot sureA lot more welcome now than last yearNaN21.0ManNoNaNNaNYesAppropriate in lengthNeither easy nor difficult
\n", + "
" + ], + "text/plain": [ + " MainBranch Hobbyist \\\n", + "Respondent \n", + "8 I code primarily as a hobby Yes \n", + "10 I am a developer by profession Yes \n", + "15 I am a student who is learning to code Yes \n", + "50 I am a developer by profession Yes \n", + "65 I am a developer by profession Yes \n", + "\n", + " OpenSourcer \\\n", + "Respondent \n", + "8 Less than once per year \n", + "10 Once a month or more often \n", + "15 Never \n", + "50 Once a month or more often \n", + "65 Never \n", + "\n", + " OpenSource \\\n", + "Respondent \n", + "8 OSS is, on average, of HIGHER quality than pro... \n", + "10 OSS is, on average, of HIGHER quality than pro... \n", + "15 OSS is, on average, of HIGHER quality than pro... \n", + "50 OSS is, on average, of LOWER quality than prop... \n", + "65 NaN \n", + "\n", + " Employment Country Student \\\n", + "Respondent \n", + "8 Not employed, but looking for work India NaN \n", + "10 Employed full-time India No \n", + "15 Not employed, but looking for work India Yes, full-time \n", + "50 Employed full-time India No \n", + "65 Employed full-time India No \n", + "\n", + " EdLevel \\\n", + "Respondent \n", + "8 Bachelor’s degree (BA, BS, B.Eng., etc.) \n", + "10 Master’s degree (MA, MS, M.Eng., MBA, etc.) \n", + "15 Secondary school (e.g. American high school, G... \n", + "50 Bachelor’s degree (BA, BS, B.Eng., etc.) \n", + "65 Bachelor’s degree (BA, BS, B.Eng., etc.) \n", + "\n", + " UndergradMajor \\\n", + "Respondent \n", + "8 Computer science, computer engineering, or sof... \n", + "10 NaN \n", + "15 NaN \n", + "50 Another engineering discipline (ex. civil, ele... \n", + "65 Information systems, information technology, o... \n", + "\n", + " EduOther \\\n", + "Respondent \n", + "8 Taught yourself a new language, framework, or ... \n", + "10 NaN \n", + "15 Taken an online course in programming or softw... \n", + "50 Received on-the-job training in software devel... \n", + "65 NaN \n", + "\n", + " OrgSize \\\n", + "Respondent \n", + "8 NaN \n", + "10 10,000 or more employees \n", + "15 NaN \n", + "50 10,000 or more employees \n", + "65 20 to 99 employees \n", + "\n", + " DevType YearsCode \\\n", + "Respondent \n", + "8 Developer, back-end;Engineer, site reliability 8 \n", + "10 Data or business analyst;Data scientist or mac... 12 \n", + "15 Student 3 \n", + "50 Developer, back-end;DevOps specialist 7 \n", + "65 Developer, front-end;Developer, mobile 2 \n", + "\n", + " Age1stCode YearsCodePro CareerSat \\\n", + "Respondent \n", + "8 16 NaN NaN \n", + "10 20 10 Slightly dissatisfied \n", + "15 13 NaN NaN \n", + "50 15 2 Slightly satisfied \n", + "65 17 2 Very satisfied \n", + "\n", + " JobSat MgrIdiot MgrMoney MgrWant \\\n", + "Respondent \n", + "8 NaN NaN NaN NaN \n", + "10 Slightly dissatisfied Somewhat confident Yes Yes \n", + "15 NaN NaN NaN NaN \n", + "50 Very satisfied Very confident Not sure Yes \n", + "65 Very satisfied Very confident No Not sure \n", + "\n", + " JobSeek \\\n", + "Respondent \n", + "8 NaN \n", + "10 I’m not actively looking, but I am open to new... \n", + "15 I’m not actively looking, but I am open to new... \n", + "50 I’m not actively looking, but I am open to new... \n", + "65 I’m not actively looking, but I am open to new... \n", + "\n", + " LastHireDate \\\n", + "Respondent \n", + "8 NaN \n", + "10 3-4 years ago \n", + "15 I've never had a job \n", + "50 1-2 years ago \n", + "65 Less than a year ago \n", + "\n", + " LastInt FizzBuzz \\\n", + "Respondent \n", + "8 NaN NaN \n", + "10 NaN No \n", + "15 NaN NaN \n", + "50 Write code by hand (e.g., on a whiteboard);Int... No \n", + "65 Write any code;Solve a brain-teaser style puzz... No \n", + "\n", + " JobFactors \\\n", + "Respondent \n", + "8 NaN \n", + "10 Languages, frameworks, and other technologies ... \n", + "15 Industry that I'd be working in;Languages, fra... \n", + "50 Specific department or team I'd be working on;... \n", + "65 Languages, frameworks, and other technologies ... \n", + "\n", + " ResumeUpdate CurrencySymbol \\\n", + "Respondent \n", + "8 NaN NaN \n", + "10 NaN INR \n", + "15 Something else changed (education, award, medi... NaN \n", + "50 I was preparing for a job search INR \n", + "65 My job status changed (promotion, new job, etc.) INR \n", + "\n", + " CurrencyDesc CompTotal CompFreq ConvertedComp WorkWeekHrs \\\n", + "Respondent \n", + "8 NaN NaN NaN NaN NaN \n", + "10 Indian rupee 950000.0 Yearly 13293.0 70.0 \n", + "15 NaN NaN NaN NaN NaN \n", + "50 Indian rupee 400000.0 Yearly 5597.0 7.0 \n", + "65 Indian rupee NaN Monthly NaN 48.0 \n", + "\n", + " WorkPlan \\\n", + "Respondent \n", + "8 NaN \n", + "10 There's no schedule or spec; I work on what se... \n", + "15 NaN \n", + "50 There is a schedule and/or spec (made by me or... \n", + "65 There's no schedule or spec; I work on what se... \n", + "\n", + " WorkChallenge WorkRemote \\\n", + "Respondent \n", + "8 NaN NaN \n", + "10 NaN A few days each month \n", + "15 NaN NaN \n", + "50 Meetings;Time spent commuting Less than once per month / Never \n", + "65 NaN About half the time \n", + "\n", + " WorkLoc ImpSyn \\\n", + "Respondent \n", + "8 NaN NaN \n", + "10 Home Far above average \n", + "15 NaN NaN \n", + "50 Other place, such as a coworking space or cafe Average \n", + "65 Office Average \n", + "\n", + " CodeRev CodeRevHrs \\\n", + "Respondent \n", + "8 NaN NaN \n", + "10 Yes, because I see value in code review 4.0 \n", + "15 NaN NaN \n", + "50 No NaN \n", + "65 Yes, because I see value in code review NaN \n", + "\n", + " UnitTests \\\n", + "Respondent \n", + "8 NaN \n", + "10 Yes, it's part of our process \n", + "15 NaN \n", + "50 Yes, it's not part of our process but the deve... \n", + "65 Yes, it's not part of our process but the deve... \n", + "\n", + " PurchaseHow \\\n", + "Respondent \n", + "8 NaN \n", + "10 NaN \n", + "15 NaN \n", + "50 The CTO, CIO, or other management purchase new... \n", + "65 Not sure \n", + "\n", + " PurchaseWhat \\\n", + "Respondent \n", + "8 NaN \n", + "10 NaN \n", + "15 NaN \n", + "50 I have little or no influence \n", + "65 NaN \n", + "\n", + " LanguageWorkedWith \\\n", + "Respondent \n", + "8 Bash/Shell/PowerShell;C;C++;HTML/CSS;Java;Java... \n", + "10 C#;Go;JavaScript;Python;R;SQL \n", + "15 Assembly;Bash/Shell/PowerShell;C;C++;HTML/CSS;... \n", + "50 Bash/Shell/PowerShell;C;C++;HTML/CSS;Java;Java... \n", + "65 Assembly;C;C++;C#;HTML/CSS;Java \n", + "\n", + " LanguageDesireNextYear \\\n", + "Respondent \n", + "8 Bash/Shell/PowerShell;C;C++;Elixir;Erlang;Go;P... \n", + "10 C#;Go;JavaScript;Kotlin;Python;R;SQL \n", + "15 Assembly;Bash/Shell/PowerShell;C;C++;C#;Go;HTM... \n", + "50 HTML/CSS;JavaScript;Python \n", + "65 Kotlin \n", + "\n", + " DatabaseWorkedWith \\\n", + "Respondent \n", + "8 Cassandra;Elasticsearch;MongoDB;MySQL;Oracle;R... \n", + "10 Elasticsearch;MongoDB;Microsoft SQL Server;MyS... \n", + "15 MariaDB;MySQL;Oracle;SQLite \n", + "50 Elasticsearch;Firebase;MariaDB;MongoDB;MySQL;O... \n", + "65 Firebase;MySQL;Oracle;SQLite \n", + "\n", + " DatabaseDesireNextYear \\\n", + "Respondent \n", + "8 Cassandra;DynamoDB;Elasticsearch;Firebase;Mong... \n", + "10 Elasticsearch;MongoDB;Microsoft SQL Server \n", + "15 MariaDB;MongoDB;Microsoft SQL Server;MySQL;Ora... \n", + "50 Firebase;PostgreSQL;Redis;Other(s): \n", + "65 Firebase;SQLite \n", + "\n", + " PlatformWorkedWith \\\n", + "Respondent \n", + "8 AWS;Docker;Heroku;Linux;MacOS;Slack \n", + "10 Linux;Windows \n", + "15 Linux;Windows \n", + "50 Arduino;AWS;Heroku;Linux;MacOS;Raspberry Pi;Wo... \n", + "65 Android \n", + "\n", + " PlatformDesireNextYear \\\n", + "Respondent \n", + "8 Android;Arduino;AWS;Docker;Google Cloud Platfo... \n", + "10 Android;Linux;Raspberry Pi;Windows \n", + "15 Android;Google Cloud Platform;iOS;Linux;MacOS;... \n", + "50 AWS;Docker;Heroku;Kubernetes;Linux;MacOS;WordP... \n", + "65 Android \n", + "\n", + " WebFrameWorkedWith \\\n", + "Respondent \n", + "8 Express;Flask;React.js;Spring \n", + "10 Angular/Angular.js;ASP.NET;Django;Express;Flas... \n", + "15 NaN \n", + "50 Django;Express;Flask;jQuery \n", + "65 ASP.NET \n", + "\n", + " WebFrameDesireNextYear \\\n", + "Respondent \n", + "8 Django;Express;Flask;React.js;Vue.js \n", + "10 Angular/Angular.js;ASP.NET;Django;Express;Flas... \n", + "15 Angular/Angular.js;ASP.NET;Django;Drupal;jQuer... \n", + "50 Express;Flask;jQuery;React.js;Vue.js \n", + "65 NaN \n", + "\n", + " MiscTechWorkedWith \\\n", + "Respondent \n", + "8 Hadoop;Node.js;Pandas \n", + "10 .NET;Node.js;Pandas;Torch/PyTorch \n", + "15 NaN \n", + "50 Node.js \n", + "65 NaN \n", + "\n", + " MiscTechDesireNextYear \\\n", + "Respondent \n", + "8 Ansible;Apache Spark;Chef;Hadoop;Node.js;Panda... \n", + "10 .NET;Node.js;TensorFlow;Torch/PyTorch \n", + "15 .NET;.NET Core;Node.js;TensorFlow;Unity 3D;Unr... \n", + "50 Node.js \n", + "65 NaN \n", + "\n", + " DevEnviron OpSys \\\n", + "Respondent \n", + "8 Atom;IntelliJ;IPython / Jupyter;PyCharm;Visual... Linux-based \n", + "10 Android Studio;Eclipse;IPython / Jupyter;Notep... Windows \n", + "15 Atom;NetBeans;Notepad++;Sublime Text;Vim Linux-based \n", + "50 Notepad++;Visual Studio Code MacOS \n", + "65 Android Studio;IntelliJ Linux-based \n", + "\n", + " Containers BlockchainOrg \\\n", + "Respondent \n", + "8 Development;Testing;Production;Outside of work... NaN \n", + "10 NaN Not at all \n", + "15 Development NaN \n", + "50 Testing Not at all \n", + "65 NaN NaN \n", + "\n", + " BlockchainIs BetterLife \\\n", + "Respondent \n", + "8 Useful across many domains and could change ma... Yes \n", + "10 Useful for immutable record keeping outside of... No \n", + "15 NaN Yes \n", + "50 Useful for immutable record keeping outside of... Yes \n", + "65 NaN Yes \n", + "\n", + " ITperson OffOn SocialMedia Extraversion \\\n", + "Respondent \n", + "8 SIGH Yes YouTube In real life (in person) \n", + "10 Yes Yes YouTube Neither \n", + "15 Yes What? YouTube In real life (in person) \n", + "50 Also Yes What? YouTube In real life (in person) \n", + "65 Yes What? WhatsApp In real life (in person) \n", + "\n", + " ScreenName SOVisit1st SOVisitFreq \\\n", + "Respondent \n", + "8 Handle 2012 A few times per week \n", + "10 Screen Name NaN Multiple times per day \n", + "15 NaN 2018 Daily or almost daily \n", + "50 Username 2012 Daily or almost daily \n", + "65 NaN 2017 Multiple times per day \n", + "\n", + " SOVisitTo \\\n", + "Respondent \n", + "8 Find answers to specific questions;Learn how t... \n", + "10 Find answers to specific questions;Get a sense... \n", + "15 Find answers to specific questions;Learn how t... \n", + "50 Find answers to specific questions;Learn how t... \n", + "65 Find answers to specific questions \n", + "\n", + " SOFindAnswer SOTimeSaved \\\n", + "Respondent \n", + "8 Less than once per week Stack Overflow was slightly faster \n", + "10 3-5 times per week They were about the same \n", + "15 More than 10 times per week They were about the same \n", + "50 3-5 times per week Stack Overflow was slightly faster \n", + "65 More than 10 times per week Stack Overflow was slightly faster \n", + "\n", + " SOHowMuchTime SOAccount SOPartFreq \\\n", + "Respondent \n", + "8 11-30 minutes Yes Less than once per month or monthly \n", + "10 NaN Yes A few times per month or weekly \n", + "15 NaN Yes Less than once per month or monthly \n", + "50 11-30 minutes Yes Less than once per month or monthly \n", + "65 11-30 minutes Yes A few times per week \n", + "\n", + " SOJobs \\\n", + "Respondent \n", + "8 Yes \n", + "10 Yes \n", + "15 Yes \n", + "50 No, I knew that Stack Overflow had a job board... \n", + "65 No, I knew that Stack Overflow had a job board... \n", + "\n", + " EntTeams \\\n", + "Respondent \n", + "8 No, and I don't know what those are \n", + "10 No, and I don't know what those are \n", + "15 No, I've heard of them, but I am not part of a... \n", + "50 No, and I don't know what those are \n", + "65 No, and I don't know what those are \n", + "\n", + " SOComm WelcomeChange \\\n", + "Respondent \n", + "8 Yes, definitely A lot more welcome now than last year \n", + "10 Yes, somewhat Somewhat less welcome now than last year \n", + "15 Yes, somewhat Just as welcome now as I felt last year \n", + "50 Yes, definitely Just as welcome now as I felt last year \n", + "65 Not sure A lot more welcome now than last year \n", + "\n", + " SONewContent Age Gender \\\n", + "Respondent \n", + "8 Tech articles written by other developers;Indu... 24.0 Man \n", + "10 Tech articles written by other developers;Tech... NaN NaN \n", + "15 Tech articles written by other developers;Indu... 20.0 Man \n", + "50 Tech articles written by other developers;Tech... 23.0 Man \n", + "65 NaN 21.0 Man \n", + "\n", + " Trans Sexuality Ethnicity Dependents \\\n", + "Respondent \n", + "8 No Straight / Heterosexual NaN NaN \n", + "10 NaN NaN NaN Yes \n", + "15 No NaN NaN Yes \n", + "50 No NaN South Asian No \n", + "65 No NaN NaN Yes \n", + "\n", + " SurveyLength SurveyEase \n", + "Respondent \n", + "8 Appropriate in length Neither easy nor difficult \n", + "10 Too long Difficult \n", + "15 Too long Neither easy nor difficult \n", + "50 Too long Easy \n", + "65 Appropriate in length Neither easy nor difficult " + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "filt = (df['Country'] == 'India')\n", + "india_df = df.loc[filt]\n", + "india_df.head()" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [], + "source": [ + "india_df.to_csv('data/modified.csv')" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [], + "source": [ + "india_df.to_csv('data/modified.tsv', sep='\\t')" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [], + "source": [ + "india_df.to_excel('data/modified.xlsx')" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [], + "source": [ + "test = pd.read_excel('data/modified.xlsx', index_col='Respondent')" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
MainBranchHobbyistOpenSourcerOpenSourceEmploymentCountryStudentEdLevelUndergradMajorEduOtherOrgSizeDevTypeYearsCodeAge1stCodeYearsCodeProCareerSatJobSatMgrIdiotMgrMoneyMgrWantJobSeekLastHireDateLastIntFizzBuzzJobFactorsResumeUpdateCurrencySymbolCurrencyDescCompTotalCompFreqConvertedCompWorkWeekHrsWorkPlanWorkChallengeWorkRemoteWorkLocImpSynCodeRevCodeRevHrsUnitTestsPurchaseHowPurchaseWhatLanguageWorkedWithLanguageDesireNextYearDatabaseWorkedWithDatabaseDesireNextYearPlatformWorkedWithPlatformDesireNextYearWebFrameWorkedWithWebFrameDesireNextYearMiscTechWorkedWithMiscTechDesireNextYearDevEnvironOpSysContainersBlockchainOrgBlockchainIsBetterLifeITpersonOffOnSocialMediaExtraversionScreenNameSOVisit1stSOVisitFreqSOVisitToSOFindAnswerSOTimeSavedSOHowMuchTimeSOAccountSOPartFreqSOJobsEntTeamsSOCommWelcomeChangeSONewContentAgeGenderTransSexualityEthnicityDependentsSurveyLengthSurveyEase
Respondent
8I code primarily as a hobbyYesLess than once per yearOSS is, on average, of HIGHER quality than pro...Not employed, but looking for workIndiaNaNBachelor’s degree (BA, BS, B.Eng., etc.)Computer science, computer engineering, or sof...Taught yourself a new language, framework, or ...NaNDeveloper, back-end;Engineer, site reliability816NaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNBash/Shell/PowerShell;C;C++;HTML/CSS;Java;Java...Bash/Shell/PowerShell;C;C++;Elixir;Erlang;Go;P...Cassandra;Elasticsearch;MongoDB;MySQL;Oracle;R...Cassandra;DynamoDB;Elasticsearch;Firebase;Mong...AWS;Docker;Heroku;Linux;MacOS;SlackAndroid;Arduino;AWS;Docker;Google Cloud Platfo...Express;Flask;React.js;SpringDjango;Express;Flask;React.js;Vue.jsHadoop;Node.js;PandasAnsible;Apache Spark;Chef;Hadoop;Node.js;Panda...Atom;IntelliJ;IPython / Jupyter;PyCharm;Visual...Linux-basedDevelopment;Testing;Production;Outside of work...NaNUseful across many domains and could change ma...YesSIGHYesYouTubeIn real life (in person)Handle2012A few times per weekFind answers to specific questions;Learn how t...Less than once per weekStack Overflow was slightly faster11-30 minutesYesLess than once per month or monthlyYesNo, and I don't know what those areYes, definitelyA lot more welcome now than last yearTech articles written by other developers;Indu...24.0ManNoStraight / HeterosexualNaNNaNAppropriate in lengthNeither easy nor difficult
10I am a developer by professionYesOnce a month or more oftenOSS is, on average, of HIGHER quality than pro...Employed full-timeIndiaNoMaster’s degree (MA, MS, M.Eng., MBA, etc.)NaNNaN10,000 or more employeesData or business analyst;Data scientist or mac...122010Slightly dissatisfiedSlightly dissatisfiedSomewhat confidentYesYesI’m not actively looking, but I am open to new...3-4 years agoNaNNoLanguages, frameworks, and other technologies ...NaNINRIndian rupee950000.0Yearly13293.070.0There's no schedule or spec; I work on what se...NaNA few days each monthHomeFar above averageYes, because I see value in code review4.0Yes, it's part of our processNaNNaNC#;Go;JavaScript;Python;R;SQLC#;Go;JavaScript;Kotlin;Python;R;SQLElasticsearch;MongoDB;Microsoft SQL Server;MyS...Elasticsearch;MongoDB;Microsoft SQL ServerLinux;WindowsAndroid;Linux;Raspberry Pi;WindowsAngular/Angular.js;ASP.NET;Django;Express;Flas...Angular/Angular.js;ASP.NET;Django;Express;Flas....NET;Node.js;Pandas;Torch/PyTorch.NET;Node.js;TensorFlow;Torch/PyTorchAndroid Studio;Eclipse;IPython / Jupyter;Notep...WindowsNaNNot at allUseful for immutable record keeping outside of...NoYesYesYouTubeNeitherScreen NameNaNMultiple times per dayFind answers to specific questions;Get a sense...3-5 times per weekThey were about the sameNaNYesA few times per month or weeklyYesNo, and I don't know what those areYes, somewhatSomewhat less welcome now than last yearTech articles written by other developers;Tech...NaNNaNNaNNaNNaNYesToo longDifficult
15I am a student who is learning to codeYesNeverOSS is, on average, of HIGHER quality than pro...Not employed, but looking for workIndiaYes, full-timeSecondary school (e.g. American high school, G...NaNTaken an online course in programming or softw...NaNStudent313NaNNaNNaNNaNNaNNaNI’m not actively looking, but I am open to new...I've never had a jobNaNNaNIndustry that I'd be working in;Languages, fra...Something else changed (education, award, medi...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNAssembly;Bash/Shell/PowerShell;C;C++;HTML/CSS;...Assembly;Bash/Shell/PowerShell;C;C++;C#;Go;HTM...MariaDB;MySQL;Oracle;SQLiteMariaDB;MongoDB;Microsoft SQL Server;MySQL;Ora...Linux;WindowsAndroid;Google Cloud Platform;iOS;Linux;MacOS;...NaNAngular/Angular.js;ASP.NET;Django;Drupal;jQuer...NaN.NET;.NET Core;Node.js;TensorFlow;Unity 3D;Unr...Atom;NetBeans;Notepad++;Sublime Text;VimLinux-basedDevelopmentNaNNaNYesYesWhat?YouTubeIn real life (in person)NaN2018Daily or almost dailyFind answers to specific questions;Learn how t...More than 10 times per weekThey were about the sameNaNYesLess than once per month or monthlyYesNo, I've heard of them, but I am not part of a...Yes, somewhatJust as welcome now as I felt last yearTech articles written by other developers;Indu...20.0ManNoNaNNaNYesToo longNeither easy nor difficult
50I am a developer by professionYesOnce a month or more oftenOSS is, on average, of LOWER quality than prop...Employed full-timeIndiaNoBachelor’s degree (BA, BS, B.Eng., etc.)Another engineering discipline (ex. civil, ele...Received on-the-job training in software devel...10,000 or more employeesDeveloper, back-end;DevOps specialist7152Slightly satisfiedVery satisfiedVery confidentNot sureYesI’m not actively looking, but I am open to new...1-2 years agoWrite code by hand (e.g., on a whiteboard);Int...NoSpecific department or team I'd be working on;...I was preparing for a job searchINRIndian rupee400000.0Yearly5597.07.0There is a schedule and/or spec (made by me or...Meetings;Time spent commutingLess than once per month / NeverOther place, such as a coworking space or cafeAverageNoNaNYes, it's not part of our process but the deve...The CTO, CIO, or other management purchase new...I have little or no influenceBash/Shell/PowerShell;C;C++;HTML/CSS;Java;Java...HTML/CSS;JavaScript;PythonElasticsearch;Firebase;MariaDB;MongoDB;MySQL;O...Firebase;PostgreSQL;Redis;Other(s):Arduino;AWS;Heroku;Linux;MacOS;Raspberry Pi;Wo...AWS;Docker;Heroku;Kubernetes;Linux;MacOS;WordP...Django;Express;Flask;jQueryExpress;Flask;jQuery;React.js;Vue.jsNode.jsNode.jsNotepad++;Visual Studio CodeMacOSTestingNot at allUseful for immutable record keeping outside of...YesAlso YesWhat?YouTubeIn real life (in person)Username2012Daily or almost dailyFind answers to specific questions;Learn how t...3-5 times per weekStack Overflow was slightly faster11-30 minutesYesLess than once per month or monthlyNo, I knew that Stack Overflow had a job board...No, and I don't know what those areYes, definitelyJust as welcome now as I felt last yearTech articles written by other developers;Tech...23.0ManNoNaNSouth AsianNoToo longEasy
65I am a developer by professionYesNeverNaNEmployed full-timeIndiaNoBachelor’s degree (BA, BS, B.Eng., etc.)Information systems, information technology, o...NaN20 to 99 employeesDeveloper, front-end;Developer, mobile2172Very satisfiedVery satisfiedVery confidentNoNot sureI’m not actively looking, but I am open to new...Less than a year agoWrite any code;Solve a brain-teaser style puzz...NoLanguages, frameworks, and other technologies ...My job status changed (promotion, new job, etc.)INRIndian rupeeNaNMonthlyNaN48.0There's no schedule or spec; I work on what se...NaNAbout half the timeOfficeAverageYes, because I see value in code reviewNaNYes, it's not part of our process but the deve...Not sureNaNAssembly;C;C++;C#;HTML/CSS;JavaKotlinFirebase;MySQL;Oracle;SQLiteFirebase;SQLiteAndroidAndroidASP.NETNaNNaNNaNAndroid Studio;IntelliJLinux-basedNaNNaNNaNYesYesWhat?WhatsAppIn real life (in person)NaN2017Multiple times per dayFind answers to specific questionsMore than 10 times per weekStack Overflow was slightly faster11-30 minutesYesA few times per weekNo, I knew that Stack Overflow had a job board...No, and I don't know what those areNot sureA lot more welcome now than last yearNaN21.0ManNoNaNNaNYesAppropriate in lengthNeither easy nor difficult
\n", + "
" + ], + "text/plain": [ + " MainBranch Hobbyist \\\n", + "Respondent \n", + "8 I code primarily as a hobby Yes \n", + "10 I am a developer by profession Yes \n", + "15 I am a student who is learning to code Yes \n", + "50 I am a developer by profession Yes \n", + "65 I am a developer by profession Yes \n", + "\n", + " OpenSourcer \\\n", + "Respondent \n", + "8 Less than once per year \n", + "10 Once a month or more often \n", + "15 Never \n", + "50 Once a month or more often \n", + "65 Never \n", + "\n", + " OpenSource \\\n", + "Respondent \n", + "8 OSS is, on average, of HIGHER quality than pro... \n", + "10 OSS is, on average, of HIGHER quality than pro... \n", + "15 OSS is, on average, of HIGHER quality than pro... \n", + "50 OSS is, on average, of LOWER quality than prop... \n", + "65 NaN \n", + "\n", + " Employment Country Student \\\n", + "Respondent \n", + "8 Not employed, but looking for work India NaN \n", + "10 Employed full-time India No \n", + "15 Not employed, but looking for work India Yes, full-time \n", + "50 Employed full-time India No \n", + "65 Employed full-time India No \n", + "\n", + " EdLevel \\\n", + "Respondent \n", + "8 Bachelor’s degree (BA, BS, B.Eng., etc.) \n", + "10 Master’s degree (MA, MS, M.Eng., MBA, etc.) \n", + "15 Secondary school (e.g. American high school, G... \n", + "50 Bachelor’s degree (BA, BS, B.Eng., etc.) \n", + "65 Bachelor’s degree (BA, BS, B.Eng., etc.) \n", + "\n", + " UndergradMajor \\\n", + "Respondent \n", + "8 Computer science, computer engineering, or sof... \n", + "10 NaN \n", + "15 NaN \n", + "50 Another engineering discipline (ex. civil, ele... \n", + "65 Information systems, information technology, o... \n", + "\n", + " EduOther \\\n", + "Respondent \n", + "8 Taught yourself a new language, framework, or ... \n", + "10 NaN \n", + "15 Taken an online course in programming or softw... \n", + "50 Received on-the-job training in software devel... \n", + "65 NaN \n", + "\n", + " OrgSize \\\n", + "Respondent \n", + "8 NaN \n", + "10 10,000 or more employees \n", + "15 NaN \n", + "50 10,000 or more employees \n", + "65 20 to 99 employees \n", + "\n", + " DevType YearsCode \\\n", + "Respondent \n", + "8 Developer, back-end;Engineer, site reliability 8 \n", + "10 Data or business analyst;Data scientist or mac... 12 \n", + "15 Student 3 \n", + "50 Developer, back-end;DevOps specialist 7 \n", + "65 Developer, front-end;Developer, mobile 2 \n", + "\n", + " Age1stCode YearsCodePro CareerSat \\\n", + "Respondent \n", + "8 16 NaN NaN \n", + "10 20 10 Slightly dissatisfied \n", + "15 13 NaN NaN \n", + "50 15 2 Slightly satisfied \n", + "65 17 2 Very satisfied \n", + "\n", + " JobSat MgrIdiot MgrMoney MgrWant \\\n", + "Respondent \n", + "8 NaN NaN NaN NaN \n", + "10 Slightly dissatisfied Somewhat confident Yes Yes \n", + "15 NaN NaN NaN NaN \n", + "50 Very satisfied Very confident Not sure Yes \n", + "65 Very satisfied Very confident No Not sure \n", + "\n", + " JobSeek \\\n", + "Respondent \n", + "8 NaN \n", + "10 I’m not actively looking, but I am open to new... \n", + "15 I’m not actively looking, but I am open to new... \n", + "50 I’m not actively looking, but I am open to new... \n", + "65 I’m not actively looking, but I am open to new... \n", + "\n", + " LastHireDate \\\n", + "Respondent \n", + "8 NaN \n", + "10 3-4 years ago \n", + "15 I've never had a job \n", + "50 1-2 years ago \n", + "65 Less than a year ago \n", + "\n", + " LastInt FizzBuzz \\\n", + "Respondent \n", + "8 NaN NaN \n", + "10 NaN No \n", + "15 NaN NaN \n", + "50 Write code by hand (e.g., on a whiteboard);Int... No \n", + "65 Write any code;Solve a brain-teaser style puzz... No \n", + "\n", + " JobFactors \\\n", + "Respondent \n", + "8 NaN \n", + "10 Languages, frameworks, and other technologies ... \n", + "15 Industry that I'd be working in;Languages, fra... \n", + "50 Specific department or team I'd be working on;... \n", + "65 Languages, frameworks, and other technologies ... \n", + "\n", + " ResumeUpdate CurrencySymbol \\\n", + "Respondent \n", + "8 NaN NaN \n", + "10 NaN INR \n", + "15 Something else changed (education, award, medi... NaN \n", + "50 I was preparing for a job search INR \n", + "65 My job status changed (promotion, new job, etc.) INR \n", + "\n", + " CurrencyDesc CompTotal CompFreq ConvertedComp WorkWeekHrs \\\n", + "Respondent \n", + "8 NaN NaN NaN NaN NaN \n", + "10 Indian rupee 950000.0 Yearly 13293.0 70.0 \n", + "15 NaN NaN NaN NaN NaN \n", + "50 Indian rupee 400000.0 Yearly 5597.0 7.0 \n", + "65 Indian rupee NaN Monthly NaN 48.0 \n", + "\n", + " WorkPlan \\\n", + "Respondent \n", + "8 NaN \n", + "10 There's no schedule or spec; I work on what se... \n", + "15 NaN \n", + "50 There is a schedule and/or spec (made by me or... \n", + "65 There's no schedule or spec; I work on what se... \n", + "\n", + " WorkChallenge WorkRemote \\\n", + "Respondent \n", + "8 NaN NaN \n", + "10 NaN A few days each month \n", + "15 NaN NaN \n", + "50 Meetings;Time spent commuting Less than once per month / Never \n", + "65 NaN About half the time \n", + "\n", + " WorkLoc ImpSyn \\\n", + "Respondent \n", + "8 NaN NaN \n", + "10 Home Far above average \n", + "15 NaN NaN \n", + "50 Other place, such as a coworking space or cafe Average \n", + "65 Office Average \n", + "\n", + " CodeRev CodeRevHrs \\\n", + "Respondent \n", + "8 NaN NaN \n", + "10 Yes, because I see value in code review 4.0 \n", + "15 NaN NaN \n", + "50 No NaN \n", + "65 Yes, because I see value in code review NaN \n", + "\n", + " UnitTests \\\n", + "Respondent \n", + "8 NaN \n", + "10 Yes, it's part of our process \n", + "15 NaN \n", + "50 Yes, it's not part of our process but the deve... \n", + "65 Yes, it's not part of our process but the deve... \n", + "\n", + " PurchaseHow \\\n", + "Respondent \n", + "8 NaN \n", + "10 NaN \n", + "15 NaN \n", + "50 The CTO, CIO, or other management purchase new... \n", + "65 Not sure \n", + "\n", + " PurchaseWhat \\\n", + "Respondent \n", + "8 NaN \n", + "10 NaN \n", + "15 NaN \n", + "50 I have little or no influence \n", + "65 NaN \n", + "\n", + " LanguageWorkedWith \\\n", + "Respondent \n", + "8 Bash/Shell/PowerShell;C;C++;HTML/CSS;Java;Java... \n", + "10 C#;Go;JavaScript;Python;R;SQL \n", + "15 Assembly;Bash/Shell/PowerShell;C;C++;HTML/CSS;... \n", + "50 Bash/Shell/PowerShell;C;C++;HTML/CSS;Java;Java... \n", + "65 Assembly;C;C++;C#;HTML/CSS;Java \n", + "\n", + " LanguageDesireNextYear \\\n", + "Respondent \n", + "8 Bash/Shell/PowerShell;C;C++;Elixir;Erlang;Go;P... \n", + "10 C#;Go;JavaScript;Kotlin;Python;R;SQL \n", + "15 Assembly;Bash/Shell/PowerShell;C;C++;C#;Go;HTM... \n", + "50 HTML/CSS;JavaScript;Python \n", + "65 Kotlin \n", + "\n", + " DatabaseWorkedWith \\\n", + "Respondent \n", + "8 Cassandra;Elasticsearch;MongoDB;MySQL;Oracle;R... \n", + "10 Elasticsearch;MongoDB;Microsoft SQL Server;MyS... \n", + "15 MariaDB;MySQL;Oracle;SQLite \n", + "50 Elasticsearch;Firebase;MariaDB;MongoDB;MySQL;O... \n", + "65 Firebase;MySQL;Oracle;SQLite \n", + "\n", + " DatabaseDesireNextYear \\\n", + "Respondent \n", + "8 Cassandra;DynamoDB;Elasticsearch;Firebase;Mong... \n", + "10 Elasticsearch;MongoDB;Microsoft SQL Server \n", + "15 MariaDB;MongoDB;Microsoft SQL Server;MySQL;Ora... \n", + "50 Firebase;PostgreSQL;Redis;Other(s): \n", + "65 Firebase;SQLite \n", + "\n", + " PlatformWorkedWith \\\n", + "Respondent \n", + "8 AWS;Docker;Heroku;Linux;MacOS;Slack \n", + "10 Linux;Windows \n", + "15 Linux;Windows \n", + "50 Arduino;AWS;Heroku;Linux;MacOS;Raspberry Pi;Wo... \n", + "65 Android \n", + "\n", + " PlatformDesireNextYear \\\n", + "Respondent \n", + "8 Android;Arduino;AWS;Docker;Google Cloud Platfo... \n", + "10 Android;Linux;Raspberry Pi;Windows \n", + "15 Android;Google Cloud Platform;iOS;Linux;MacOS;... \n", + "50 AWS;Docker;Heroku;Kubernetes;Linux;MacOS;WordP... \n", + "65 Android \n", + "\n", + " WebFrameWorkedWith \\\n", + "Respondent \n", + "8 Express;Flask;React.js;Spring \n", + "10 Angular/Angular.js;ASP.NET;Django;Express;Flas... \n", + "15 NaN \n", + "50 Django;Express;Flask;jQuery \n", + "65 ASP.NET \n", + "\n", + " WebFrameDesireNextYear \\\n", + "Respondent \n", + "8 Django;Express;Flask;React.js;Vue.js \n", + "10 Angular/Angular.js;ASP.NET;Django;Express;Flas... \n", + "15 Angular/Angular.js;ASP.NET;Django;Drupal;jQuer... \n", + "50 Express;Flask;jQuery;React.js;Vue.js \n", + "65 NaN \n", + "\n", + " MiscTechWorkedWith \\\n", + "Respondent \n", + "8 Hadoop;Node.js;Pandas \n", + "10 .NET;Node.js;Pandas;Torch/PyTorch \n", + "15 NaN \n", + "50 Node.js \n", + "65 NaN \n", + "\n", + " MiscTechDesireNextYear \\\n", + "Respondent \n", + "8 Ansible;Apache Spark;Chef;Hadoop;Node.js;Panda... \n", + "10 .NET;Node.js;TensorFlow;Torch/PyTorch \n", + "15 .NET;.NET Core;Node.js;TensorFlow;Unity 3D;Unr... \n", + "50 Node.js \n", + "65 NaN \n", + "\n", + " DevEnviron OpSys \\\n", + "Respondent \n", + "8 Atom;IntelliJ;IPython / Jupyter;PyCharm;Visual... Linux-based \n", + "10 Android Studio;Eclipse;IPython / Jupyter;Notep... Windows \n", + "15 Atom;NetBeans;Notepad++;Sublime Text;Vim Linux-based \n", + "50 Notepad++;Visual Studio Code MacOS \n", + "65 Android Studio;IntelliJ Linux-based \n", + "\n", + " Containers BlockchainOrg \\\n", + "Respondent \n", + "8 Development;Testing;Production;Outside of work... NaN \n", + "10 NaN Not at all \n", + "15 Development NaN \n", + "50 Testing Not at all \n", + "65 NaN NaN \n", + "\n", + " BlockchainIs BetterLife \\\n", + "Respondent \n", + "8 Useful across many domains and could change ma... Yes \n", + "10 Useful for immutable record keeping outside of... No \n", + "15 NaN Yes \n", + "50 Useful for immutable record keeping outside of... Yes \n", + "65 NaN Yes \n", + "\n", + " ITperson OffOn SocialMedia Extraversion \\\n", + "Respondent \n", + "8 SIGH Yes YouTube In real life (in person) \n", + "10 Yes Yes YouTube Neither \n", + "15 Yes What? YouTube In real life (in person) \n", + "50 Also Yes What? YouTube In real life (in person) \n", + "65 Yes What? WhatsApp In real life (in person) \n", + "\n", + " ScreenName SOVisit1st SOVisitFreq \\\n", + "Respondent \n", + "8 Handle 2012 A few times per week \n", + "10 Screen Name NaN Multiple times per day \n", + "15 NaN 2018 Daily or almost daily \n", + "50 Username 2012 Daily or almost daily \n", + "65 NaN 2017 Multiple times per day \n", + "\n", + " SOVisitTo \\\n", + "Respondent \n", + "8 Find answers to specific questions;Learn how t... \n", + "10 Find answers to specific questions;Get a sense... \n", + "15 Find answers to specific questions;Learn how t... \n", + "50 Find answers to specific questions;Learn how t... \n", + "65 Find answers to specific questions \n", + "\n", + " SOFindAnswer SOTimeSaved \\\n", + "Respondent \n", + "8 Less than once per week Stack Overflow was slightly faster \n", + "10 3-5 times per week They were about the same \n", + "15 More than 10 times per week They were about the same \n", + "50 3-5 times per week Stack Overflow was slightly faster \n", + "65 More than 10 times per week Stack Overflow was slightly faster \n", + "\n", + " SOHowMuchTime SOAccount SOPartFreq \\\n", + "Respondent \n", + "8 11-30 minutes Yes Less than once per month or monthly \n", + "10 NaN Yes A few times per month or weekly \n", + "15 NaN Yes Less than once per month or monthly \n", + "50 11-30 minutes Yes Less than once per month or monthly \n", + "65 11-30 minutes Yes A few times per week \n", + "\n", + " SOJobs \\\n", + "Respondent \n", + "8 Yes \n", + "10 Yes \n", + "15 Yes \n", + "50 No, I knew that Stack Overflow had a job board... \n", + "65 No, I knew that Stack Overflow had a job board... \n", + "\n", + " EntTeams \\\n", + "Respondent \n", + "8 No, and I don't know what those are \n", + "10 No, and I don't know what those are \n", + "15 No, I've heard of them, but I am not part of a... \n", + "50 No, and I don't know what those are \n", + "65 No, and I don't know what those are \n", + "\n", + " SOComm WelcomeChange \\\n", + "Respondent \n", + "8 Yes, definitely A lot more welcome now than last year \n", + "10 Yes, somewhat Somewhat less welcome now than last year \n", + "15 Yes, somewhat Just as welcome now as I felt last year \n", + "50 Yes, definitely Just as welcome now as I felt last year \n", + "65 Not sure A lot more welcome now than last year \n", + "\n", + " SONewContent Age Gender \\\n", + "Respondent \n", + "8 Tech articles written by other developers;Indu... 24.0 Man \n", + "10 Tech articles written by other developers;Tech... NaN NaN \n", + "15 Tech articles written by other developers;Indu... 20.0 Man \n", + "50 Tech articles written by other developers;Tech... 23.0 Man \n", + "65 NaN 21.0 Man \n", + "\n", + " Trans Sexuality Ethnicity Dependents \\\n", + "Respondent \n", + "8 No Straight / Heterosexual NaN NaN \n", + "10 NaN NaN NaN Yes \n", + "15 No NaN NaN Yes \n", + "50 No NaN South Asian No \n", + "65 No NaN NaN Yes \n", + "\n", + " SurveyLength SurveyEase \n", + "Respondent \n", + "8 Appropriate in length Neither easy nor difficult \n", + "10 Too long Difficult \n", + "15 Too long Neither easy nor difficult \n", + "50 Too long Easy \n", + "65 Appropriate in length Neither easy nor difficult " + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "test.head()" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [], + "source": [ + "india_df.to_json('data/modified.json', orient='records', lines=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [], + "source": [ + "test = pd.read_json('data/modified.json', orient='records', lines=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
MainBranchHobbyistOpenSourcerOpenSourceEmploymentCountryStudentEdLevelUndergradMajorEduOtherOrgSizeDevTypeYearsCodeAge1stCodeYearsCodeProCareerSatJobSatMgrIdiotMgrMoneyMgrWantJobSeekLastHireDateLastIntFizzBuzzJobFactorsResumeUpdateCurrencySymbolCurrencyDescCompTotalCompFreqConvertedCompWorkWeekHrsWorkPlanWorkChallengeWorkRemoteWorkLocImpSynCodeRevCodeRevHrsUnitTestsPurchaseHowPurchaseWhatLanguageWorkedWithLanguageDesireNextYearDatabaseWorkedWithDatabaseDesireNextYearPlatformWorkedWithPlatformDesireNextYearWebFrameWorkedWithWebFrameDesireNextYearMiscTechWorkedWithMiscTechDesireNextYearDevEnvironOpSysContainersBlockchainOrgBlockchainIsBetterLifeITpersonOffOnSocialMediaExtraversionScreenNameSOVisit1stSOVisitFreqSOVisitToSOFindAnswerSOTimeSavedSOHowMuchTimeSOAccountSOPartFreqSOJobsEntTeamsSOCommWelcomeChangeSONewContentAgeGenderTransSexualityEthnicityDependentsSurveyLengthSurveyEase
0I code primarily as a hobbyYesLess than once per yearOSS is, on average, of HIGHER quality than pro...Not employed, but looking for workIndiaNoneBachelor’s degree (BA, BS, B.Eng., etc.)Computer science, computer engineering, or sof...Taught yourself a new language, framework, or ...NoneDeveloper, back-end;Engineer, site reliability816NoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNaNNoneNaNNaNNoneNoneNoneNoneNoneNoneNaNNoneNoneNoneBash/Shell/PowerShell;C;C++;HTML/CSS;Java;Java...Bash/Shell/PowerShell;C;C++;Elixir;Erlang;Go;P...Cassandra;Elasticsearch;MongoDB;MySQL;Oracle;R...Cassandra;DynamoDB;Elasticsearch;Firebase;Mong...AWS;Docker;Heroku;Linux;MacOS;SlackAndroid;Arduino;AWS;Docker;Google Cloud Platfo...Express;Flask;React.js;SpringDjango;Express;Flask;React.js;Vue.jsHadoop;Node.js;PandasAnsible;Apache Spark;Chef;Hadoop;Node.js;Panda...Atom;IntelliJ;IPython / Jupyter;PyCharm;Visual...Linux-basedDevelopment;Testing;Production;Outside of work...NoneUseful across many domains and could change ma...YesSIGHYesYouTubeIn real life (in person)Handle2012A few times per weekFind answers to specific questions;Learn how t...Less than once per weekStack Overflow was slightly faster11-30 minutesYesLess than once per month or monthlyYesNo, and I don't know what those areYes, definitelyA lot more welcome now than last yearTech articles written by other developers;Indu...24.0ManNoStraight / HeterosexualNoneNoneAppropriate in lengthNeither easy nor difficult
1I am a developer by professionYesOnce a month or more oftenOSS is, on average, of HIGHER quality than pro...Employed full-timeIndiaNoMaster’s degree (MA, MS, M.Eng., MBA, etc.)NoneNone10,000 or more employeesData or business analyst;Data scientist or mac...122010Slightly dissatisfiedSlightly dissatisfiedSomewhat confidentYesYesI’m not actively looking, but I am open to new...3-4 years agoNoneNoLanguages, frameworks, and other technologies ...NoneINRIndian rupee950000.0Yearly13293.070.0There's no schedule or spec; I work on what se...NoneA few days each monthHomeFar above averageYes, because I see value in code review4.0Yes, it's part of our processNoneNoneC#;Go;JavaScript;Python;R;SQLC#;Go;JavaScript;Kotlin;Python;R;SQLElasticsearch;MongoDB;Microsoft SQL Server;MyS...Elasticsearch;MongoDB;Microsoft SQL ServerLinux;WindowsAndroid;Linux;Raspberry Pi;WindowsAngular/Angular.js;ASP.NET;Django;Express;Flas...Angular/Angular.js;ASP.NET;Django;Express;Flas....NET;Node.js;Pandas;Torch/PyTorch.NET;Node.js;TensorFlow;Torch/PyTorchAndroid Studio;Eclipse;IPython / Jupyter;Notep...WindowsNoneNot at allUseful for immutable record keeping outside of...NoYesYesYouTubeNeitherScreen NameNoneMultiple times per dayFind answers to specific questions;Get a sense...3-5 times per weekThey were about the sameNoneYesA few times per month or weeklyYesNo, and I don't know what those areYes, somewhatSomewhat less welcome now than last yearTech articles written by other developers;Tech...NaNNoneNoneNoneNoneYesToo longDifficult
2I am a student who is learning to codeYesNeverOSS is, on average, of HIGHER quality than pro...Not employed, but looking for workIndiaYes, full-timeSecondary school (e.g. American high school, G...NoneTaken an online course in programming or softw...NoneStudent313NoneNoneNoneNoneNoneNoneI’m not actively looking, but I am open to new...I've never had a jobNoneNoneIndustry that I'd be working in;Languages, fra...Something else changed (education, award, medi...NoneNoneNaNNoneNaNNaNNoneNoneNoneNoneNoneNoneNaNNoneNoneNoneAssembly;Bash/Shell/PowerShell;C;C++;HTML/CSS;...Assembly;Bash/Shell/PowerShell;C;C++;C#;Go;HTM...MariaDB;MySQL;Oracle;SQLiteMariaDB;MongoDB;Microsoft SQL Server;MySQL;Ora...Linux;WindowsAndroid;Google Cloud Platform;iOS;Linux;MacOS;...NoneAngular/Angular.js;ASP.NET;Django;Drupal;jQuer...None.NET;.NET Core;Node.js;TensorFlow;Unity 3D;Unr...Atom;NetBeans;Notepad++;Sublime Text;VimLinux-basedDevelopmentNoneNoneYesYesWhat?YouTubeIn real life (in person)None2018Daily or almost dailyFind answers to specific questions;Learn how t...More than 10 times per weekThey were about the sameNoneYesLess than once per month or monthlyYesNo, I've heard of them, but I am not part of a...Yes, somewhatJust as welcome now as I felt last yearTech articles written by other developers;Indu...20.0ManNoNoneNoneYesToo longNeither easy nor difficult
3I am a developer by professionYesOnce a month or more oftenOSS is, on average, of LOWER quality than prop...Employed full-timeIndiaNoBachelor’s degree (BA, BS, B.Eng., etc.)Another engineering discipline (ex. civil, ele...Received on-the-job training in software devel...10,000 or more employeesDeveloper, back-end;DevOps specialist7152Slightly satisfiedVery satisfiedVery confidentNot sureYesI’m not actively looking, but I am open to new...1-2 years agoWrite code by hand (e.g., on a whiteboard);Int...NoSpecific department or team I'd be working on;...I was preparing for a job searchINRIndian rupee400000.0Yearly5597.07.0There is a schedule and/or spec (made by me or...Meetings;Time spent commutingLess than once per month / NeverOther place, such as a coworking space or cafeAverageNoNaNYes, it's not part of our process but the deve...The CTO, CIO, or other management purchase new...I have little or no influenceBash/Shell/PowerShell;C;C++;HTML/CSS;Java;Java...HTML/CSS;JavaScript;PythonElasticsearch;Firebase;MariaDB;MongoDB;MySQL;O...Firebase;PostgreSQL;Redis;Other(s):Arduino;AWS;Heroku;Linux;MacOS;Raspberry Pi;Wo...AWS;Docker;Heroku;Kubernetes;Linux;MacOS;WordP...Django;Express;Flask;jQueryExpress;Flask;jQuery;React.js;Vue.jsNode.jsNode.jsNotepad++;Visual Studio CodeMacOSTestingNot at allUseful for immutable record keeping outside of...YesAlso YesWhat?YouTubeIn real life (in person)Username2012Daily or almost dailyFind answers to specific questions;Learn how t...3-5 times per weekStack Overflow was slightly faster11-30 minutesYesLess than once per month or monthlyNo, I knew that Stack Overflow had a job board...No, and I don't know what those areYes, definitelyJust as welcome now as I felt last yearTech articles written by other developers;Tech...23.0ManNoNoneSouth AsianNoToo longEasy
4I am a developer by professionYesNeverNoneEmployed full-timeIndiaNoBachelor’s degree (BA, BS, B.Eng., etc.)Information systems, information technology, o...None20 to 99 employeesDeveloper, front-end;Developer, mobile2172Very satisfiedVery satisfiedVery confidentNoNot sureI’m not actively looking, but I am open to new...Less than a year agoWrite any code;Solve a brain-teaser style puzz...NoLanguages, frameworks, and other technologies ...My job status changed (promotion, new job, etc.)INRIndian rupeeNaNMonthlyNaN48.0There's no schedule or spec; I work on what se...NoneAbout half the timeOfficeAverageYes, because I see value in code reviewNaNYes, it's not part of our process but the deve...Not sureNoneAssembly;C;C++;C#;HTML/CSS;JavaKotlinFirebase;MySQL;Oracle;SQLiteFirebase;SQLiteAndroidAndroidASP.NETNoneNoneNoneAndroid Studio;IntelliJLinux-basedNoneNoneNoneYesYesWhat?WhatsAppIn real life (in person)None2017Multiple times per dayFind answers to specific questionsMore than 10 times per weekStack Overflow was slightly faster11-30 minutesYesA few times per weekNo, I knew that Stack Overflow had a job board...No, and I don't know what those areNot sureA lot more welcome now than last yearNone21.0ManNoNoneNoneYesAppropriate in lengthNeither easy nor difficult
\n", + "
" + ], + "text/plain": [ + " MainBranch Hobbyist \\\n", + "0 I code primarily as a hobby Yes \n", + "1 I am a developer by profession Yes \n", + "2 I am a student who is learning to code Yes \n", + "3 I am a developer by profession Yes \n", + "4 I am a developer by profession Yes \n", + "\n", + " OpenSourcer \\\n", + "0 Less than once per year \n", + "1 Once a month or more often \n", + "2 Never \n", + "3 Once a month or more often \n", + "4 Never \n", + "\n", + " OpenSource \\\n", + "0 OSS is, on average, of HIGHER quality than pro... \n", + "1 OSS is, on average, of HIGHER quality than pro... \n", + "2 OSS is, on average, of HIGHER quality than pro... \n", + "3 OSS is, on average, of LOWER quality than prop... \n", + "4 None \n", + "\n", + " Employment Country Student \\\n", + "0 Not employed, but looking for work India None \n", + "1 Employed full-time India No \n", + "2 Not employed, but looking for work India Yes, full-time \n", + "3 Employed full-time India No \n", + "4 Employed full-time India No \n", + "\n", + " EdLevel \\\n", + "0 Bachelor’s degree (BA, BS, B.Eng., etc.) \n", + "1 Master’s degree (MA, MS, M.Eng., MBA, etc.) \n", + "2 Secondary school (e.g. American high school, G... \n", + "3 Bachelor’s degree (BA, BS, B.Eng., etc.) \n", + "4 Bachelor’s degree (BA, BS, B.Eng., etc.) \n", + "\n", + " UndergradMajor \\\n", + "0 Computer science, computer engineering, or sof... \n", + "1 None \n", + "2 None \n", + "3 Another engineering discipline (ex. civil, ele... \n", + "4 Information systems, information technology, o... \n", + "\n", + " EduOther \\\n", + "0 Taught yourself a new language, framework, or ... \n", + "1 None \n", + "2 Taken an online course in programming or softw... \n", + "3 Received on-the-job training in software devel... \n", + "4 None \n", + "\n", + " OrgSize \\\n", + "0 None \n", + "1 10,000 or more employees \n", + "2 None \n", + "3 10,000 or more employees \n", + "4 20 to 99 employees \n", + "\n", + " DevType YearsCode Age1stCode \\\n", + "0 Developer, back-end;Engineer, site reliability 8 16 \n", + "1 Data or business analyst;Data scientist or mac... 12 20 \n", + "2 Student 3 13 \n", + "3 Developer, back-end;DevOps specialist 7 15 \n", + "4 Developer, front-end;Developer, mobile 2 17 \n", + "\n", + " YearsCodePro CareerSat JobSat \\\n", + "0 None None None \n", + "1 10 Slightly dissatisfied Slightly dissatisfied \n", + "2 None None None \n", + "3 2 Slightly satisfied Very satisfied \n", + "4 2 Very satisfied Very satisfied \n", + "\n", + " MgrIdiot MgrMoney MgrWant \\\n", + "0 None None None \n", + "1 Somewhat confident Yes Yes \n", + "2 None None None \n", + "3 Very confident Not sure Yes \n", + "4 Very confident No Not sure \n", + "\n", + " JobSeek LastHireDate \\\n", + "0 None None \n", + "1 I’m not actively looking, but I am open to new... 3-4 years ago \n", + "2 I’m not actively looking, but I am open to new... I've never had a job \n", + "3 I’m not actively looking, but I am open to new... 1-2 years ago \n", + "4 I’m not actively looking, but I am open to new... Less than a year ago \n", + "\n", + " LastInt FizzBuzz \\\n", + "0 None None \n", + "1 None No \n", + "2 None None \n", + "3 Write code by hand (e.g., on a whiteboard);Int... No \n", + "4 Write any code;Solve a brain-teaser style puzz... No \n", + "\n", + " JobFactors \\\n", + "0 None \n", + "1 Languages, frameworks, and other technologies ... \n", + "2 Industry that I'd be working in;Languages, fra... \n", + "3 Specific department or team I'd be working on;... \n", + "4 Languages, frameworks, and other technologies ... \n", + "\n", + " ResumeUpdate CurrencySymbol \\\n", + "0 None None \n", + "1 None INR \n", + "2 Something else changed (education, award, medi... None \n", + "3 I was preparing for a job search INR \n", + "4 My job status changed (promotion, new job, etc.) INR \n", + "\n", + " CurrencyDesc CompTotal CompFreq ConvertedComp WorkWeekHrs \\\n", + "0 None NaN None NaN NaN \n", + "1 Indian rupee 950000.0 Yearly 13293.0 70.0 \n", + "2 None NaN None NaN NaN \n", + "3 Indian rupee 400000.0 Yearly 5597.0 7.0 \n", + "4 Indian rupee NaN Monthly NaN 48.0 \n", + "\n", + " WorkPlan \\\n", + "0 None \n", + "1 There's no schedule or spec; I work on what se... \n", + "2 None \n", + "3 There is a schedule and/or spec (made by me or... \n", + "4 There's no schedule or spec; I work on what se... \n", + "\n", + " WorkChallenge WorkRemote \\\n", + "0 None None \n", + "1 None A few days each month \n", + "2 None None \n", + "3 Meetings;Time spent commuting Less than once per month / Never \n", + "4 None About half the time \n", + "\n", + " WorkLoc ImpSyn \\\n", + "0 None None \n", + "1 Home Far above average \n", + "2 None None \n", + "3 Other place, such as a coworking space or cafe Average \n", + "4 Office Average \n", + "\n", + " CodeRev CodeRevHrs \\\n", + "0 None NaN \n", + "1 Yes, because I see value in code review 4.0 \n", + "2 None NaN \n", + "3 No NaN \n", + "4 Yes, because I see value in code review NaN \n", + "\n", + " UnitTests \\\n", + "0 None \n", + "1 Yes, it's part of our process \n", + "2 None \n", + "3 Yes, it's not part of our process but the deve... \n", + "4 Yes, it's not part of our process but the deve... \n", + "\n", + " PurchaseHow \\\n", + "0 None \n", + "1 None \n", + "2 None \n", + "3 The CTO, CIO, or other management purchase new... \n", + "4 Not sure \n", + "\n", + " PurchaseWhat \\\n", + "0 None \n", + "1 None \n", + "2 None \n", + "3 I have little or no influence \n", + "4 None \n", + "\n", + " LanguageWorkedWith \\\n", + "0 Bash/Shell/PowerShell;C;C++;HTML/CSS;Java;Java... \n", + "1 C#;Go;JavaScript;Python;R;SQL \n", + "2 Assembly;Bash/Shell/PowerShell;C;C++;HTML/CSS;... \n", + "3 Bash/Shell/PowerShell;C;C++;HTML/CSS;Java;Java... \n", + "4 Assembly;C;C++;C#;HTML/CSS;Java \n", + "\n", + " LanguageDesireNextYear \\\n", + "0 Bash/Shell/PowerShell;C;C++;Elixir;Erlang;Go;P... \n", + "1 C#;Go;JavaScript;Kotlin;Python;R;SQL \n", + "2 Assembly;Bash/Shell/PowerShell;C;C++;C#;Go;HTM... \n", + "3 HTML/CSS;JavaScript;Python \n", + "4 Kotlin \n", + "\n", + " DatabaseWorkedWith \\\n", + "0 Cassandra;Elasticsearch;MongoDB;MySQL;Oracle;R... \n", + "1 Elasticsearch;MongoDB;Microsoft SQL Server;MyS... \n", + "2 MariaDB;MySQL;Oracle;SQLite \n", + "3 Elasticsearch;Firebase;MariaDB;MongoDB;MySQL;O... \n", + "4 Firebase;MySQL;Oracle;SQLite \n", + "\n", + " DatabaseDesireNextYear \\\n", + "0 Cassandra;DynamoDB;Elasticsearch;Firebase;Mong... \n", + "1 Elasticsearch;MongoDB;Microsoft SQL Server \n", + "2 MariaDB;MongoDB;Microsoft SQL Server;MySQL;Ora... \n", + "3 Firebase;PostgreSQL;Redis;Other(s): \n", + "4 Firebase;SQLite \n", + "\n", + " PlatformWorkedWith \\\n", + "0 AWS;Docker;Heroku;Linux;MacOS;Slack \n", + "1 Linux;Windows \n", + "2 Linux;Windows \n", + "3 Arduino;AWS;Heroku;Linux;MacOS;Raspberry Pi;Wo... \n", + "4 Android \n", + "\n", + " PlatformDesireNextYear \\\n", + "0 Android;Arduino;AWS;Docker;Google Cloud Platfo... \n", + "1 Android;Linux;Raspberry Pi;Windows \n", + "2 Android;Google Cloud Platform;iOS;Linux;MacOS;... \n", + "3 AWS;Docker;Heroku;Kubernetes;Linux;MacOS;WordP... \n", + "4 Android \n", + "\n", + " WebFrameWorkedWith \\\n", + "0 Express;Flask;React.js;Spring \n", + "1 Angular/Angular.js;ASP.NET;Django;Express;Flas... \n", + "2 None \n", + "3 Django;Express;Flask;jQuery \n", + "4 ASP.NET \n", + "\n", + " WebFrameDesireNextYear \\\n", + "0 Django;Express;Flask;React.js;Vue.js \n", + "1 Angular/Angular.js;ASP.NET;Django;Express;Flas... \n", + "2 Angular/Angular.js;ASP.NET;Django;Drupal;jQuer... \n", + "3 Express;Flask;jQuery;React.js;Vue.js \n", + "4 None \n", + "\n", + " MiscTechWorkedWith \\\n", + "0 Hadoop;Node.js;Pandas \n", + "1 .NET;Node.js;Pandas;Torch/PyTorch \n", + "2 None \n", + "3 Node.js \n", + "4 None \n", + "\n", + " MiscTechDesireNextYear \\\n", + "0 Ansible;Apache Spark;Chef;Hadoop;Node.js;Panda... \n", + "1 .NET;Node.js;TensorFlow;Torch/PyTorch \n", + "2 .NET;.NET Core;Node.js;TensorFlow;Unity 3D;Unr... \n", + "3 Node.js \n", + "4 None \n", + "\n", + " DevEnviron OpSys \\\n", + "0 Atom;IntelliJ;IPython / Jupyter;PyCharm;Visual... Linux-based \n", + "1 Android Studio;Eclipse;IPython / Jupyter;Notep... Windows \n", + "2 Atom;NetBeans;Notepad++;Sublime Text;Vim Linux-based \n", + "3 Notepad++;Visual Studio Code MacOS \n", + "4 Android Studio;IntelliJ Linux-based \n", + "\n", + " Containers BlockchainOrg \\\n", + "0 Development;Testing;Production;Outside of work... None \n", + "1 None Not at all \n", + "2 Development None \n", + "3 Testing Not at all \n", + "4 None None \n", + "\n", + " BlockchainIs BetterLife ITperson \\\n", + "0 Useful across many domains and could change ma... Yes SIGH \n", + "1 Useful for immutable record keeping outside of... No Yes \n", + "2 None Yes Yes \n", + "3 Useful for immutable record keeping outside of... Yes Also Yes \n", + "4 None Yes Yes \n", + "\n", + " OffOn SocialMedia Extraversion ScreenName SOVisit1st \\\n", + "0 Yes YouTube In real life (in person) Handle 2012 \n", + "1 Yes YouTube Neither Screen Name None \n", + "2 What? YouTube In real life (in person) None 2018 \n", + "3 What? YouTube In real life (in person) Username 2012 \n", + "4 What? WhatsApp In real life (in person) None 2017 \n", + "\n", + " SOVisitFreq SOVisitTo \\\n", + "0 A few times per week Find answers to specific questions;Learn how t... \n", + "1 Multiple times per day Find answers to specific questions;Get a sense... \n", + "2 Daily or almost daily Find answers to specific questions;Learn how t... \n", + "3 Daily or almost daily Find answers to specific questions;Learn how t... \n", + "4 Multiple times per day Find answers to specific questions \n", + "\n", + " SOFindAnswer SOTimeSaved \\\n", + "0 Less than once per week Stack Overflow was slightly faster \n", + "1 3-5 times per week They were about the same \n", + "2 More than 10 times per week They were about the same \n", + "3 3-5 times per week Stack Overflow was slightly faster \n", + "4 More than 10 times per week Stack Overflow was slightly faster \n", + "\n", + " SOHowMuchTime SOAccount SOPartFreq \\\n", + "0 11-30 minutes Yes Less than once per month or monthly \n", + "1 None Yes A few times per month or weekly \n", + "2 None Yes Less than once per month or monthly \n", + "3 11-30 minutes Yes Less than once per month or monthly \n", + "4 11-30 minutes Yes A few times per week \n", + "\n", + " SOJobs \\\n", + "0 Yes \n", + "1 Yes \n", + "2 Yes \n", + "3 No, I knew that Stack Overflow had a job board... \n", + "4 No, I knew that Stack Overflow had a job board... \n", + "\n", + " EntTeams SOComm \\\n", + "0 No, and I don't know what those are Yes, definitely \n", + "1 No, and I don't know what those are Yes, somewhat \n", + "2 No, I've heard of them, but I am not part of a... Yes, somewhat \n", + "3 No, and I don't know what those are Yes, definitely \n", + "4 No, and I don't know what those are Not sure \n", + "\n", + " WelcomeChange \\\n", + "0 A lot more welcome now than last year \n", + "1 Somewhat less welcome now than last year \n", + "2 Just as welcome now as I felt last year \n", + "3 Just as welcome now as I felt last year \n", + "4 A lot more welcome now than last year \n", + "\n", + " SONewContent Age Gender Trans \\\n", + "0 Tech articles written by other developers;Indu... 24.0 Man No \n", + "1 Tech articles written by other developers;Tech... NaN None None \n", + "2 Tech articles written by other developers;Indu... 20.0 Man No \n", + "3 Tech articles written by other developers;Tech... 23.0 Man No \n", + "4 None 21.0 Man No \n", + "\n", + " Sexuality Ethnicity Dependents SurveyLength \\\n", + "0 Straight / Heterosexual None None Appropriate in length \n", + "1 None None Yes Too long \n", + "2 None None Yes Too long \n", + "3 None South Asian No Too long \n", + "4 None None Yes Appropriate in length \n", + "\n", + " SurveyEase \n", + "0 Neither easy nor difficult \n", + "1 Difficult \n", + "2 Neither easy nor difficult \n", + "3 Easy \n", + "4 Neither easy nor difficult " + ] + }, + "execution_count": 15, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "test.head()" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": {}, + "outputs": [], + "source": [ + "from sqlalchemy import create_engine\n", + "import psycopg2" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": {}, + "outputs": [], + "source": [ + "engine = create_engine('postgresql://dbuser:dbpass@localhost:5432/sample_db')" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "metadata": {}, + "outputs": [], + "source": [ + "india_df.to_sql('sample_table', engine, if_exists='replace')" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "metadata": {}, + "outputs": [], + "source": [ + "sql_df = pd.read_sql('sample_table', engine, index_col='Respondent')" + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
MainBranchHobbyistOpenSourcerOpenSourceEmploymentCountryStudentEdLevelUndergradMajorEduOtherOrgSizeDevTypeYearsCodeAge1stCodeYearsCodeProCareerSatJobSatMgrIdiotMgrMoneyMgrWantJobSeekLastHireDateLastIntFizzBuzzJobFactorsResumeUpdateCurrencySymbolCurrencyDescCompTotalCompFreqConvertedCompWorkWeekHrsWorkPlanWorkChallengeWorkRemoteWorkLocImpSynCodeRevCodeRevHrsUnitTestsPurchaseHowPurchaseWhatLanguageWorkedWithLanguageDesireNextYearDatabaseWorkedWithDatabaseDesireNextYearPlatformWorkedWithPlatformDesireNextYearWebFrameWorkedWithWebFrameDesireNextYearMiscTechWorkedWithMiscTechDesireNextYearDevEnvironOpSysContainersBlockchainOrgBlockchainIsBetterLifeITpersonOffOnSocialMediaExtraversionScreenNameSOVisit1stSOVisitFreqSOVisitToSOFindAnswerSOTimeSavedSOHowMuchTimeSOAccountSOPartFreqSOJobsEntTeamsSOCommWelcomeChangeSONewContentAgeGenderTransSexualityEthnicityDependentsSurveyLengthSurveyEase
Respondent
8I code primarily as a hobbyYesLess than once per yearOSS is, on average, of HIGHER quality than pro...Not employed, but looking for workIndiaNoneBachelor’s degree (BA, BS, B.Eng., etc.)Computer science, computer engineering, or sof...Taught yourself a new language, framework, or ...NoneDeveloper, back-end;Engineer, site reliability816NoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNaNNoneNaNNaNNoneNoneNoneNoneNoneNoneNaNNoneNoneNoneBash/Shell/PowerShell;C;C++;HTML/CSS;Java;Java...Bash/Shell/PowerShell;C;C++;Elixir;Erlang;Go;P...Cassandra;Elasticsearch;MongoDB;MySQL;Oracle;R...Cassandra;DynamoDB;Elasticsearch;Firebase;Mong...AWS;Docker;Heroku;Linux;MacOS;SlackAndroid;Arduino;AWS;Docker;Google Cloud Platfo...Express;Flask;React.js;SpringDjango;Express;Flask;React.js;Vue.jsHadoop;Node.js;PandasAnsible;Apache Spark;Chef;Hadoop;Node.js;Panda...Atom;IntelliJ;IPython / Jupyter;PyCharm;Visual...Linux-basedDevelopment;Testing;Production;Outside of work...NoneUseful across many domains and could change ma...YesSIGHYesYouTubeIn real life (in person)Handle2012A few times per weekFind answers to specific questions;Learn how t...Less than once per weekStack Overflow was slightly faster11-30 minutesYesLess than once per month or monthlyYesNo, and I don't know what those areYes, definitelyA lot more welcome now than last yearTech articles written by other developers;Indu...24.0ManNoStraight / HeterosexualNoneNoneAppropriate in lengthNeither easy nor difficult
10I am a developer by professionYesOnce a month or more oftenOSS is, on average, of HIGHER quality than pro...Employed full-timeIndiaNoMaster’s degree (MA, MS, M.Eng., MBA, etc.)NoneNone10,000 or more employeesData or business analyst;Data scientist or mac...122010Slightly dissatisfiedSlightly dissatisfiedSomewhat confidentYesYesI’m not actively looking, but I am open to new...3-4 years agoNoneNoLanguages, frameworks, and other technologies ...NoneINRIndian rupee950000.0Yearly13293.070.0There's no schedule or spec; I work on what se...NoneA few days each monthHomeFar above averageYes, because I see value in code review4.0Yes, it's part of our processNoneNoneC#;Go;JavaScript;Python;R;SQLC#;Go;JavaScript;Kotlin;Python;R;SQLElasticsearch;MongoDB;Microsoft SQL Server;MyS...Elasticsearch;MongoDB;Microsoft SQL ServerLinux;WindowsAndroid;Linux;Raspberry Pi;WindowsAngular/Angular.js;ASP.NET;Django;Express;Flas...Angular/Angular.js;ASP.NET;Django;Express;Flas....NET;Node.js;Pandas;Torch/PyTorch.NET;Node.js;TensorFlow;Torch/PyTorchAndroid Studio;Eclipse;IPython / Jupyter;Notep...WindowsNoneNot at allUseful for immutable record keeping outside of...NoYesYesYouTubeNeitherScreen NameNoneMultiple times per dayFind answers to specific questions;Get a sense...3-5 times per weekThey were about the sameNoneYesA few times per month or weeklyYesNo, and I don't know what those areYes, somewhatSomewhat less welcome now than last yearTech articles written by other developers;Tech...NaNNoneNoneNoneNoneYesToo longDifficult
15I am a student who is learning to codeYesNeverOSS is, on average, of HIGHER quality than pro...Not employed, but looking for workIndiaYes, full-timeSecondary school (e.g. American high school, G...NoneTaken an online course in programming or softw...NoneStudent313NoneNoneNoneNoneNoneNoneI’m not actively looking, but I am open to new...I've never had a jobNoneNoneIndustry that I'd be working in;Languages, fra...Something else changed (education, award, medi...NoneNoneNaNNoneNaNNaNNoneNoneNoneNoneNoneNoneNaNNoneNoneNoneAssembly;Bash/Shell/PowerShell;C;C++;HTML/CSS;...Assembly;Bash/Shell/PowerShell;C;C++;C#;Go;HTM...MariaDB;MySQL;Oracle;SQLiteMariaDB;MongoDB;Microsoft SQL Server;MySQL;Ora...Linux;WindowsAndroid;Google Cloud Platform;iOS;Linux;MacOS;...NoneAngular/Angular.js;ASP.NET;Django;Drupal;jQuer...None.NET;.NET Core;Node.js;TensorFlow;Unity 3D;Unr...Atom;NetBeans;Notepad++;Sublime Text;VimLinux-basedDevelopmentNoneNoneYesYesWhat?YouTubeIn real life (in person)None2018Daily or almost dailyFind answers to specific questions;Learn how t...More than 10 times per weekThey were about the sameNoneYesLess than once per month or monthlyYesNo, I've heard of them, but I am not part of a...Yes, somewhatJust as welcome now as I felt last yearTech articles written by other developers;Indu...20.0ManNoNoneNoneYesToo longNeither easy nor difficult
50I am a developer by professionYesOnce a month or more oftenOSS is, on average, of LOWER quality than prop...Employed full-timeIndiaNoBachelor’s degree (BA, BS, B.Eng., etc.)Another engineering discipline (ex. civil, ele...Received on-the-job training in software devel...10,000 or more employeesDeveloper, back-end;DevOps specialist7152Slightly satisfiedVery satisfiedVery confidentNot sureYesI’m not actively looking, but I am open to new...1-2 years agoWrite code by hand (e.g., on a whiteboard);Int...NoSpecific department or team I'd be working on;...I was preparing for a job searchINRIndian rupee400000.0Yearly5597.07.0There is a schedule and/or spec (made by me or...Meetings;Time spent commutingLess than once per month / NeverOther place, such as a coworking space or cafeAverageNoNaNYes, it's not part of our process but the deve...The CTO, CIO, or other management purchase new...I have little or no influenceBash/Shell/PowerShell;C;C++;HTML/CSS;Java;Java...HTML/CSS;JavaScript;PythonElasticsearch;Firebase;MariaDB;MongoDB;MySQL;O...Firebase;PostgreSQL;Redis;Other(s):Arduino;AWS;Heroku;Linux;MacOS;Raspberry Pi;Wo...AWS;Docker;Heroku;Kubernetes;Linux;MacOS;WordP...Django;Express;Flask;jQueryExpress;Flask;jQuery;React.js;Vue.jsNode.jsNode.jsNotepad++;Visual Studio CodeMacOSTestingNot at allUseful for immutable record keeping outside of...YesAlso YesWhat?YouTubeIn real life (in person)Username2012Daily or almost dailyFind answers to specific questions;Learn how t...3-5 times per weekStack Overflow was slightly faster11-30 minutesYesLess than once per month or monthlyNo, I knew that Stack Overflow had a job board...No, and I don't know what those areYes, definitelyJust as welcome now as I felt last yearTech articles written by other developers;Tech...23.0ManNoNoneSouth AsianNoToo longEasy
65I am a developer by professionYesNeverNoneEmployed full-timeIndiaNoBachelor’s degree (BA, BS, B.Eng., etc.)Information systems, information technology, o...None20 to 99 employeesDeveloper, front-end;Developer, mobile2172Very satisfiedVery satisfiedVery confidentNoNot sureI’m not actively looking, but I am open to new...Less than a year agoWrite any code;Solve a brain-teaser style puzz...NoLanguages, frameworks, and other technologies ...My job status changed (promotion, new job, etc.)INRIndian rupeeNaNMonthlyNaN48.0There's no schedule or spec; I work on what se...NoneAbout half the timeOfficeAverageYes, because I see value in code reviewNaNYes, it's not part of our process but the deve...Not sureNoneAssembly;C;C++;C#;HTML/CSS;JavaKotlinFirebase;MySQL;Oracle;SQLiteFirebase;SQLiteAndroidAndroidASP.NETNoneNoneNoneAndroid Studio;IntelliJLinux-basedNoneNoneNoneYesYesWhat?WhatsAppIn real life (in person)None2017Multiple times per dayFind answers to specific questionsMore than 10 times per weekStack Overflow was slightly faster11-30 minutesYesA few times per weekNo, I knew that Stack Overflow had a job board...No, and I don't know what those areNot sureA lot more welcome now than last yearNone21.0ManNoNoneNoneYesAppropriate in lengthNeither easy nor difficult
\n", + "
" + ], + "text/plain": [ + " MainBranch Hobbyist \\\n", + "Respondent \n", + "8 I code primarily as a hobby Yes \n", + "10 I am a developer by profession Yes \n", + "15 I am a student who is learning to code Yes \n", + "50 I am a developer by profession Yes \n", + "65 I am a developer by profession Yes \n", + "\n", + " OpenSourcer \\\n", + "Respondent \n", + "8 Less than once per year \n", + "10 Once a month or more often \n", + "15 Never \n", + "50 Once a month or more often \n", + "65 Never \n", + "\n", + " OpenSource \\\n", + "Respondent \n", + "8 OSS is, on average, of HIGHER quality than pro... \n", + "10 OSS is, on average, of HIGHER quality than pro... \n", + "15 OSS is, on average, of HIGHER quality than pro... \n", + "50 OSS is, on average, of LOWER quality than prop... \n", + "65 None \n", + "\n", + " Employment Country Student \\\n", + "Respondent \n", + "8 Not employed, but looking for work India None \n", + "10 Employed full-time India No \n", + "15 Not employed, but looking for work India Yes, full-time \n", + "50 Employed full-time India No \n", + "65 Employed full-time India No \n", + "\n", + " EdLevel \\\n", + "Respondent \n", + "8 Bachelor’s degree (BA, BS, B.Eng., etc.) \n", + "10 Master’s degree (MA, MS, M.Eng., MBA, etc.) \n", + "15 Secondary school (e.g. American high school, G... \n", + "50 Bachelor’s degree (BA, BS, B.Eng., etc.) \n", + "65 Bachelor’s degree (BA, BS, B.Eng., etc.) \n", + "\n", + " UndergradMajor \\\n", + "Respondent \n", + "8 Computer science, computer engineering, or sof... \n", + "10 None \n", + "15 None \n", + "50 Another engineering discipline (ex. civil, ele... \n", + "65 Information systems, information technology, o... \n", + "\n", + " EduOther \\\n", + "Respondent \n", + "8 Taught yourself a new language, framework, or ... \n", + "10 None \n", + "15 Taken an online course in programming or softw... \n", + "50 Received on-the-job training in software devel... \n", + "65 None \n", + "\n", + " OrgSize \\\n", + "Respondent \n", + "8 None \n", + "10 10,000 or more employees \n", + "15 None \n", + "50 10,000 or more employees \n", + "65 20 to 99 employees \n", + "\n", + " DevType YearsCode \\\n", + "Respondent \n", + "8 Developer, back-end;Engineer, site reliability 8 \n", + "10 Data or business analyst;Data scientist or mac... 12 \n", + "15 Student 3 \n", + "50 Developer, back-end;DevOps specialist 7 \n", + "65 Developer, front-end;Developer, mobile 2 \n", + "\n", + " Age1stCode YearsCodePro CareerSat \\\n", + "Respondent \n", + "8 16 None None \n", + "10 20 10 Slightly dissatisfied \n", + "15 13 None None \n", + "50 15 2 Slightly satisfied \n", + "65 17 2 Very satisfied \n", + "\n", + " JobSat MgrIdiot MgrMoney MgrWant \\\n", + "Respondent \n", + "8 None None None None \n", + "10 Slightly dissatisfied Somewhat confident Yes Yes \n", + "15 None None None None \n", + "50 Very satisfied Very confident Not sure Yes \n", + "65 Very satisfied Very confident No Not sure \n", + "\n", + " JobSeek \\\n", + "Respondent \n", + "8 None \n", + "10 I’m not actively looking, but I am open to new... \n", + "15 I’m not actively looking, but I am open to new... \n", + "50 I’m not actively looking, but I am open to new... \n", + "65 I’m not actively looking, but I am open to new... \n", + "\n", + " LastHireDate \\\n", + "Respondent \n", + "8 None \n", + "10 3-4 years ago \n", + "15 I've never had a job \n", + "50 1-2 years ago \n", + "65 Less than a year ago \n", + "\n", + " LastInt FizzBuzz \\\n", + "Respondent \n", + "8 None None \n", + "10 None No \n", + "15 None None \n", + "50 Write code by hand (e.g., on a whiteboard);Int... No \n", + "65 Write any code;Solve a brain-teaser style puzz... No \n", + "\n", + " JobFactors \\\n", + "Respondent \n", + "8 None \n", + "10 Languages, frameworks, and other technologies ... \n", + "15 Industry that I'd be working in;Languages, fra... \n", + "50 Specific department or team I'd be working on;... \n", + "65 Languages, frameworks, and other technologies ... \n", + "\n", + " ResumeUpdate CurrencySymbol \\\n", + "Respondent \n", + "8 None None \n", + "10 None INR \n", + "15 Something else changed (education, award, medi... None \n", + "50 I was preparing for a job search INR \n", + "65 My job status changed (promotion, new job, etc.) INR \n", + "\n", + " CurrencyDesc CompTotal CompFreq ConvertedComp WorkWeekHrs \\\n", + "Respondent \n", + "8 None NaN None NaN NaN \n", + "10 Indian rupee 950000.0 Yearly 13293.0 70.0 \n", + "15 None NaN None NaN NaN \n", + "50 Indian rupee 400000.0 Yearly 5597.0 7.0 \n", + "65 Indian rupee NaN Monthly NaN 48.0 \n", + "\n", + " WorkPlan \\\n", + "Respondent \n", + "8 None \n", + "10 There's no schedule or spec; I work on what se... \n", + "15 None \n", + "50 There is a schedule and/or spec (made by me or... \n", + "65 There's no schedule or spec; I work on what se... \n", + "\n", + " WorkChallenge WorkRemote \\\n", + "Respondent \n", + "8 None None \n", + "10 None A few days each month \n", + "15 None None \n", + "50 Meetings;Time spent commuting Less than once per month / Never \n", + "65 None About half the time \n", + "\n", + " WorkLoc ImpSyn \\\n", + "Respondent \n", + "8 None None \n", + "10 Home Far above average \n", + "15 None None \n", + "50 Other place, such as a coworking space or cafe Average \n", + "65 Office Average \n", + "\n", + " CodeRev CodeRevHrs \\\n", + "Respondent \n", + "8 None NaN \n", + "10 Yes, because I see value in code review 4.0 \n", + "15 None NaN \n", + "50 No NaN \n", + "65 Yes, because I see value in code review NaN \n", + "\n", + " UnitTests \\\n", + "Respondent \n", + "8 None \n", + "10 Yes, it's part of our process \n", + "15 None \n", + "50 Yes, it's not part of our process but the deve... \n", + "65 Yes, it's not part of our process but the deve... \n", + "\n", + " PurchaseHow \\\n", + "Respondent \n", + "8 None \n", + "10 None \n", + "15 None \n", + "50 The CTO, CIO, or other management purchase new... \n", + "65 Not sure \n", + "\n", + " PurchaseWhat \\\n", + "Respondent \n", + "8 None \n", + "10 None \n", + "15 None \n", + "50 I have little or no influence \n", + "65 None \n", + "\n", + " LanguageWorkedWith \\\n", + "Respondent \n", + "8 Bash/Shell/PowerShell;C;C++;HTML/CSS;Java;Java... \n", + "10 C#;Go;JavaScript;Python;R;SQL \n", + "15 Assembly;Bash/Shell/PowerShell;C;C++;HTML/CSS;... \n", + "50 Bash/Shell/PowerShell;C;C++;HTML/CSS;Java;Java... \n", + "65 Assembly;C;C++;C#;HTML/CSS;Java \n", + "\n", + " LanguageDesireNextYear \\\n", + "Respondent \n", + "8 Bash/Shell/PowerShell;C;C++;Elixir;Erlang;Go;P... \n", + "10 C#;Go;JavaScript;Kotlin;Python;R;SQL \n", + "15 Assembly;Bash/Shell/PowerShell;C;C++;C#;Go;HTM... \n", + "50 HTML/CSS;JavaScript;Python \n", + "65 Kotlin \n", + "\n", + " DatabaseWorkedWith \\\n", + "Respondent \n", + "8 Cassandra;Elasticsearch;MongoDB;MySQL;Oracle;R... \n", + "10 Elasticsearch;MongoDB;Microsoft SQL Server;MyS... \n", + "15 MariaDB;MySQL;Oracle;SQLite \n", + "50 Elasticsearch;Firebase;MariaDB;MongoDB;MySQL;O... \n", + "65 Firebase;MySQL;Oracle;SQLite \n", + "\n", + " DatabaseDesireNextYear \\\n", + "Respondent \n", + "8 Cassandra;DynamoDB;Elasticsearch;Firebase;Mong... \n", + "10 Elasticsearch;MongoDB;Microsoft SQL Server \n", + "15 MariaDB;MongoDB;Microsoft SQL Server;MySQL;Ora... \n", + "50 Firebase;PostgreSQL;Redis;Other(s): \n", + "65 Firebase;SQLite \n", + "\n", + " PlatformWorkedWith \\\n", + "Respondent \n", + "8 AWS;Docker;Heroku;Linux;MacOS;Slack \n", + "10 Linux;Windows \n", + "15 Linux;Windows \n", + "50 Arduino;AWS;Heroku;Linux;MacOS;Raspberry Pi;Wo... \n", + "65 Android \n", + "\n", + " PlatformDesireNextYear \\\n", + "Respondent \n", + "8 Android;Arduino;AWS;Docker;Google Cloud Platfo... \n", + "10 Android;Linux;Raspberry Pi;Windows \n", + "15 Android;Google Cloud Platform;iOS;Linux;MacOS;... \n", + "50 AWS;Docker;Heroku;Kubernetes;Linux;MacOS;WordP... \n", + "65 Android \n", + "\n", + " WebFrameWorkedWith \\\n", + "Respondent \n", + "8 Express;Flask;React.js;Spring \n", + "10 Angular/Angular.js;ASP.NET;Django;Express;Flas... \n", + "15 None \n", + "50 Django;Express;Flask;jQuery \n", + "65 ASP.NET \n", + "\n", + " WebFrameDesireNextYear \\\n", + "Respondent \n", + "8 Django;Express;Flask;React.js;Vue.js \n", + "10 Angular/Angular.js;ASP.NET;Django;Express;Flas... \n", + "15 Angular/Angular.js;ASP.NET;Django;Drupal;jQuer... \n", + "50 Express;Flask;jQuery;React.js;Vue.js \n", + "65 None \n", + "\n", + " MiscTechWorkedWith \\\n", + "Respondent \n", + "8 Hadoop;Node.js;Pandas \n", + "10 .NET;Node.js;Pandas;Torch/PyTorch \n", + "15 None \n", + "50 Node.js \n", + "65 None \n", + "\n", + " MiscTechDesireNextYear \\\n", + "Respondent \n", + "8 Ansible;Apache Spark;Chef;Hadoop;Node.js;Panda... \n", + "10 .NET;Node.js;TensorFlow;Torch/PyTorch \n", + "15 .NET;.NET Core;Node.js;TensorFlow;Unity 3D;Unr... \n", + "50 Node.js \n", + "65 None \n", + "\n", + " DevEnviron OpSys \\\n", + "Respondent \n", + "8 Atom;IntelliJ;IPython / Jupyter;PyCharm;Visual... Linux-based \n", + "10 Android Studio;Eclipse;IPython / Jupyter;Notep... Windows \n", + "15 Atom;NetBeans;Notepad++;Sublime Text;Vim Linux-based \n", + "50 Notepad++;Visual Studio Code MacOS \n", + "65 Android Studio;IntelliJ Linux-based \n", + "\n", + " Containers BlockchainOrg \\\n", + "Respondent \n", + "8 Development;Testing;Production;Outside of work... None \n", + "10 None Not at all \n", + "15 Development None \n", + "50 Testing Not at all \n", + "65 None None \n", + "\n", + " BlockchainIs BetterLife \\\n", + "Respondent \n", + "8 Useful across many domains and could change ma... Yes \n", + "10 Useful for immutable record keeping outside of... No \n", + "15 None Yes \n", + "50 Useful for immutable record keeping outside of... Yes \n", + "65 None Yes \n", + "\n", + " ITperson OffOn SocialMedia Extraversion \\\n", + "Respondent \n", + "8 SIGH Yes YouTube In real life (in person) \n", + "10 Yes Yes YouTube Neither \n", + "15 Yes What? YouTube In real life (in person) \n", + "50 Also Yes What? YouTube In real life (in person) \n", + "65 Yes What? WhatsApp In real life (in person) \n", + "\n", + " ScreenName SOVisit1st SOVisitFreq \\\n", + "Respondent \n", + "8 Handle 2012 A few times per week \n", + "10 Screen Name None Multiple times per day \n", + "15 None 2018 Daily or almost daily \n", + "50 Username 2012 Daily or almost daily \n", + "65 None 2017 Multiple times per day \n", + "\n", + " SOVisitTo \\\n", + "Respondent \n", + "8 Find answers to specific questions;Learn how t... \n", + "10 Find answers to specific questions;Get a sense... \n", + "15 Find answers to specific questions;Learn how t... \n", + "50 Find answers to specific questions;Learn how t... \n", + "65 Find answers to specific questions \n", + "\n", + " SOFindAnswer SOTimeSaved \\\n", + "Respondent \n", + "8 Less than once per week Stack Overflow was slightly faster \n", + "10 3-5 times per week They were about the same \n", + "15 More than 10 times per week They were about the same \n", + "50 3-5 times per week Stack Overflow was slightly faster \n", + "65 More than 10 times per week Stack Overflow was slightly faster \n", + "\n", + " SOHowMuchTime SOAccount SOPartFreq \\\n", + "Respondent \n", + "8 11-30 minutes Yes Less than once per month or monthly \n", + "10 None Yes A few times per month or weekly \n", + "15 None Yes Less than once per month or monthly \n", + "50 11-30 minutes Yes Less than once per month or monthly \n", + "65 11-30 minutes Yes A few times per week \n", + "\n", + " SOJobs \\\n", + "Respondent \n", + "8 Yes \n", + "10 Yes \n", + "15 Yes \n", + "50 No, I knew that Stack Overflow had a job board... \n", + "65 No, I knew that Stack Overflow had a job board... \n", + "\n", + " EntTeams \\\n", + "Respondent \n", + "8 No, and I don't know what those are \n", + "10 No, and I don't know what those are \n", + "15 No, I've heard of them, but I am not part of a... \n", + "50 No, and I don't know what those are \n", + "65 No, and I don't know what those are \n", + "\n", + " SOComm WelcomeChange \\\n", + "Respondent \n", + "8 Yes, definitely A lot more welcome now than last year \n", + "10 Yes, somewhat Somewhat less welcome now than last year \n", + "15 Yes, somewhat Just as welcome now as I felt last year \n", + "50 Yes, definitely Just as welcome now as I felt last year \n", + "65 Not sure A lot more welcome now than last year \n", + "\n", + " SONewContent Age Gender \\\n", + "Respondent \n", + "8 Tech articles written by other developers;Indu... 24.0 Man \n", + "10 Tech articles written by other developers;Tech... NaN None \n", + "15 Tech articles written by other developers;Indu... 20.0 Man \n", + "50 Tech articles written by other developers;Tech... 23.0 Man \n", + "65 None 21.0 Man \n", + "\n", + " Trans Sexuality Ethnicity Dependents \\\n", + "Respondent \n", + "8 No Straight / Heterosexual None None \n", + "10 None None None Yes \n", + "15 No None None Yes \n", + "50 No None South Asian No \n", + "65 No None None Yes \n", + "\n", + " SurveyLength SurveyEase \n", + "Respondent \n", + "8 Appropriate in length Neither easy nor difficult \n", + "10 Too long Difficult \n", + "15 Too long Neither easy nor difficult \n", + "50 Too long Easy \n", + "65 Appropriate in length Neither easy nor difficult " + ] + }, + "execution_count": 21, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "sql_df.head()" + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "metadata": {}, + "outputs": [], + "source": [ + "sql_df = pd.read_sql_query('SELECT * FROM sample_table', engine, index_col='Respondent')" + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
MainBranchHobbyistOpenSourcerOpenSourceEmploymentCountryStudentEdLevelUndergradMajorEduOtherOrgSizeDevTypeYearsCodeAge1stCodeYearsCodeProCareerSatJobSatMgrIdiotMgrMoneyMgrWantJobSeekLastHireDateLastIntFizzBuzzJobFactorsResumeUpdateCurrencySymbolCurrencyDescCompTotalCompFreqConvertedCompWorkWeekHrsWorkPlanWorkChallengeWorkRemoteWorkLocImpSynCodeRevCodeRevHrsUnitTestsPurchaseHowPurchaseWhatLanguageWorkedWithLanguageDesireNextYearDatabaseWorkedWithDatabaseDesireNextYearPlatformWorkedWithPlatformDesireNextYearWebFrameWorkedWithWebFrameDesireNextYearMiscTechWorkedWithMiscTechDesireNextYearDevEnvironOpSysContainersBlockchainOrgBlockchainIsBetterLifeITpersonOffOnSocialMediaExtraversionScreenNameSOVisit1stSOVisitFreqSOVisitToSOFindAnswerSOTimeSavedSOHowMuchTimeSOAccountSOPartFreqSOJobsEntTeamsSOCommWelcomeChangeSONewContentAgeGenderTransSexualityEthnicityDependentsSurveyLengthSurveyEase
Respondent
8I code primarily as a hobbyYesLess than once per yearOSS is, on average, of HIGHER quality than pro...Not employed, but looking for workIndiaNoneBachelor’s degree (BA, BS, B.Eng., etc.)Computer science, computer engineering, or sof...Taught yourself a new language, framework, or ...NoneDeveloper, back-end;Engineer, site reliability816NoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNaNNoneNaNNaNNoneNoneNoneNoneNoneNoneNaNNoneNoneNoneBash/Shell/PowerShell;C;C++;HTML/CSS;Java;Java...Bash/Shell/PowerShell;C;C++;Elixir;Erlang;Go;P...Cassandra;Elasticsearch;MongoDB;MySQL;Oracle;R...Cassandra;DynamoDB;Elasticsearch;Firebase;Mong...AWS;Docker;Heroku;Linux;MacOS;SlackAndroid;Arduino;AWS;Docker;Google Cloud Platfo...Express;Flask;React.js;SpringDjango;Express;Flask;React.js;Vue.jsHadoop;Node.js;PandasAnsible;Apache Spark;Chef;Hadoop;Node.js;Panda...Atom;IntelliJ;IPython / Jupyter;PyCharm;Visual...Linux-basedDevelopment;Testing;Production;Outside of work...NoneUseful across many domains and could change ma...YesSIGHYesYouTubeIn real life (in person)Handle2012A few times per weekFind answers to specific questions;Learn how t...Less than once per weekStack Overflow was slightly faster11-30 minutesYesLess than once per month or monthlyYesNo, and I don't know what those areYes, definitelyA lot more welcome now than last yearTech articles written by other developers;Indu...24.0ManNoStraight / HeterosexualNoneNoneAppropriate in lengthNeither easy nor difficult
10I am a developer by professionYesOnce a month or more oftenOSS is, on average, of HIGHER quality than pro...Employed full-timeIndiaNoMaster’s degree (MA, MS, M.Eng., MBA, etc.)NoneNone10,000 or more employeesData or business analyst;Data scientist or mac...122010Slightly dissatisfiedSlightly dissatisfiedSomewhat confidentYesYesI’m not actively looking, but I am open to new...3-4 years agoNoneNoLanguages, frameworks, and other technologies ...NoneINRIndian rupee950000.0Yearly13293.070.0There's no schedule or spec; I work on what se...NoneA few days each monthHomeFar above averageYes, because I see value in code review4.0Yes, it's part of our processNoneNoneC#;Go;JavaScript;Python;R;SQLC#;Go;JavaScript;Kotlin;Python;R;SQLElasticsearch;MongoDB;Microsoft SQL Server;MyS...Elasticsearch;MongoDB;Microsoft SQL ServerLinux;WindowsAndroid;Linux;Raspberry Pi;WindowsAngular/Angular.js;ASP.NET;Django;Express;Flas...Angular/Angular.js;ASP.NET;Django;Express;Flas....NET;Node.js;Pandas;Torch/PyTorch.NET;Node.js;TensorFlow;Torch/PyTorchAndroid Studio;Eclipse;IPython / Jupyter;Notep...WindowsNoneNot at allUseful for immutable record keeping outside of...NoYesYesYouTubeNeitherScreen NameNoneMultiple times per dayFind answers to specific questions;Get a sense...3-5 times per weekThey were about the sameNoneYesA few times per month or weeklyYesNo, and I don't know what those areYes, somewhatSomewhat less welcome now than last yearTech articles written by other developers;Tech...NaNNoneNoneNoneNoneYesToo longDifficult
15I am a student who is learning to codeYesNeverOSS is, on average, of HIGHER quality than pro...Not employed, but looking for workIndiaYes, full-timeSecondary school (e.g. American high school, G...NoneTaken an online course in programming or softw...NoneStudent313NoneNoneNoneNoneNoneNoneI’m not actively looking, but I am open to new...I've never had a jobNoneNoneIndustry that I'd be working in;Languages, fra...Something else changed (education, award, medi...NoneNoneNaNNoneNaNNaNNoneNoneNoneNoneNoneNoneNaNNoneNoneNoneAssembly;Bash/Shell/PowerShell;C;C++;HTML/CSS;...Assembly;Bash/Shell/PowerShell;C;C++;C#;Go;HTM...MariaDB;MySQL;Oracle;SQLiteMariaDB;MongoDB;Microsoft SQL Server;MySQL;Ora...Linux;WindowsAndroid;Google Cloud Platform;iOS;Linux;MacOS;...NoneAngular/Angular.js;ASP.NET;Django;Drupal;jQuer...None.NET;.NET Core;Node.js;TensorFlow;Unity 3D;Unr...Atom;NetBeans;Notepad++;Sublime Text;VimLinux-basedDevelopmentNoneNoneYesYesWhat?YouTubeIn real life (in person)None2018Daily or almost dailyFind answers to specific questions;Learn how t...More than 10 times per weekThey were about the sameNoneYesLess than once per month or monthlyYesNo, I've heard of them, but I am not part of a...Yes, somewhatJust as welcome now as I felt last yearTech articles written by other developers;Indu...20.0ManNoNoneNoneYesToo longNeither easy nor difficult
50I am a developer by professionYesOnce a month or more oftenOSS is, on average, of LOWER quality than prop...Employed full-timeIndiaNoBachelor’s degree (BA, BS, B.Eng., etc.)Another engineering discipline (ex. civil, ele...Received on-the-job training in software devel...10,000 or more employeesDeveloper, back-end;DevOps specialist7152Slightly satisfiedVery satisfiedVery confidentNot sureYesI’m not actively looking, but I am open to new...1-2 years agoWrite code by hand (e.g., on a whiteboard);Int...NoSpecific department or team I'd be working on;...I was preparing for a job searchINRIndian rupee400000.0Yearly5597.07.0There is a schedule and/or spec (made by me or...Meetings;Time spent commutingLess than once per month / NeverOther place, such as a coworking space or cafeAverageNoNaNYes, it's not part of our process but the deve...The CTO, CIO, or other management purchase new...I have little or no influenceBash/Shell/PowerShell;C;C++;HTML/CSS;Java;Java...HTML/CSS;JavaScript;PythonElasticsearch;Firebase;MariaDB;MongoDB;MySQL;O...Firebase;PostgreSQL;Redis;Other(s):Arduino;AWS;Heroku;Linux;MacOS;Raspberry Pi;Wo...AWS;Docker;Heroku;Kubernetes;Linux;MacOS;WordP...Django;Express;Flask;jQueryExpress;Flask;jQuery;React.js;Vue.jsNode.jsNode.jsNotepad++;Visual Studio CodeMacOSTestingNot at allUseful for immutable record keeping outside of...YesAlso YesWhat?YouTubeIn real life (in person)Username2012Daily or almost dailyFind answers to specific questions;Learn how t...3-5 times per weekStack Overflow was slightly faster11-30 minutesYesLess than once per month or monthlyNo, I knew that Stack Overflow had a job board...No, and I don't know what those areYes, definitelyJust as welcome now as I felt last yearTech articles written by other developers;Tech...23.0ManNoNoneSouth AsianNoToo longEasy
65I am a developer by professionYesNeverNoneEmployed full-timeIndiaNoBachelor’s degree (BA, BS, B.Eng., etc.)Information systems, information technology, o...None20 to 99 employeesDeveloper, front-end;Developer, mobile2172Very satisfiedVery satisfiedVery confidentNoNot sureI’m not actively looking, but I am open to new...Less than a year agoWrite any code;Solve a brain-teaser style puzz...NoLanguages, frameworks, and other technologies ...My job status changed (promotion, new job, etc.)INRIndian rupeeNaNMonthlyNaN48.0There's no schedule or spec; I work on what se...NoneAbout half the timeOfficeAverageYes, because I see value in code reviewNaNYes, it's not part of our process but the deve...Not sureNoneAssembly;C;C++;C#;HTML/CSS;JavaKotlinFirebase;MySQL;Oracle;SQLiteFirebase;SQLiteAndroidAndroidASP.NETNoneNoneNoneAndroid Studio;IntelliJLinux-basedNoneNoneNoneYesYesWhat?WhatsAppIn real life (in person)None2017Multiple times per dayFind answers to specific questionsMore than 10 times per weekStack Overflow was slightly faster11-30 minutesYesA few times per weekNo, I knew that Stack Overflow had a job board...No, and I don't know what those areNot sureA lot more welcome now than last yearNone21.0ManNoNoneNoneYesAppropriate in lengthNeither easy nor difficult
\n", + "
" + ], + "text/plain": [ + " MainBranch Hobbyist \\\n", + "Respondent \n", + "8 I code primarily as a hobby Yes \n", + "10 I am a developer by profession Yes \n", + "15 I am a student who is learning to code Yes \n", + "50 I am a developer by profession Yes \n", + "65 I am a developer by profession Yes \n", + "\n", + " OpenSourcer \\\n", + "Respondent \n", + "8 Less than once per year \n", + "10 Once a month or more often \n", + "15 Never \n", + "50 Once a month or more often \n", + "65 Never \n", + "\n", + " OpenSource \\\n", + "Respondent \n", + "8 OSS is, on average, of HIGHER quality than pro... \n", + "10 OSS is, on average, of HIGHER quality than pro... \n", + "15 OSS is, on average, of HIGHER quality than pro... \n", + "50 OSS is, on average, of LOWER quality than prop... \n", + "65 None \n", + "\n", + " Employment Country Student \\\n", + "Respondent \n", + "8 Not employed, but looking for work India None \n", + "10 Employed full-time India No \n", + "15 Not employed, but looking for work India Yes, full-time \n", + "50 Employed full-time India No \n", + "65 Employed full-time India No \n", + "\n", + " EdLevel \\\n", + "Respondent \n", + "8 Bachelor’s degree (BA, BS, B.Eng., etc.) \n", + "10 Master’s degree (MA, MS, M.Eng., MBA, etc.) \n", + "15 Secondary school (e.g. American high school, G... \n", + "50 Bachelor’s degree (BA, BS, B.Eng., etc.) \n", + "65 Bachelor’s degree (BA, BS, B.Eng., etc.) \n", + "\n", + " UndergradMajor \\\n", + "Respondent \n", + "8 Computer science, computer engineering, or sof... \n", + "10 None \n", + "15 None \n", + "50 Another engineering discipline (ex. civil, ele... \n", + "65 Information systems, information technology, o... \n", + "\n", + " EduOther \\\n", + "Respondent \n", + "8 Taught yourself a new language, framework, or ... \n", + "10 None \n", + "15 Taken an online course in programming or softw... \n", + "50 Received on-the-job training in software devel... \n", + "65 None \n", + "\n", + " OrgSize \\\n", + "Respondent \n", + "8 None \n", + "10 10,000 or more employees \n", + "15 None \n", + "50 10,000 or more employees \n", + "65 20 to 99 employees \n", + "\n", + " DevType YearsCode \\\n", + "Respondent \n", + "8 Developer, back-end;Engineer, site reliability 8 \n", + "10 Data or business analyst;Data scientist or mac... 12 \n", + "15 Student 3 \n", + "50 Developer, back-end;DevOps specialist 7 \n", + "65 Developer, front-end;Developer, mobile 2 \n", + "\n", + " Age1stCode YearsCodePro CareerSat \\\n", + "Respondent \n", + "8 16 None None \n", + "10 20 10 Slightly dissatisfied \n", + "15 13 None None \n", + "50 15 2 Slightly satisfied \n", + "65 17 2 Very satisfied \n", + "\n", + " JobSat MgrIdiot MgrMoney MgrWant \\\n", + "Respondent \n", + "8 None None None None \n", + "10 Slightly dissatisfied Somewhat confident Yes Yes \n", + "15 None None None None \n", + "50 Very satisfied Very confident Not sure Yes \n", + "65 Very satisfied Very confident No Not sure \n", + "\n", + " JobSeek \\\n", + "Respondent \n", + "8 None \n", + "10 I’m not actively looking, but I am open to new... \n", + "15 I’m not actively looking, but I am open to new... \n", + "50 I’m not actively looking, but I am open to new... \n", + "65 I’m not actively looking, but I am open to new... \n", + "\n", + " LastHireDate \\\n", + "Respondent \n", + "8 None \n", + "10 3-4 years ago \n", + "15 I've never had a job \n", + "50 1-2 years ago \n", + "65 Less than a year ago \n", + "\n", + " LastInt FizzBuzz \\\n", + "Respondent \n", + "8 None None \n", + "10 None No \n", + "15 None None \n", + "50 Write code by hand (e.g., on a whiteboard);Int... No \n", + "65 Write any code;Solve a brain-teaser style puzz... No \n", + "\n", + " JobFactors \\\n", + "Respondent \n", + "8 None \n", + "10 Languages, frameworks, and other technologies ... \n", + "15 Industry that I'd be working in;Languages, fra... \n", + "50 Specific department or team I'd be working on;... \n", + "65 Languages, frameworks, and other technologies ... \n", + "\n", + " ResumeUpdate CurrencySymbol \\\n", + "Respondent \n", + "8 None None \n", + "10 None INR \n", + "15 Something else changed (education, award, medi... None \n", + "50 I was preparing for a job search INR \n", + "65 My job status changed (promotion, new job, etc.) INR \n", + "\n", + " CurrencyDesc CompTotal CompFreq ConvertedComp WorkWeekHrs \\\n", + "Respondent \n", + "8 None NaN None NaN NaN \n", + "10 Indian rupee 950000.0 Yearly 13293.0 70.0 \n", + "15 None NaN None NaN NaN \n", + "50 Indian rupee 400000.0 Yearly 5597.0 7.0 \n", + "65 Indian rupee NaN Monthly NaN 48.0 \n", + "\n", + " WorkPlan \\\n", + "Respondent \n", + "8 None \n", + "10 There's no schedule or spec; I work on what se... \n", + "15 None \n", + "50 There is a schedule and/or spec (made by me or... \n", + "65 There's no schedule or spec; I work on what se... \n", + "\n", + " WorkChallenge WorkRemote \\\n", + "Respondent \n", + "8 None None \n", + "10 None A few days each month \n", + "15 None None \n", + "50 Meetings;Time spent commuting Less than once per month / Never \n", + "65 None About half the time \n", + "\n", + " WorkLoc ImpSyn \\\n", + "Respondent \n", + "8 None None \n", + "10 Home Far above average \n", + "15 None None \n", + "50 Other place, such as a coworking space or cafe Average \n", + "65 Office Average \n", + "\n", + " CodeRev CodeRevHrs \\\n", + "Respondent \n", + "8 None NaN \n", + "10 Yes, because I see value in code review 4.0 \n", + "15 None NaN \n", + "50 No NaN \n", + "65 Yes, because I see value in code review NaN \n", + "\n", + " UnitTests \\\n", + "Respondent \n", + "8 None \n", + "10 Yes, it's part of our process \n", + "15 None \n", + "50 Yes, it's not part of our process but the deve... \n", + "65 Yes, it's not part of our process but the deve... \n", + "\n", + " PurchaseHow \\\n", + "Respondent \n", + "8 None \n", + "10 None \n", + "15 None \n", + "50 The CTO, CIO, or other management purchase new... \n", + "65 Not sure \n", + "\n", + " PurchaseWhat \\\n", + "Respondent \n", + "8 None \n", + "10 None \n", + "15 None \n", + "50 I have little or no influence \n", + "65 None \n", + "\n", + " LanguageWorkedWith \\\n", + "Respondent \n", + "8 Bash/Shell/PowerShell;C;C++;HTML/CSS;Java;Java... \n", + "10 C#;Go;JavaScript;Python;R;SQL \n", + "15 Assembly;Bash/Shell/PowerShell;C;C++;HTML/CSS;... \n", + "50 Bash/Shell/PowerShell;C;C++;HTML/CSS;Java;Java... \n", + "65 Assembly;C;C++;C#;HTML/CSS;Java \n", + "\n", + " LanguageDesireNextYear \\\n", + "Respondent \n", + "8 Bash/Shell/PowerShell;C;C++;Elixir;Erlang;Go;P... \n", + "10 C#;Go;JavaScript;Kotlin;Python;R;SQL \n", + "15 Assembly;Bash/Shell/PowerShell;C;C++;C#;Go;HTM... \n", + "50 HTML/CSS;JavaScript;Python \n", + "65 Kotlin \n", + "\n", + " DatabaseWorkedWith \\\n", + "Respondent \n", + "8 Cassandra;Elasticsearch;MongoDB;MySQL;Oracle;R... \n", + "10 Elasticsearch;MongoDB;Microsoft SQL Server;MyS... \n", + "15 MariaDB;MySQL;Oracle;SQLite \n", + "50 Elasticsearch;Firebase;MariaDB;MongoDB;MySQL;O... \n", + "65 Firebase;MySQL;Oracle;SQLite \n", + "\n", + " DatabaseDesireNextYear \\\n", + "Respondent \n", + "8 Cassandra;DynamoDB;Elasticsearch;Firebase;Mong... \n", + "10 Elasticsearch;MongoDB;Microsoft SQL Server \n", + "15 MariaDB;MongoDB;Microsoft SQL Server;MySQL;Ora... \n", + "50 Firebase;PostgreSQL;Redis;Other(s): \n", + "65 Firebase;SQLite \n", + "\n", + " PlatformWorkedWith \\\n", + "Respondent \n", + "8 AWS;Docker;Heroku;Linux;MacOS;Slack \n", + "10 Linux;Windows \n", + "15 Linux;Windows \n", + "50 Arduino;AWS;Heroku;Linux;MacOS;Raspberry Pi;Wo... \n", + "65 Android \n", + "\n", + " PlatformDesireNextYear \\\n", + "Respondent \n", + "8 Android;Arduino;AWS;Docker;Google Cloud Platfo... \n", + "10 Android;Linux;Raspberry Pi;Windows \n", + "15 Android;Google Cloud Platform;iOS;Linux;MacOS;... \n", + "50 AWS;Docker;Heroku;Kubernetes;Linux;MacOS;WordP... \n", + "65 Android \n", + "\n", + " WebFrameWorkedWith \\\n", + "Respondent \n", + "8 Express;Flask;React.js;Spring \n", + "10 Angular/Angular.js;ASP.NET;Django;Express;Flas... \n", + "15 None \n", + "50 Django;Express;Flask;jQuery \n", + "65 ASP.NET \n", + "\n", + " WebFrameDesireNextYear \\\n", + "Respondent \n", + "8 Django;Express;Flask;React.js;Vue.js \n", + "10 Angular/Angular.js;ASP.NET;Django;Express;Flas... \n", + "15 Angular/Angular.js;ASP.NET;Django;Drupal;jQuer... \n", + "50 Express;Flask;jQuery;React.js;Vue.js \n", + "65 None \n", + "\n", + " MiscTechWorkedWith \\\n", + "Respondent \n", + "8 Hadoop;Node.js;Pandas \n", + "10 .NET;Node.js;Pandas;Torch/PyTorch \n", + "15 None \n", + "50 Node.js \n", + "65 None \n", + "\n", + " MiscTechDesireNextYear \\\n", + "Respondent \n", + "8 Ansible;Apache Spark;Chef;Hadoop;Node.js;Panda... \n", + "10 .NET;Node.js;TensorFlow;Torch/PyTorch \n", + "15 .NET;.NET Core;Node.js;TensorFlow;Unity 3D;Unr... \n", + "50 Node.js \n", + "65 None \n", + "\n", + " DevEnviron OpSys \\\n", + "Respondent \n", + "8 Atom;IntelliJ;IPython / Jupyter;PyCharm;Visual... Linux-based \n", + "10 Android Studio;Eclipse;IPython / Jupyter;Notep... Windows \n", + "15 Atom;NetBeans;Notepad++;Sublime Text;Vim Linux-based \n", + "50 Notepad++;Visual Studio Code MacOS \n", + "65 Android Studio;IntelliJ Linux-based \n", + "\n", + " Containers BlockchainOrg \\\n", + "Respondent \n", + "8 Development;Testing;Production;Outside of work... None \n", + "10 None Not at all \n", + "15 Development None \n", + "50 Testing Not at all \n", + "65 None None \n", + "\n", + " BlockchainIs BetterLife \\\n", + "Respondent \n", + "8 Useful across many domains and could change ma... Yes \n", + "10 Useful for immutable record keeping outside of... No \n", + "15 None Yes \n", + "50 Useful for immutable record keeping outside of... Yes \n", + "65 None Yes \n", + "\n", + " ITperson OffOn SocialMedia Extraversion \\\n", + "Respondent \n", + "8 SIGH Yes YouTube In real life (in person) \n", + "10 Yes Yes YouTube Neither \n", + "15 Yes What? YouTube In real life (in person) \n", + "50 Also Yes What? YouTube In real life (in person) \n", + "65 Yes What? WhatsApp In real life (in person) \n", + "\n", + " ScreenName SOVisit1st SOVisitFreq \\\n", + "Respondent \n", + "8 Handle 2012 A few times per week \n", + "10 Screen Name None Multiple times per day \n", + "15 None 2018 Daily or almost daily \n", + "50 Username 2012 Daily or almost daily \n", + "65 None 2017 Multiple times per day \n", + "\n", + " SOVisitTo \\\n", + "Respondent \n", + "8 Find answers to specific questions;Learn how t... \n", + "10 Find answers to specific questions;Get a sense... \n", + "15 Find answers to specific questions;Learn how t... \n", + "50 Find answers to specific questions;Learn how t... \n", + "65 Find answers to specific questions \n", + "\n", + " SOFindAnswer SOTimeSaved \\\n", + "Respondent \n", + "8 Less than once per week Stack Overflow was slightly faster \n", + "10 3-5 times per week They were about the same \n", + "15 More than 10 times per week They were about the same \n", + "50 3-5 times per week Stack Overflow was slightly faster \n", + "65 More than 10 times per week Stack Overflow was slightly faster \n", + "\n", + " SOHowMuchTime SOAccount SOPartFreq \\\n", + "Respondent \n", + "8 11-30 minutes Yes Less than once per month or monthly \n", + "10 None Yes A few times per month or weekly \n", + "15 None Yes Less than once per month or monthly \n", + "50 11-30 minutes Yes Less than once per month or monthly \n", + "65 11-30 minutes Yes A few times per week \n", + "\n", + " SOJobs \\\n", + "Respondent \n", + "8 Yes \n", + "10 Yes \n", + "15 Yes \n", + "50 No, I knew that Stack Overflow had a job board... \n", + "65 No, I knew that Stack Overflow had a job board... \n", + "\n", + " EntTeams \\\n", + "Respondent \n", + "8 No, and I don't know what those are \n", + "10 No, and I don't know what those are \n", + "15 No, I've heard of them, but I am not part of a... \n", + "50 No, and I don't know what those are \n", + "65 No, and I don't know what those are \n", + "\n", + " SOComm WelcomeChange \\\n", + "Respondent \n", + "8 Yes, definitely A lot more welcome now than last year \n", + "10 Yes, somewhat Somewhat less welcome now than last year \n", + "15 Yes, somewhat Just as welcome now as I felt last year \n", + "50 Yes, definitely Just as welcome now as I felt last year \n", + "65 Not sure A lot more welcome now than last year \n", + "\n", + " SONewContent Age Gender \\\n", + "Respondent \n", + "8 Tech articles written by other developers;Indu... 24.0 Man \n", + "10 Tech articles written by other developers;Tech... NaN None \n", + "15 Tech articles written by other developers;Indu... 20.0 Man \n", + "50 Tech articles written by other developers;Tech... 23.0 Man \n", + "65 None 21.0 Man \n", + "\n", + " Trans Sexuality Ethnicity Dependents \\\n", + "Respondent \n", + "8 No Straight / Heterosexual None None \n", + "10 None None None Yes \n", + "15 No None None Yes \n", + "50 No None South Asian No \n", + "65 No None None Yes \n", + "\n", + " SurveyLength SurveyEase \n", + "Respondent \n", + "8 Appropriate in length Neither easy nor difficult \n", + "10 Too long Difficult \n", + "15 Too long Neither easy nor difficult \n", + "50 Too long Easy \n", + "65 Appropriate in length Neither easy nor difficult " + ] + }, + "execution_count": 23, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "sql_df.head()" + ] + }, + { + "cell_type": "code", + "execution_count": 24, + "metadata": {}, + "outputs": [], + "source": [ + "posts_df = pd.read_json('https://raw.githubusercontent.com/CoreyMSchafer/code_snippets/master/Python/Flask_Blog/snippets/posts.json')" + ] + }, + { + "cell_type": "code", + "execution_count": 25, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
titlecontentuser_id
0My Updated PostMy first updated post!\\r\\n\\r\\nThis is exciting!1
1A Second PostThis is a post from a different user...2
2Top 5 Programming LanaguagesTe melius apeirian postulant cum, labitur admo...1
3Sublime Text Tips and TricksEa vix dico modus voluptatibus, mel iudico sua...1
4Best Python IDEsElit contentiones nam no, sea ut consul adipis...1
\n", + "
" + ], + "text/plain": [ + " title \\\n", + "0 My Updated Post \n", + "1 A Second Post \n", + "2 Top 5 Programming Lanaguages \n", + "3 Sublime Text Tips and Tricks \n", + "4 Best Python IDEs \n", + "\n", + " content user_id \n", + "0 My first updated post!\\r\\n\\r\\nThis is exciting! 1 \n", + "1 This is a post from a different user... 2 \n", + "2 Te melius apeirian postulant cum, labitur admo... 1 \n", + "3 Ea vix dico modus voluptatibus, mel iudico sua... 1 \n", + "4 Elit contentiones nam no, sea ut consul adipis... 1 " + ] + }, + "execution_count": 25, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "posts_df.head()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.7.4" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/Python/Python-Lottery-Simulation/lottery.py b/Python/Python-Lottery-Simulation/lottery.py new file mode 100644 index 000000000..3fd4423e4 --- /dev/null +++ b/Python/Python-Lottery-Simulation/lottery.py @@ -0,0 +1,105 @@ +import random +import json + +white_possibles = list(range(1, 70)) +red_possibles = list(range(1, 27)) + +tickets_per_drawing = 100 +num_drawings = 15600 + +total_spent = 0 +earnings = 0 + +times_won = { + "5+P": 0, + "5": 0, + "4+P": 0, + "4": 0, + "3+P": 0, + "3": 0, + "2+P": 0, + "1+P": 0, + "P": 0, + "0": 0, +} + + +def calc_win_amt(my_numbers, winning_numbers): + win_amt = 0 + + white_matches = len(my_numbers["whites"].intersection( + winning_numbers["whites"])) + power_match = my_numbers["red"] == winning_numbers["red"] + + if white_matches == 5: + if power_match: + win_amt = 2_000_000_000 + times_won["5+P"] += 1 + else: + win_amt = 1_000_000 + times_won["5"] += 1 + elif white_matches == 4: + if power_match: + win_amt = 50_000 + times_won["4+P"] += 1 + else: + win_amt = 100 + times_won["4"] += 1 + elif white_matches == 3: + if power_match: + win_amt = 100 + times_won["3+P"] += 1 + else: + win_amt = 7 + times_won["3"] += 1 + elif white_matches == 2 and power_match: + win_amt = 7 + times_won["2+P"] += 1 + elif white_matches == 1 and power_match: + win_amt = 4 + times_won["1+P"] += 1 + elif power_match: + win_amt = 4 + times_won["P"] += 1 + else: + times_won["0"] += 1 + + return win_amt + + +# for drawing in range(num_drawings): +hit_jp = False +drawings = 0 +years = 0 +while True: + drawings += 1 + white_drawing = set(random.sample(white_possibles, k=5)) + red_drawing = random.choice(red_possibles) + + winning_numbers = {"whites": white_drawing, "red": red_drawing} + + for ticket in range(tickets_per_drawing): + total_spent += 2 + my_whites = set(random.sample(white_possibles, k=5)) + my_red = random.choice(red_possibles) + + my_numbers = {"whites": my_whites, "red": my_red} + + win_amt = calc_win_amt(my_numbers, winning_numbers) + earnings += win_amt + + if win_amt == 2_000_000_000: + hit_jp = True + break + + if drawings % 156 == 0: + years += 1 + print(f'{years} years') + + if hit_jp: + break + +print(f'Spent: ${total_spent}') +print(f'Earnings: ${earnings}') + +print(json.dumps(times_won, indent=2)) diff --git a/Python/Python-Lottery-Simulation/snippets.txt b/Python/Python-Lottery-Simulation/snippets.txt new file mode 100644 index 000000000..6771c9787 --- /dev/null +++ b/Python/Python-Lottery-Simulation/snippets.txt @@ -0,0 +1,40 @@ +times_won = { + '5+P': 0, + '5': 0, + '4+P': 0, + '4': 0, + '3+P': 0, + '3': 0, + '2+P': 0, + '1+P': 0, + 'P': 0, + '0': 0 +} + +------------------------ + +elif white_matches == 4: + if power_match: + win_amt = 50_000 + times_won['4+P'] += 1 + else: + win_amt = 100 + times_won['4'] += 1 + elif white_matches == 3: + if power_match: + win_amt = 100 + times_won['3+P'] += 1 + else: + win_amt = 7 + times_won['3'] += 1 + elif white_matches == 2 and power_match: + win_amt = 7 + times_won['2+P'] += 1 + elif white_matches == 1 and power_match: + win_amt = 4 + times_won['1+P'] += 1 + elif power_match: + win_amt = 4 + times_won['P'] += 1 + else: + times_won['0'] += 1 diff --git a/Python/YouTube-API/01-Getting-Started/yt.py b/Python/YouTube-API/01-Getting-Started/yt.py new file mode 100644 index 000000000..81556c738 --- /dev/null +++ b/Python/YouTube-API/01-Getting-Started/yt.py @@ -0,0 +1,15 @@ + +from googleapiclient.discovery import build + +api_key = '#YOURAPIKEY' + +youtube = build('youtube', 'v3', developerKey=api_key) + +request = youtube.channels().list( + part='statistics', + forUsername='schafer5' + ) + +response = request.execute() + +print(response) diff --git a/Python/YouTube-API/02-Playlist-Duration/playlist.py b/Python/YouTube-API/02-Playlist-Duration/playlist.py new file mode 100644 index 000000000..49583b4a2 --- /dev/null +++ b/Python/YouTube-API/02-Playlist-Duration/playlist.py @@ -0,0 +1,68 @@ +import os +import re +from datetime import timedelta +from googleapiclient.discovery import build + +api_key = os.environ.get('YT_API_KEY') + +youtube = build('youtube', 'v3', developerKey=api_key) + +hours_pattern = re.compile(r'(\d+)H') +minutes_pattern = re.compile(r'(\d+)M') +seconds_pattern = re.compile(r'(\d+)S') + +total_seconds = 0 + + +nextPageToken = None +while True: + pl_request = youtube.playlistItems().list( + part='contentDetails', + playlistId="PL-osiE80TeTt2d9bfVyTiXJA-UTHn6WwU", + maxResults=50, + pageToken=nextPageToken + ) + + pl_response = pl_request.execute() + + vid_ids = [] + for item in pl_response['items']: + vid_ids.append(item['contentDetails']['videoId']) + + vid_request = youtube.videos().list( + part="contentDetails", + id=','.join(vid_ids) + ) + + vid_response = vid_request.execute() + + for item in vid_response['items']: + duration = item['contentDetails']['duration'] + + hours = hours_pattern.search(duration) + minutes = minutes_pattern.search(duration) + seconds = seconds_pattern.search(duration) + + hours = int(hours.group(1)) if hours else 0 + minutes = int(minutes.group(1)) if minutes else 0 + seconds = int(seconds.group(1)) if seconds else 0 + + video_seconds = timedelta( + hours=hours, + minutes=minutes, + seconds=seconds + ).total_seconds() + + total_seconds += video_seconds + + nextPageToken = pl_response.get('nextPageToken') + + if not nextPageToken: + break + +total_seconds = int(total_seconds) + +minutes, seconds = divmod(total_seconds, 60) +hours, minutes = divmod(minutes, 60) + +print(f'{hours}:{minutes}:{seconds}') diff --git a/Python/YouTube-API/03-Most-Popular-Video-Playlist/start.py b/Python/YouTube-API/03-Most-Popular-Video-Playlist/start.py new file mode 100644 index 000000000..a76d410ff --- /dev/null +++ b/Python/YouTube-API/03-Most-Popular-Video-Playlist/start.py @@ -0,0 +1,55 @@ +import os +from googleapiclient.discovery import build + +api_key = os.environ.get('YT_API_KEY') + +youtube = build('youtube', 'v3', developerKey=api_key) + +playlist_id = 'PL8uoeex94UhHFRew8gzfFJHIpRFWyY4YW' + +videos = [] + +nextPageToken = None +while True: + pl_request = youtube.playlistItems().list( + part='contentDetails', + playlistId=playlist_id, + maxResults=50, + pageToken=nextPageToken + ) + + pl_response = pl_request.execute() + + vid_ids = [] + for item in pl_response['items']: + vid_ids.append(item['contentDetails']['videoId']) + + vid_request = youtube.videos().list( + part="statistics", + id=','.join(vid_ids) + ) + + vid_response = vid_request.execute() + + for item in vid_response['items']: + vid_views = item['statistics']['viewCount'] + + vid_id = item['id'] + yt_link = f'https://youtu.be/{vid_id}' + + videos.append( + { + 'views': int(vid_views), + 'url': yt_link + } + ) + + nextPageToken = pl_response.get('nextPageToken') + + if not nextPageToken: + break + +videos.sort(key=lambda vid: vid['views'], reverse=True) + +for video in videos[:10]: + print(video['url'], video['views'])