Files
PythonProgramozas_GKNB_MSTM…/SajatMegoldasok/panda.ipynb
2024-10-08 10:59:11 +02:00

3439 lines
144 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"**Basics!**"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [],
"source": [
"import pandas as pd"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [],
"source": [
"df = pd.read_csv('Stack/survey_results_public.csv')"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"(88883, 85)"
]
},
"execution_count": 4,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df.shape\n"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"<class 'pandas.core.frame.DataFrame'>\n",
"RangeIndex: 88883 entries, 0 to 88882\n",
"Data columns (total 85 columns):\n",
" # Column Non-Null Count Dtype \n",
"--- ------ -------------- ----- \n",
" 0 Respondent 88883 non-null int64 \n",
" 1 MainBranch 88331 non-null object \n",
" 2 Hobbyist 88883 non-null object \n",
" 3 OpenSourcer 88883 non-null object \n",
" 4 OpenSource 86842 non-null object \n",
" 5 Employment 87181 non-null object \n",
" 6 Country 88751 non-null object \n",
" 7 Student 87014 non-null object \n",
" 8 EdLevel 86390 non-null object \n",
" 9 UndergradMajor 75614 non-null object \n",
" 10 EduOther 84260 non-null object \n",
" 11 OrgSize 71791 non-null object \n",
" 12 DevType 81335 non-null object \n",
" 13 YearsCode 87938 non-null object \n",
" 14 Age1stCode 87634 non-null object \n",
" 15 YearsCodePro 74331 non-null object \n",
" 16 CareerSat 72847 non-null object \n",
" 17 JobSat 70988 non-null object \n",
" 18 MgrIdiot 61159 non-null object \n",
" 19 MgrMoney 61157 non-null object \n",
" 20 MgrWant 61232 non-null object \n",
" 21 JobSeek 80555 non-null object \n",
" 22 LastHireDate 79854 non-null object \n",
" 23 LastInt 67155 non-null object \n",
" 24 FizzBuzz 71344 non-null object \n",
" 25 JobFactors 79371 non-null object \n",
" 26 ResumeUpdate 77877 non-null object \n",
" 27 CurrencySymbol 71392 non-null object \n",
" 28 CurrencyDesc 71392 non-null object \n",
" 29 CompTotal 55945 non-null float64\n",
" 30 CompFreq 63268 non-null object \n",
" 31 ConvertedComp 55823 non-null float64\n",
" 32 WorkWeekHrs 64503 non-null float64\n",
" 33 WorkPlan 68914 non-null object \n",
" 34 WorkChallenge 68141 non-null object \n",
" 35 WorkRemote 70284 non-null object \n",
" 36 WorkLoc 70055 non-null object \n",
" 37 ImpSyn 71779 non-null object \n",
" 38 CodeRev 70390 non-null object \n",
" 39 CodeRevHrs 49790 non-null float64\n",
" 40 UnitTests 62668 non-null object \n",
" 41 PurchaseHow 61108 non-null object \n",
" 42 PurchaseWhat 62029 non-null object \n",
" 43 LanguageWorkedWith 87569 non-null object \n",
" 44 LanguageDesireNextYear 84088 non-null object \n",
" 45 DatabaseWorkedWith 76026 non-null object \n",
" 46 DatabaseDesireNextYear 69147 non-null object \n",
" 47 PlatformWorkedWith 80714 non-null object \n",
" 48 PlatformDesireNextYear 77443 non-null object \n",
" 49 WebFrameWorkedWith 65022 non-null object \n",
" 50 WebFrameDesireNextYear 62944 non-null object \n",
" 51 MiscTechWorkedWith 59586 non-null object \n",
" 52 MiscTechDesireNextYear 64511 non-null object \n",
" 53 DevEnviron 87317 non-null object \n",
" 54 OpSys 87851 non-null object \n",
" 55 Containers 85366 non-null object \n",
" 56 BlockchainOrg 48175 non-null object \n",
" 57 BlockchainIs 60165 non-null object \n",
" 58 BetterLife 86269 non-null object \n",
" 59 ITperson 87141 non-null object \n",
" 60 OffOn 86663 non-null object \n",
" 61 SocialMedia 84437 non-null object \n",
" 62 Extraversion 87305 non-null object \n",
" 63 ScreenName 80486 non-null object \n",
" 64 SOVisit1st 83877 non-null object \n",
" 65 SOVisitFreq 88263 non-null object \n",
" 66 SOVisitTo 88086 non-null object \n",
" 67 SOFindAnswer 87816 non-null object \n",
" 68 SOTimeSaved 86344 non-null object \n",
" 69 SOHowMuchTime 68378 non-null object \n",
" 70 SOAccount 87828 non-null object \n",
" 71 SOPartFreq 74692 non-null object \n",
" 72 SOJobs 88066 non-null object \n",
" 73 EntTeams 87841 non-null object \n",
" 74 SOComm 88131 non-null object \n",
" 75 WelcomeChange 85855 non-null object \n",
" 76 SONewContent 69560 non-null object \n",
" 77 Age 79210 non-null float64\n",
" 78 Gender 85406 non-null object \n",
" 79 Trans 83607 non-null object \n",
" 80 Sexuality 76147 non-null object \n",
" 81 Ethnicity 76668 non-null object \n",
" 82 Dependents 83059 non-null object \n",
" 83 SurveyLength 86984 non-null object \n",
" 84 SurveyEase 87081 non-null object \n",
"dtypes: float64(5), int64(1), object(79)\n",
"memory usage: 57.6+ MB\n"
]
}
],
"source": [
"df.info()"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>Respondent</th>\n",
" <th>MainBranch</th>\n",
" <th>Hobbyist</th>\n",
" <th>OpenSourcer</th>\n",
" <th>OpenSource</th>\n",
" <th>Employment</th>\n",
" <th>Country</th>\n",
" <th>Student</th>\n",
" <th>EdLevel</th>\n",
" <th>UndergradMajor</th>\n",
" <th>EduOther</th>\n",
" <th>OrgSize</th>\n",
" <th>DevType</th>\n",
" <th>YearsCode</th>\n",
" <th>Age1stCode</th>\n",
" <th>YearsCodePro</th>\n",
" <th>CareerSat</th>\n",
" <th>JobSat</th>\n",
" <th>MgrIdiot</th>\n",
" <th>MgrMoney</th>\n",
" <th>MgrWant</th>\n",
" <th>JobSeek</th>\n",
" <th>LastHireDate</th>\n",
" <th>LastInt</th>\n",
" <th>FizzBuzz</th>\n",
" <th>JobFactors</th>\n",
" <th>ResumeUpdate</th>\n",
" <th>CurrencySymbol</th>\n",
" <th>CurrencyDesc</th>\n",
" <th>CompTotal</th>\n",
" <th>CompFreq</th>\n",
" <th>ConvertedComp</th>\n",
" <th>WorkWeekHrs</th>\n",
" <th>WorkPlan</th>\n",
" <th>WorkChallenge</th>\n",
" <th>WorkRemote</th>\n",
" <th>WorkLoc</th>\n",
" <th>ImpSyn</th>\n",
" <th>CodeRev</th>\n",
" <th>CodeRevHrs</th>\n",
" <th>UnitTests</th>\n",
" <th>PurchaseHow</th>\n",
" <th>PurchaseWhat</th>\n",
" <th>LanguageWorkedWith</th>\n",
" <th>LanguageDesireNextYear</th>\n",
" <th>DatabaseWorkedWith</th>\n",
" <th>DatabaseDesireNextYear</th>\n",
" <th>PlatformWorkedWith</th>\n",
" <th>PlatformDesireNextYear</th>\n",
" <th>WebFrameWorkedWith</th>\n",
" <th>WebFrameDesireNextYear</th>\n",
" <th>MiscTechWorkedWith</th>\n",
" <th>MiscTechDesireNextYear</th>\n",
" <th>DevEnviron</th>\n",
" <th>OpSys</th>\n",
" <th>Containers</th>\n",
" <th>BlockchainOrg</th>\n",
" <th>BlockchainIs</th>\n",
" <th>BetterLife</th>\n",
" <th>ITperson</th>\n",
" <th>OffOn</th>\n",
" <th>SocialMedia</th>\n",
" <th>Extraversion</th>\n",
" <th>ScreenName</th>\n",
" <th>SOVisit1st</th>\n",
" <th>SOVisitFreq</th>\n",
" <th>SOVisitTo</th>\n",
" <th>SOFindAnswer</th>\n",
" <th>SOTimeSaved</th>\n",
" <th>SOHowMuchTime</th>\n",
" <th>SOAccount</th>\n",
" <th>SOPartFreq</th>\n",
" <th>SOJobs</th>\n",
" <th>EntTeams</th>\n",
" <th>SOComm</th>\n",
" <th>WelcomeChange</th>\n",
" <th>SONewContent</th>\n",
" <th>Age</th>\n",
" <th>Gender</th>\n",
" <th>Trans</th>\n",
" <th>Sexuality</th>\n",
" <th>Ethnicity</th>\n",
" <th>Dependents</th>\n",
" <th>SurveyLength</th>\n",
" <th>SurveyEase</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>88882</th>\n",
" <td>88863</td>\n",
" <td>NaN</td>\n",
" <td>Yes</td>\n",
" <td>Less than once per year</td>\n",
" <td>OSS is, on average, of HIGHER quality than pro...</td>\n",
" <td>Not employed, and not looking for work</td>\n",
" <td>Spain</td>\n",
" <td>Yes, full-time</td>\n",
" <td>Professional degree (JD, MD, etc.)</td>\n",
" <td>Computer science, computer engineering, or sof...</td>\n",
" <td>Taken an online course in programming or softw...</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>8</td>\n",
" <td>11</td>\n",
" <td>3</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>Bash/Shell/PowerShell;HTML/CSS;Java;JavaScript...</td>\n",
" <td>C;C++;C#;HTML/CSS;Java;Objective-C;SQL;Swift</td>\n",
" <td>DynamoDB;MariaDB;Microsoft SQL Server;MySQL</td>\n",
" <td>MariaDB;MySQL;Oracle;SQLite</td>\n",
" <td>iOS;Linux;MacOS;WordPress</td>\n",
" <td>Android;AWS;Google Cloud Platform;IBM Cloud or...</td>\n",
" <td>Django;jQuery;React.js</td>\n",
" <td>Django</td>\n",
" <td>Unity 3D;Unreal Engine</td>\n",
" <td>NaN</td>\n",
" <td>Android Studio;Atom;Eclipse;NetBeans;Notepad++...</td>\n",
" <td>Linux-based</td>\n",
" <td>Production</td>\n",
" <td>NaN</td>\n",
" <td>Useful for decentralized currency (i.e., Bitcoin)</td>\n",
" <td>Yes</td>\n",
" <td>Also Yes</td>\n",
" <td>Yes</td>\n",
" <td>WhatsApp</td>\n",
" <td>In real life (in person)</td>\n",
" <td>NaN</td>\n",
" <td>2012</td>\n",
" <td>Daily or almost daily</td>\n",
" <td>Find answers to specific questions;Learn how t...</td>\n",
" <td>6-10 times per week</td>\n",
" <td>Stack Overflow was much faster</td>\n",
" <td>11-30 minutes</td>\n",
" <td>Yes</td>\n",
" <td>A few times per month or weekly</td>\n",
" <td>Yes</td>\n",
" <td>No, I've heard of them, but I am not part of a...</td>\n",
" <td>Yes, somewhat</td>\n",
" <td>Somewhat less welcome now than last year</td>\n",
" <td>Tech articles written by other developers;Indu...</td>\n",
" <td>18.0</td>\n",
" <td>Man</td>\n",
" <td>No</td>\n",
" <td>Straight / Heterosexual</td>\n",
" <td>Hispanic or Latino/Latina;White or of European...</td>\n",
" <td>No</td>\n",
" <td>Appropriate in length</td>\n",
" <td>Easy</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" Respondent MainBranch Hobbyist OpenSourcer \\\n",
"88882 88863 NaN Yes Less than once per year \n",
"\n",
" OpenSource \\\n",
"88882 OSS is, on average, of HIGHER quality than pro... \n",
"\n",
" Employment Country Student \\\n",
"88882 Not employed, and not looking for work Spain Yes, full-time \n",
"\n",
" EdLevel \\\n",
"88882 Professional degree (JD, MD, etc.) \n",
"\n",
" UndergradMajor \\\n",
"88882 Computer science, computer engineering, or sof... \n",
"\n",
" EduOther OrgSize DevType \\\n",
"88882 Taken an online course in programming or softw... NaN NaN \n",
"\n",
" YearsCode Age1stCode YearsCodePro CareerSat JobSat MgrIdiot MgrMoney \\\n",
"88882 8 11 3 NaN NaN NaN NaN \n",
"\n",
" MgrWant JobSeek LastHireDate LastInt FizzBuzz JobFactors ResumeUpdate \\\n",
"88882 NaN NaN NaN NaN NaN NaN NaN \n",
"\n",
" CurrencySymbol CurrencyDesc CompTotal CompFreq ConvertedComp \\\n",
"88882 NaN NaN NaN NaN NaN \n",
"\n",
" WorkWeekHrs WorkPlan WorkChallenge WorkRemote WorkLoc ImpSyn CodeRev \\\n",
"88882 NaN NaN NaN NaN NaN NaN NaN \n",
"\n",
" CodeRevHrs UnitTests PurchaseHow PurchaseWhat \\\n",
"88882 NaN NaN NaN NaN \n",
"\n",
" LanguageWorkedWith \\\n",
"88882 Bash/Shell/PowerShell;HTML/CSS;Java;JavaScript... \n",
"\n",
" LanguageDesireNextYear \\\n",
"88882 C;C++;C#;HTML/CSS;Java;Objective-C;SQL;Swift \n",
"\n",
" DatabaseWorkedWith \\\n",
"88882 DynamoDB;MariaDB;Microsoft SQL Server;MySQL \n",
"\n",
" DatabaseDesireNextYear PlatformWorkedWith \\\n",
"88882 MariaDB;MySQL;Oracle;SQLite iOS;Linux;MacOS;WordPress \n",
"\n",
" PlatformDesireNextYear \\\n",
"88882 Android;AWS;Google Cloud Platform;IBM Cloud or... \n",
"\n",
" WebFrameWorkedWith WebFrameDesireNextYear MiscTechWorkedWith \\\n",
"88882 Django;jQuery;React.js Django Unity 3D;Unreal Engine \n",
"\n",
" MiscTechDesireNextYear \\\n",
"88882 NaN \n",
"\n",
" DevEnviron OpSys \\\n",
"88882 Android Studio;Atom;Eclipse;NetBeans;Notepad++... Linux-based \n",
"\n",
" Containers BlockchainOrg \\\n",
"88882 Production NaN \n",
"\n",
" BlockchainIs BetterLife ITperson \\\n",
"88882 Useful for decentralized currency (i.e., Bitcoin) Yes Also Yes \n",
"\n",
" OffOn SocialMedia Extraversion ScreenName SOVisit1st \\\n",
"88882 Yes WhatsApp In real life (in person) NaN 2012 \n",
"\n",
" SOVisitFreq \\\n",
"88882 Daily or almost daily \n",
"\n",
" SOVisitTo SOFindAnswer \\\n",
"88882 Find answers to specific questions;Learn how t... 6-10 times per week \n",
"\n",
" SOTimeSaved SOHowMuchTime SOAccount \\\n",
"88882 Stack Overflow was much faster 11-30 minutes Yes \n",
"\n",
" SOPartFreq SOJobs \\\n",
"88882 A few times per month or weekly Yes \n",
"\n",
" EntTeams SOComm \\\n",
"88882 No, I've heard of them, but I am not part of a... Yes, somewhat \n",
"\n",
" WelcomeChange \\\n",
"88882 Somewhat less welcome now than last year \n",
"\n",
" SONewContent Age Gender Trans \\\n",
"88882 Tech articles written by other developers;Indu... 18.0 Man No \n",
"\n",
" Sexuality \\\n",
"88882 Straight / Heterosexual \n",
"\n",
" Ethnicity Dependents \\\n",
"88882 Hispanic or Latino/Latina;White or of European... No \n",
"\n",
" SurveyLength SurveyEase \n",
"88882 Appropriate in length Easy "
]
},
"execution_count": 6,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"pd.set_option('display.max_columns', 85)\n",
"schema = pd.read_csv('Stack/survey_results_public.csv')\n",
"schema.head(2) #first two row\n",
"schema.tail(1) #last row"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"0 14.0\n",
"1 19.0\n",
"2 28.0\n",
"3 22.0\n",
"4 30.0\n",
" ... \n",
"88878 NaN\n",
"88879 NaN\n",
"88880 NaN\n",
"88881 NaN\n",
"88882 18.0\n",
"Name: Age, Length: 88883, dtype: float64"
]
},
"execution_count": 7,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df['Age']"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"0 14.0\n",
"1 19.0\n",
"2 28.0\n",
"3 22.0\n",
"4 30.0\n",
" ... \n",
"88878 NaN\n",
"88879 NaN\n",
"88880 NaN\n",
"88881 NaN\n",
"88882 18.0\n",
"Name: Age, Length: 88883, dtype: float64"
]
},
"execution_count": 8,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df.Age"
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"pandas.core.series.Series"
]
},
"execution_count": 9,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"type(df.Age)"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>Age</th>\n",
" <th>Gender</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>14.0</td>\n",
" <td>Man</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>19.0</td>\n",
" <td>Man</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>28.0</td>\n",
" <td>Man</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>22.0</td>\n",
" <td>Man</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>30.0</td>\n",
" <td>Man</td>\n",
" </tr>\n",
" <tr>\n",
" <th>...</th>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>88878</th>\n",
" <td>NaN</td>\n",
" <td>Man</td>\n",
" </tr>\n",
" <tr>\n",
" <th>88879</th>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>88880</th>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>88881</th>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>88882</th>\n",
" <td>18.0</td>\n",
" <td>Man</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>88883 rows × 2 columns</p>\n",
"</div>"
],
"text/plain": [
" Age Gender\n",
"0 14.0 Man\n",
"1 19.0 Man\n",
"2 28.0 Man\n",
"3 22.0 Man\n",
"4 30.0 Man\n",
"... ... ...\n",
"88878 NaN Man\n",
"88879 NaN NaN\n",
"88880 NaN NaN\n",
"88881 NaN NaN\n",
"88882 18.0 Man\n",
"\n",
"[88883 rows x 2 columns]"
]
},
"execution_count": 10,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df[['Age', 'Gender']]"
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"Index(['Respondent', 'MainBranch', 'Hobbyist', 'OpenSourcer', 'OpenSource',\n",
" 'Employment', 'Country', 'Student', 'EdLevel', 'UndergradMajor',\n",
" 'EduOther', 'OrgSize', 'DevType', 'YearsCode', 'Age1stCode',\n",
" 'YearsCodePro', 'CareerSat', 'JobSat', 'MgrIdiot', 'MgrMoney',\n",
" 'MgrWant', 'JobSeek', 'LastHireDate', 'LastInt', 'FizzBuzz',\n",
" 'JobFactors', 'ResumeUpdate', 'CurrencySymbol', 'CurrencyDesc',\n",
" 'CompTotal', 'CompFreq', 'ConvertedComp', 'WorkWeekHrs', 'WorkPlan',\n",
" 'WorkChallenge', 'WorkRemote', 'WorkLoc', 'ImpSyn', 'CodeRev',\n",
" 'CodeRevHrs', 'UnitTests', 'PurchaseHow', 'PurchaseWhat',\n",
" 'LanguageWorkedWith', 'LanguageDesireNextYear', 'DatabaseWorkedWith',\n",
" 'DatabaseDesireNextYear', 'PlatformWorkedWith',\n",
" 'PlatformDesireNextYear', 'WebFrameWorkedWith',\n",
" 'WebFrameDesireNextYear', 'MiscTechWorkedWith',\n",
" 'MiscTechDesireNextYear', 'DevEnviron', 'OpSys', 'Containers',\n",
" 'BlockchainOrg', 'BlockchainIs', 'BetterLife', 'ITperson', 'OffOn',\n",
" 'SocialMedia', 'Extraversion', 'ScreenName', 'SOVisit1st',\n",
" 'SOVisitFreq', 'SOVisitTo', 'SOFindAnswer', 'SOTimeSaved',\n",
" 'SOHowMuchTime', 'SOAccount', 'SOPartFreq', 'SOJobs', 'EntTeams',\n",
" 'SOComm', 'WelcomeChange', 'SONewContent', 'Age', 'Gender', 'Trans',\n",
" 'Sexuality', 'Ethnicity', 'Dependents', 'SurveyLength', 'SurveyEase'],\n",
" dtype='object')"
]
},
"execution_count": 11,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df.columns"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"**Locating Data rows**"
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"Respondent 16\n",
"MainBranch I am a developer by profession\n",
"Hobbyist Yes\n",
"OpenSourcer Never\n",
"OpenSource The quality of OSS and closed source software ...\n",
" ... \n",
"Sexuality Straight / Heterosexual\n",
"Ethnicity White or of European descent\n",
"Dependents No\n",
"SurveyLength Appropriate in length\n",
"SurveyEase Neither easy nor difficult\n",
"Name: 15, Length: 85, dtype: object"
]
},
"execution_count": 12,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df.iloc[15]"
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>MainBranch</th>\n",
" <th>Hobbyist</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>I am a student who is learning to code</td>\n",
" <td>No</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>I am not primarily a developer, but I write co...</td>\n",
" <td>Yes</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>I am a developer by profession</td>\n",
" <td>No</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>I am a developer by profession</td>\n",
" <td>Yes</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <td>I am not primarily a developer, but I write co...</td>\n",
" <td>Yes</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" MainBranch Hobbyist\n",
"1 I am a student who is learning to code No\n",
"2 I am not primarily a developer, but I write co... Yes\n",
"3 I am a developer by profession No\n",
"4 I am a developer by profession Yes\n",
"5 I am not primarily a developer, but I write co... Yes"
]
},
"execution_count": 13,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df.iloc[[1, 2, 3, 4, 5], [1, 2]]"
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>Gender</th>\n",
" <th>Age</th>\n",
" <th>Hobbyist</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>Man</td>\n",
" <td>19.0</td>\n",
" <td>No</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>Man</td>\n",
" <td>28.0</td>\n",
" <td>Yes</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" Gender Age Hobbyist\n",
"1 Man 19.0 No\n",
"2 Man 28.0 Yes"
]
},
"execution_count": 14,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df.loc[[1, 2], ['Gender', 'Age', 'Hobbyist']]"
]
},
{
"cell_type": "code",
"execution_count": 15,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>Gender</th>\n",
" <th>Age</th>\n",
" <th>Hobbyist</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>Man</td>\n",
" <td>14.0</td>\n",
" <td>Yes</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>Man</td>\n",
" <td>19.0</td>\n",
" <td>No</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>Man</td>\n",
" <td>28.0</td>\n",
" <td>Yes</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>Man</td>\n",
" <td>22.0</td>\n",
" <td>No</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>Man</td>\n",
" <td>30.0</td>\n",
" <td>Yes</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <td>Man</td>\n",
" <td>28.0</td>\n",
" <td>Yes</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" Gender Age Hobbyist\n",
"0 Man 14.0 Yes\n",
"1 Man 19.0 No\n",
"2 Man 28.0 Yes\n",
"3 Man 22.0 No\n",
"4 Man 30.0 Yes\n",
"5 Man 28.0 Yes"
]
},
"execution_count": 15,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df.loc[0:5, ['Gender', 'Age', 'Hobbyist']]"
]
},
{
"cell_type": "code",
"execution_count": 16,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"Hobbyist\n",
"Yes 71257\n",
"No 17626\n",
"Name: count, dtype: int64"
]
},
"execution_count": 16,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df['Hobbyist'].value_counts()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"**Indexes**"
]
},
{
"cell_type": "code",
"execution_count": 17,
"metadata": {},
"outputs": [],
"source": [
"df.set_index('Respondent', inplace=True)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"**FILTERING!!!!!!**"
]
},
{
"cell_type": "code",
"execution_count": 18,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"Respondent\n",
"1 False\n",
"2 False\n",
"3 False\n",
"4 False\n",
"5 False\n",
" ... \n",
"88377 False\n",
"88601 False\n",
"88802 False\n",
"88816 False\n",
"88863 False\n",
"Name: Age, Length: 88883, dtype: bool"
]
},
"execution_count": 18,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df['Age'] == 20"
]
},
{
"cell_type": "code",
"execution_count": 19,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>Gender</th>\n",
" <th>DevType</th>\n",
" </tr>\n",
" <tr>\n",
" <th>Respondent</th>\n",
" <th></th>\n",
" <th></th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>15</th>\n",
" <td>Man</td>\n",
" <td>Student</td>\n",
" </tr>\n",
" <tr>\n",
" <th>48</th>\n",
" <td>Man</td>\n",
" <td>Database administrator;Developer, back-end;Dev...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>79</th>\n",
" <td>Man</td>\n",
" <td>Developer, full-stack;Student</td>\n",
" </tr>\n",
" <tr>\n",
" <th>121</th>\n",
" <td>Man</td>\n",
" <td>Developer, back-end;Developer, full-stack;Deve...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>175</th>\n",
" <td>Man</td>\n",
" <td>Database administrator;Designer;Developer, bac...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>...</th>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>20091</th>\n",
" <td>Man</td>\n",
" <td>Designer;Developer, back-end;Developer, full-s...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>32941</th>\n",
" <td>Woman</td>\n",
" <td>Developer, full-stack;Student</td>\n",
" </tr>\n",
" <tr>\n",
" <th>39951</th>\n",
" <td>Man</td>\n",
" <td>Developer, full-stack;Student;System administr...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>42855</th>\n",
" <td>Man</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>60066</th>\n",
" <td>Man</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>2095 rows × 2 columns</p>\n",
"</div>"
],
"text/plain": [
" Gender DevType\n",
"Respondent \n",
"15 Man Student\n",
"48 Man Database administrator;Developer, back-end;Dev...\n",
"79 Man Developer, full-stack;Student\n",
"121 Man Developer, back-end;Developer, full-stack;Deve...\n",
"175 Man Database administrator;Designer;Developer, bac...\n",
"... ... ...\n",
"20091 Man Designer;Developer, back-end;Developer, full-s...\n",
"32941 Woman Developer, full-stack;Student\n",
"39951 Man Developer, full-stack;Student;System administr...\n",
"42855 Man NaN\n",
"60066 Man NaN\n",
"\n",
"[2095 rows x 2 columns]"
]
},
"execution_count": 19,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"filt = df['Age'] == 20\n",
"df.loc[df['Age'] == 20, ['Gender', 'DevType']]"
]
},
{
"cell_type": "code",
"execution_count": 20,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>MainBranch</th>\n",
" <th>ConvertedComp</th>\n",
" <th>LanguageWorkedWith</th>\n",
" </tr>\n",
" <tr>\n",
" <th>Respondent</th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>183</th>\n",
" <td>I am a developer by profession</td>\n",
" <td>46913.0</td>\n",
" <td>Dart;Go;Java;Kotlin;Swift</td>\n",
" </tr>\n",
" <tr>\n",
" <th>400</th>\n",
" <td>I am a developer by profession</td>\n",
" <td>25980.0</td>\n",
" <td>Bash/Shell/PowerShell;C++;Java;Kotlin;PHP</td>\n",
" </tr>\n",
" <tr>\n",
" <th>830</th>\n",
" <td>I am a developer by profession</td>\n",
" <td>43308.0</td>\n",
" <td>C#;HTML/CSS;Java;JavaScript;PHP;Scala</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1177</th>\n",
" <td>I am a developer by profession</td>\n",
" <td>NaN</td>\n",
" <td>Bash/Shell/PowerShell;C++;HTML/CSS;Java;Python</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1212</th>\n",
" <td>I am a developer by profession</td>\n",
" <td>NaN</td>\n",
" <td>Assembly;C;C++;C#;HTML/CSS;Java;JavaScript;Pyt...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>...</th>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>88204</th>\n",
" <td>I am not primarily a developer, but I write co...</td>\n",
" <td>79391.0</td>\n",
" <td>Java;JavaScript;Kotlin;Python;TypeScript</td>\n",
" </tr>\n",
" <tr>\n",
" <th>88265</th>\n",
" <td>I am a developer by profession</td>\n",
" <td>21648.0</td>\n",
" <td>Bash/Shell/PowerShell;C;C++;C#;HTML/CSS;JavaSc...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>88645</th>\n",
" <td>I am not primarily a developer, but I write co...</td>\n",
" <td>17976.0</td>\n",
" <td>R;SQL</td>\n",
" </tr>\n",
" <tr>\n",
" <th>51801</th>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>Java;JavaScript;PHP;Python;SQL</td>\n",
" </tr>\n",
" <tr>\n",
" <th>60630</th>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>Assembly;Bash/Shell/PowerShell;C;C++;C#;HTML/C...</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>516 rows × 3 columns</p>\n",
"</div>"
],
"text/plain": [
" MainBranch ConvertedComp \\\n",
"Respondent \n",
"183 I am a developer by profession 46913.0 \n",
"400 I am a developer by profession 25980.0 \n",
"830 I am a developer by profession 43308.0 \n",
"1177 I am a developer by profession NaN \n",
"1212 I am a developer by profession NaN \n",
"... ... ... \n",
"88204 I am not primarily a developer, but I write co... 79391.0 \n",
"88265 I am a developer by profession 21648.0 \n",
"88645 I am not primarily a developer, but I write co... 17976.0 \n",
"51801 NaN NaN \n",
"60630 NaN NaN \n",
"\n",
" LanguageWorkedWith \n",
"Respondent \n",
"183 Dart;Go;Java;Kotlin;Swift \n",
"400 Bash/Shell/PowerShell;C++;Java;Kotlin;PHP \n",
"830 C#;HTML/CSS;Java;JavaScript;PHP;Scala \n",
"1177 Bash/Shell/PowerShell;C++;HTML/CSS;Java;Python \n",
"1212 Assembly;C;C++;C#;HTML/CSS;Java;JavaScript;Pyt... \n",
"... ... \n",
"88204 Java;JavaScript;Kotlin;Python;TypeScript \n",
"88265 Bash/Shell/PowerShell;C;C++;C#;HTML/CSS;JavaSc... \n",
"88645 R;SQL \n",
"51801 Java;JavaScript;PHP;Python;SQL \n",
"60630 Assembly;Bash/Shell/PowerShell;C;C++;C#;HTML/C... \n",
"\n",
"[516 rows x 3 columns]"
]
},
"execution_count": 20,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"filt = (df['Age'] == 20) & (df['Gender'] == 'Woman') & (df['ConvertedComp'] > 100000) | (df['Country'] == 'Hungary')\n",
"df.loc[filt, ['MainBranch', 'ConvertedComp', 'LanguageWorkedWith']]\n",
"#df.loc[~filt, ['MainBranch']] #This will list every thing that does not match the filter"
]
},
{
"cell_type": "code",
"execution_count": 21,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>Age</th>\n",
" <th>Country</th>\n",
" <th>Gender</th>\n",
" </tr>\n",
" <tr>\n",
" <th>Respondent</th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>92</th>\n",
" <td>35.0</td>\n",
" <td>Austria</td>\n",
" <td>Man</td>\n",
" </tr>\n",
" <tr>\n",
" <th>145</th>\n",
" <td>NaN</td>\n",
" <td>Japan</td>\n",
" <td>Man</td>\n",
" </tr>\n",
" <tr>\n",
" <th>149</th>\n",
" <td>40.0</td>\n",
" <td>Austria</td>\n",
" <td>Man</td>\n",
" </tr>\n",
" <tr>\n",
" <th>158</th>\n",
" <td>29.0</td>\n",
" <td>Austria</td>\n",
" <td>Man</td>\n",
" </tr>\n",
" <tr>\n",
" <th>167</th>\n",
" <td>28.0</td>\n",
" <td>Austria</td>\n",
" <td>Woman</td>\n",
" </tr>\n",
" <tr>\n",
" <th>...</th>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>59827</th>\n",
" <td>65.0</td>\n",
" <td>Austria</td>\n",
" <td>Man</td>\n",
" </tr>\n",
" <tr>\n",
" <th>60630</th>\n",
" <td>25.0</td>\n",
" <td>Hungary</td>\n",
" <td>Man</td>\n",
" </tr>\n",
" <tr>\n",
" <th>71160</th>\n",
" <td>19.0</td>\n",
" <td>Austria</td>\n",
" <td>Man</td>\n",
" </tr>\n",
" <tr>\n",
" <th>77926</th>\n",
" <td>NaN</td>\n",
" <td>Austria</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>78266</th>\n",
" <td>NaN</td>\n",
" <td>Japan</td>\n",
" <td>Woman</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>1743 rows × 3 columns</p>\n",
"</div>"
],
"text/plain": [
" Age Country Gender\n",
"Respondent \n",
"92 35.0 Austria Man\n",
"145 NaN Japan Man\n",
"149 40.0 Austria Man\n",
"158 29.0 Austria Man\n",
"167 28.0 Austria Woman\n",
"... ... ... ...\n",
"59827 65.0 Austria Man\n",
"60630 25.0 Hungary Man\n",
"71160 19.0 Austria Man\n",
"77926 NaN Austria NaN\n",
"78266 NaN Japan Woman\n",
"\n",
"[1743 rows x 3 columns]"
]
},
"execution_count": 21,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"countries = ['Hungary', 'Austria', 'Japan']\n",
"filt = df['Country'].isin(countries)\n",
"df.loc[filt, ['Age', 'Country', 'Gender']]"
]
},
{
"cell_type": "code",
"execution_count": 22,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"Respondent\n",
"1 HTML/CSS;Java;JavaScript;Python\n",
"2 C++;HTML/CSS;Python\n",
"4 C;C++;C#;Python;SQL\n",
"5 C++;HTML/CSS;Java;JavaScript;Python;SQL;VBA\n",
"8 Bash/Shell/PowerShell;C;C++;HTML/CSS;Java;Java...\n",
" ... \n",
"84539 Bash/Shell/PowerShell;C;C++;HTML/CSS;Java;Java...\n",
"85738 Bash/Shell/PowerShell;C++;Python;Ruby;Other(s):\n",
"86566 Bash/Shell/PowerShell;HTML/CSS;Python;Other(s):\n",
"87739 C;C++;HTML/CSS;JavaScript;PHP;Python;SQL\n",
"88212 HTML/CSS;JavaScript;Python\n",
"Name: LanguageWorkedWith, Length: 36443, dtype: object"
]
},
"execution_count": 22,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"filt = df['LanguageWorkedWith'].str.contains('Python', na=False)\n",
"df.loc[filt, 'LanguageWorkedWith']"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"**Update Values!!!!**\n",
"\n",
"https://www.youtube.com/watch?v=DCDe29sIKcE&list=PL-osiE80TeTsWmV9i9c58mdDCSskIFdDS&index=5"
]
},
{
"cell_type": "code",
"execution_count": 23,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>MAINBRANCH</th>\n",
" <th>HOBBYIST</th>\n",
" <th>OPENSOURCER</th>\n",
" <th>OPENSOURCE</th>\n",
" <th>EMPLOYMENT</th>\n",
" <th>COUNTRY</th>\n",
" <th>STUDENT</th>\n",
" <th>EDLEVEL</th>\n",
" <th>UNDERGRADMAJOR</th>\n",
" <th>EDUOTHER</th>\n",
" <th>ORGSIZE</th>\n",
" <th>DEVTYPE</th>\n",
" <th>YEARSCODE</th>\n",
" <th>AGE1STCODE</th>\n",
" <th>YEARSCODEPRO</th>\n",
" <th>CAREERSAT</th>\n",
" <th>JOBSAT</th>\n",
" <th>MGRIDIOT</th>\n",
" <th>MGRMONEY</th>\n",
" <th>MGRWANT</th>\n",
" <th>JOBSEEK</th>\n",
" <th>LASTHIREDATE</th>\n",
" <th>LASTINT</th>\n",
" <th>FIZZBUZZ</th>\n",
" <th>JOBFACTORS</th>\n",
" <th>RESUMEUPDATE</th>\n",
" <th>CURRENCYSYMBOL</th>\n",
" <th>CURRENCYDESC</th>\n",
" <th>COMPTOTAL</th>\n",
" <th>COMPFREQ</th>\n",
" <th>CONVERTEDCOMP</th>\n",
" <th>WORKWEEKHRS</th>\n",
" <th>WORKPLAN</th>\n",
" <th>WORKCHALLENGE</th>\n",
" <th>WORKREMOTE</th>\n",
" <th>WORKLOC</th>\n",
" <th>IMPSYN</th>\n",
" <th>CODEREV</th>\n",
" <th>CODEREVHRS</th>\n",
" <th>UNITTESTS</th>\n",
" <th>PURCHASEHOW</th>\n",
" <th>PURCHASEWHAT</th>\n",
" <th>LANGUAGEWORKEDWITH</th>\n",
" <th>LANGUAGEDESIRENEXTYEAR</th>\n",
" <th>DATABASEWORKEDWITH</th>\n",
" <th>DATABASEDESIRENEXTYEAR</th>\n",
" <th>PLATFORMWORKEDWITH</th>\n",
" <th>PLATFORMDESIRENEXTYEAR</th>\n",
" <th>WEBFRAMEWORKEDWITH</th>\n",
" <th>WEBFRAMEDESIRENEXTYEAR</th>\n",
" <th>MISCTECHWORKEDWITH</th>\n",
" <th>MISCTECHDESIRENEXTYEAR</th>\n",
" <th>DEVENVIRON</th>\n",
" <th>OPSYS</th>\n",
" <th>CONTAINERS</th>\n",
" <th>BLOCKCHAINORG</th>\n",
" <th>BLOCKCHAINIS</th>\n",
" <th>BETTERLIFE</th>\n",
" <th>ITPERSON</th>\n",
" <th>OFFON</th>\n",
" <th>SOCIALMEDIA</th>\n",
" <th>EXTRAVERSION</th>\n",
" <th>SCREENNAME</th>\n",
" <th>SOVISIT1ST</th>\n",
" <th>SOVISITFREQ</th>\n",
" <th>SOVISITTO</th>\n",
" <th>SOFINDANSWER</th>\n",
" <th>SOTIMESAVED</th>\n",
" <th>SOHOWMUCHTIME</th>\n",
" <th>SOACCOUNT</th>\n",
" <th>SOPARTFREQ</th>\n",
" <th>SOJOBS</th>\n",
" <th>ENTTEAMS</th>\n",
" <th>SOCOMM</th>\n",
" <th>WELCOMECHANGE</th>\n",
" <th>SONEWCONTENT</th>\n",
" <th>AGE</th>\n",
" <th>GENDER</th>\n",
" <th>TRANS</th>\n",
" <th>SEXUALITY</th>\n",
" <th>ETHNICITY</th>\n",
" <th>DEPENDENTS</th>\n",
" <th>SURVEYLENGTH</th>\n",
" <th>SURVEYEASE</th>\n",
" </tr>\n",
" <tr>\n",
" <th>Respondent</th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>I am a student who is learning to code</td>\n",
" <td>Yes</td>\n",
" <td>Never</td>\n",
" <td>The quality of OSS and closed source software ...</td>\n",
" <td>Not employed, and not looking for work</td>\n",
" <td>United Kingdom</td>\n",
" <td>No</td>\n",
" <td>Primary/elementary school</td>\n",
" <td>NaN</td>\n",
" <td>Taught yourself a new language, framework, or ...</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>4</td>\n",
" <td>10</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>HTML/CSS;Java;JavaScript;Python</td>\n",
" <td>C;C++;C#;Go;HTML/CSS;Java;JavaScript;Python;SQL</td>\n",
" <td>SQLite</td>\n",
" <td>MySQL</td>\n",
" <td>MacOS;Windows</td>\n",
" <td>Android;Arduino;Windows</td>\n",
" <td>Django;Flask</td>\n",
" <td>Flask;jQuery</td>\n",
" <td>Node.js</td>\n",
" <td>Node.js</td>\n",
" <td>IntelliJ;Notepad++;PyCharm</td>\n",
" <td>Windows</td>\n",
" <td>I do not use containers</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>Yes</td>\n",
" <td>Fortunately, someone else has that title</td>\n",
" <td>Yes</td>\n",
" <td>Twitter</td>\n",
" <td>Online</td>\n",
" <td>Username</td>\n",
" <td>2017</td>\n",
" <td>A few times per month or weekly</td>\n",
" <td>Find answers to specific questions;Learn how t...</td>\n",
" <td>3-5 times per week</td>\n",
" <td>Stack Overflow was much faster</td>\n",
" <td>31-60 minutes</td>\n",
" <td>No</td>\n",
" <td>NaN</td>\n",
" <td>No, I didn't know that Stack Overflow had a jo...</td>\n",
" <td>No, and I don't know what those are</td>\n",
" <td>Neutral</td>\n",
" <td>Just as welcome now as I felt last year</td>\n",
" <td>Tech articles written by other developers;Indu...</td>\n",
" <td>14.0</td>\n",
" <td>Man</td>\n",
" <td>No</td>\n",
" <td>Straight / Heterosexual</td>\n",
" <td>NaN</td>\n",
" <td>No</td>\n",
" <td>Appropriate in length</td>\n",
" <td>Neither easy nor difficult</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>I am a student who is learning to code</td>\n",
" <td>No</td>\n",
" <td>Less than once per year</td>\n",
" <td>The quality of OSS and closed source software ...</td>\n",
" <td>Not employed, but looking for work</td>\n",
" <td>Bosnia and Herzegovina</td>\n",
" <td>Yes, full-time</td>\n",
" <td>Secondary school (e.g. American high school, G...</td>\n",
" <td>NaN</td>\n",
" <td>Taken an online course in programming or softw...</td>\n",
" <td>NaN</td>\n",
" <td>Developer, desktop or enterprise applications;...</td>\n",
" <td>NaN</td>\n",
" <td>17</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>I am actively looking for a job</td>\n",
" <td>I've never had a job</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>Financial performance or funding status of the...</td>\n",
" <td>Something else changed (education, award, medi...</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>C++;HTML/CSS;Python</td>\n",
" <td>C++;HTML/CSS;JavaScript;SQL</td>\n",
" <td>NaN</td>\n",
" <td>MySQL</td>\n",
" <td>Windows</td>\n",
" <td>Windows</td>\n",
" <td>Django</td>\n",
" <td>Django</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>Atom;PyCharm</td>\n",
" <td>Windows</td>\n",
" <td>I do not use containers</td>\n",
" <td>NaN</td>\n",
" <td>Useful across many domains and could change ma...</td>\n",
" <td>Yes</td>\n",
" <td>Yes</td>\n",
" <td>Yes</td>\n",
" <td>Instagram</td>\n",
" <td>Online</td>\n",
" <td>Username</td>\n",
" <td>2017</td>\n",
" <td>Daily or almost daily</td>\n",
" <td>Find answers to specific questions;Learn how t...</td>\n",
" <td>3-5 times per week</td>\n",
" <td>Stack Overflow was much faster</td>\n",
" <td>11-30 minutes</td>\n",
" <td>Yes</td>\n",
" <td>A few times per month or weekly</td>\n",
" <td>No, I knew that Stack Overflow had a job board...</td>\n",
" <td>No, and I don't know what those are</td>\n",
" <td>Yes, somewhat</td>\n",
" <td>Just as welcome now as I felt last year</td>\n",
" <td>Tech articles written by other developers;Indu...</td>\n",
" <td>19.0</td>\n",
" <td>Man</td>\n",
" <td>No</td>\n",
" <td>Straight / Heterosexual</td>\n",
" <td>NaN</td>\n",
" <td>No</td>\n",
" <td>Appropriate in length</td>\n",
" <td>Neither easy nor difficult</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>I am not primarily a developer, but I write co...</td>\n",
" <td>Yes</td>\n",
" <td>Never</td>\n",
" <td>The quality of OSS and closed source software ...</td>\n",
" <td>Employed full-time</td>\n",
" <td>Thailand</td>\n",
" <td>No</td>\n",
" <td>Bachelors degree (BA, BS, B.Eng., etc.)</td>\n",
" <td>Web development or web design</td>\n",
" <td>Taught yourself a new language, framework, or ...</td>\n",
" <td>100 to 499 employees</td>\n",
" <td>Designer;Developer, back-end;Developer, front-...</td>\n",
" <td>3</td>\n",
" <td>22</td>\n",
" <td>1</td>\n",
" <td>Slightly satisfied</td>\n",
" <td>Slightly satisfied</td>\n",
" <td>Not at all confident</td>\n",
" <td>Not sure</td>\n",
" <td>Not sure</td>\n",
" <td>Im not actively looking, but I am open to new...</td>\n",
" <td>1-2 years ago</td>\n",
" <td>Interview with people in peer roles</td>\n",
" <td>No</td>\n",
" <td>Languages, frameworks, and other technologies ...</td>\n",
" <td>I was preparing for a job search</td>\n",
" <td>THB</td>\n",
" <td>Thai baht</td>\n",
" <td>23000.0</td>\n",
" <td>Monthly</td>\n",
" <td>8820.0</td>\n",
" <td>40.0</td>\n",
" <td>There's no schedule or spec; I work on what se...</td>\n",
" <td>Distracting work environment;Inadequate access...</td>\n",
" <td>Less than once per month / Never</td>\n",
" <td>Home</td>\n",
" <td>Average</td>\n",
" <td>No</td>\n",
" <td>NaN</td>\n",
" <td>No, but I think we should</td>\n",
" <td>Not sure</td>\n",
" <td>I have little or no influence</td>\n",
" <td>HTML/CSS</td>\n",
" <td>Elixir;HTML/CSS</td>\n",
" <td>PostgreSQL</td>\n",
" <td>PostgreSQL</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>Other(s):</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>Vim;Visual Studio Code</td>\n",
" <td>Linux-based</td>\n",
" <td>I do not use containers</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>Yes</td>\n",
" <td>Yes</td>\n",
" <td>Yes</td>\n",
" <td>Reddit</td>\n",
" <td>In real life (in person)</td>\n",
" <td>Username</td>\n",
" <td>2011</td>\n",
" <td>A few times per week</td>\n",
" <td>Find answers to specific questions;Learn how t...</td>\n",
" <td>6-10 times per week</td>\n",
" <td>They were about the same</td>\n",
" <td>NaN</td>\n",
" <td>Yes</td>\n",
" <td>Less than once per month or monthly</td>\n",
" <td>Yes</td>\n",
" <td>No, I've heard of them, but I am not part of a...</td>\n",
" <td>Neutral</td>\n",
" <td>Just as welcome now as I felt last year</td>\n",
" <td>Tech meetups or events in your area;Courses on...</td>\n",
" <td>28.0</td>\n",
" <td>Man</td>\n",
" <td>No</td>\n",
" <td>Straight / Heterosexual</td>\n",
" <td>NaN</td>\n",
" <td>Yes</td>\n",
" <td>Appropriate in length</td>\n",
" <td>Neither easy nor difficult</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>I am a developer by profession</td>\n",
" <td>No</td>\n",
" <td>Never</td>\n",
" <td>The quality of OSS and closed source software ...</td>\n",
" <td>Employed full-time</td>\n",
" <td>United States</td>\n",
" <td>No</td>\n",
" <td>Bachelors degree (BA, BS, B.Eng., etc.)</td>\n",
" <td>Computer science, computer engineering, or sof...</td>\n",
" <td>Taken an online course in programming or softw...</td>\n",
" <td>100 to 499 employees</td>\n",
" <td>Developer, full-stack</td>\n",
" <td>3</td>\n",
" <td>16</td>\n",
" <td>Less than 1 year</td>\n",
" <td>Very satisfied</td>\n",
" <td>Slightly satisfied</td>\n",
" <td>Very confident</td>\n",
" <td>No</td>\n",
" <td>Not sure</td>\n",
" <td>I am not interested in new job opportunities</td>\n",
" <td>Less than a year ago</td>\n",
" <td>Write code by hand (e.g., on a whiteboard);Int...</td>\n",
" <td>No</td>\n",
" <td>Languages, frameworks, and other technologies ...</td>\n",
" <td>I was preparing for a job search</td>\n",
" <td>USD</td>\n",
" <td>United States dollar</td>\n",
" <td>61000.0</td>\n",
" <td>Yearly</td>\n",
" <td>61000.0</td>\n",
" <td>80.0</td>\n",
" <td>There's no schedule or spec; I work on what se...</td>\n",
" <td>NaN</td>\n",
" <td>Less than once per month / Never</td>\n",
" <td>Home</td>\n",
" <td>A little below average</td>\n",
" <td>No</td>\n",
" <td>NaN</td>\n",
" <td>No, but I think we should</td>\n",
" <td>Developers typically have the most influence o...</td>\n",
" <td>I have little or no influence</td>\n",
" <td>C;C++;C#;Python;SQL</td>\n",
" <td>C;C#;JavaScript;SQL</td>\n",
" <td>MySQL;SQLite</td>\n",
" <td>MySQL;SQLite</td>\n",
" <td>Linux;Windows</td>\n",
" <td>Linux;Windows</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>.NET</td>\n",
" <td>.NET</td>\n",
" <td>Eclipse;Vim;Visual Studio;Visual Studio Code</td>\n",
" <td>Windows</td>\n",
" <td>I do not use containers</td>\n",
" <td>Not at all</td>\n",
" <td>Useful for decentralized currency (i.e., Bitcoin)</td>\n",
" <td>Yes</td>\n",
" <td>SIGH</td>\n",
" <td>Yes</td>\n",
" <td>Reddit</td>\n",
" <td>In real life (in person)</td>\n",
" <td>Username</td>\n",
" <td>2014</td>\n",
" <td>Daily or almost daily</td>\n",
" <td>Find answers to specific questions;Pass the ti...</td>\n",
" <td>1-2 times per week</td>\n",
" <td>Stack Overflow was much faster</td>\n",
" <td>31-60 minutes</td>\n",
" <td>Yes</td>\n",
" <td>Less than once per month or monthly</td>\n",
" <td>Yes</td>\n",
" <td>No, and I don't know what those are</td>\n",
" <td>No, not really</td>\n",
" <td>Just as welcome now as I felt last year</td>\n",
" <td>Tech articles written by other developers;Indu...</td>\n",
" <td>22.0</td>\n",
" <td>Man</td>\n",
" <td>No</td>\n",
" <td>Straight / Heterosexual</td>\n",
" <td>White or of European descent</td>\n",
" <td>No</td>\n",
" <td>Appropriate in length</td>\n",
" <td>Easy</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <td>I am a developer by profession</td>\n",
" <td>Yes</td>\n",
" <td>Once a month or more often</td>\n",
" <td>OSS is, on average, of HIGHER quality than pro...</td>\n",
" <td>Employed full-time</td>\n",
" <td>Ukraine</td>\n",
" <td>No</td>\n",
" <td>Bachelors degree (BA, BS, B.Eng., etc.)</td>\n",
" <td>Computer science, computer engineering, or sof...</td>\n",
" <td>Taken an online course in programming or softw...</td>\n",
" <td>10,000 or more employees</td>\n",
" <td>Academic researcher;Developer, desktop or ente...</td>\n",
" <td>16</td>\n",
" <td>14</td>\n",
" <td>9</td>\n",
" <td>Very dissatisfied</td>\n",
" <td>Slightly dissatisfied</td>\n",
" <td>Somewhat confident</td>\n",
" <td>Yes</td>\n",
" <td>No</td>\n",
" <td>I am not interested in new job opportunities</td>\n",
" <td>Less than a year ago</td>\n",
" <td>Write any code;Write code by hand (e.g., on a ...</td>\n",
" <td>No</td>\n",
" <td>Industry that I'd be working in;Languages, fra...</td>\n",
" <td>I was preparing for a job search</td>\n",
" <td>UAH</td>\n",
" <td>Ukrainian hryvnia</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>55.0</td>\n",
" <td>There is a schedule and/or spec (made by me or...</td>\n",
" <td>Being tasked with non-development work;Inadequ...</td>\n",
" <td>A few days each month</td>\n",
" <td>Office</td>\n",
" <td>A little above average</td>\n",
" <td>Yes, because I see value in code review</td>\n",
" <td>NaN</td>\n",
" <td>Yes, it's part of our process</td>\n",
" <td>Not sure</td>\n",
" <td>I have little or no influence</td>\n",
" <td>C++;HTML/CSS;Java;JavaScript;Python;SQL;VBA</td>\n",
" <td>HTML/CSS;Java;JavaScript;SQL;WebAssembly</td>\n",
" <td>Couchbase;MongoDB;MySQL;Oracle;PostgreSQL;SQLite</td>\n",
" <td>Couchbase;Firebase;MongoDB;MySQL;Oracle;Postgr...</td>\n",
" <td>Android;Linux;MacOS;Slack;Windows</td>\n",
" <td>Android;Docker;Kubernetes;Linux;Slack</td>\n",
" <td>Django;Express;Flask;jQuery;React.js;Spring</td>\n",
" <td>Flask;jQuery;React.js;Spring</td>\n",
" <td>Cordova;Node.js</td>\n",
" <td>Apache Spark;Hadoop;Node.js;React Native</td>\n",
" <td>IntelliJ;Notepad++;Vim</td>\n",
" <td>Linux-based</td>\n",
" <td>Outside of work, for personal projects</td>\n",
" <td>Not at all</td>\n",
" <td>NaN</td>\n",
" <td>Yes</td>\n",
" <td>Also Yes</td>\n",
" <td>Yes</td>\n",
" <td>Facebook</td>\n",
" <td>In real life (in person)</td>\n",
" <td>Username</td>\n",
" <td>I don't remember</td>\n",
" <td>Multiple times per day</td>\n",
" <td>Find answers to specific questions</td>\n",
" <td>More than 10 times per week</td>\n",
" <td>Stack Overflow was much faster</td>\n",
" <td>NaN</td>\n",
" <td>Yes</td>\n",
" <td>A few times per month or weekly</td>\n",
" <td>No, I knew that Stack Overflow had a job board...</td>\n",
" <td>No, I've heard of them, but I am not part of a...</td>\n",
" <td>Yes, definitely</td>\n",
" <td>Just as welcome now as I felt last year</td>\n",
" <td>Tech meetups or events in your area;Courses on...</td>\n",
" <td>30.0</td>\n",
" <td>Man</td>\n",
" <td>No</td>\n",
" <td>Straight / Heterosexual</td>\n",
" <td>White or of European descent;Multiracial</td>\n",
" <td>No</td>\n",
" <td>Appropriate in length</td>\n",
" <td>Easy</td>\n",
" </tr>\n",
" <tr>\n",
" <th>...</th>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>88377</th>\n",
" <td>NaN</td>\n",
" <td>Yes</td>\n",
" <td>Less than once a month but more than once per ...</td>\n",
" <td>The quality of OSS and closed source software ...</td>\n",
" <td>Not employed, and not looking for work</td>\n",
" <td>Canada</td>\n",
" <td>No</td>\n",
" <td>Primary/elementary school</td>\n",
" <td>NaN</td>\n",
" <td>Taught yourself a new language, framework, or ...</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>HTML/CSS;JavaScript;Other(s):</td>\n",
" <td>C++;HTML/CSS;JavaScript;SQL;WebAssembly;Other(s):</td>\n",
" <td>Firebase;SQLite</td>\n",
" <td>Firebase;MySQL;SQLite</td>\n",
" <td>Linux</td>\n",
" <td>Google Cloud Platform;Linux</td>\n",
" <td>jQuery</td>\n",
" <td>jQuery;Vue.js</td>\n",
" <td>Node.js</td>\n",
" <td>React Native;Unity 3D;Unreal Engine</td>\n",
" <td>Atom;Visual Studio;Visual Studio Code</td>\n",
" <td>Windows</td>\n",
" <td>I do not use containers</td>\n",
" <td>NaN</td>\n",
" <td>Useful across many domains and could change ma...</td>\n",
" <td>Yes</td>\n",
" <td>Yes</td>\n",
" <td>What?</td>\n",
" <td>YouTube</td>\n",
" <td>NaN</td>\n",
" <td>Username</td>\n",
" <td>I don't remember</td>\n",
" <td>A few times per week</td>\n",
" <td>Find answers to specific questions;Learn how t...</td>\n",
" <td>3-5 times per week</td>\n",
" <td>Stack Overflow was slightly faster</td>\n",
" <td>11-30 minutes</td>\n",
" <td>Yes</td>\n",
" <td>I have never participated in Q&amp;A on Stack Over...</td>\n",
" <td>No, I knew that Stack Overflow had a job board...</td>\n",
" <td>No, I've heard of them, but I am not part of a...</td>\n",
" <td>No, not at all</td>\n",
" <td>NaN</td>\n",
" <td>Tech articles written by other developers;Tech...</td>\n",
" <td>NaN</td>\n",
" <td>Man</td>\n",
" <td>No</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>No</td>\n",
" <td>Appropriate in length</td>\n",
" <td>Easy</td>\n",
" </tr>\n",
" <tr>\n",
" <th>88601</th>\n",
" <td>NaN</td>\n",
" <td>No</td>\n",
" <td>Never</td>\n",
" <td>The quality of OSS and closed source software ...</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>88802</th>\n",
" <td>NaN</td>\n",
" <td>No</td>\n",
" <td>Never</td>\n",
" <td>NaN</td>\n",
" <td>Employed full-time</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>88816</th>\n",
" <td>NaN</td>\n",
" <td>No</td>\n",
" <td>Never</td>\n",
" <td>OSS is, on average, of HIGHER quality than pro...</td>\n",
" <td>Independent contractor, freelancer, or self-em...</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>88863</th>\n",
" <td>NaN</td>\n",
" <td>Yes</td>\n",
" <td>Less than once per year</td>\n",
" <td>OSS is, on average, of HIGHER quality than pro...</td>\n",
" <td>Not employed, and not looking for work</td>\n",
" <td>Spain</td>\n",
" <td>Yes, full-time</td>\n",
" <td>Professional degree (JD, MD, etc.)</td>\n",
" <td>Computer science, computer engineering, or sof...</td>\n",
" <td>Taken an online course in programming or softw...</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>8</td>\n",
" <td>11</td>\n",
" <td>3</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>Bash/Shell/PowerShell;HTML/CSS;Java;JavaScript...</td>\n",
" <td>C;C++;C#;HTML/CSS;Java;Objective-C;SQL;Swift</td>\n",
" <td>DynamoDB;MariaDB;Microsoft SQL Server;MySQL</td>\n",
" <td>MariaDB;MySQL;Oracle;SQLite</td>\n",
" <td>iOS;Linux;MacOS;WordPress</td>\n",
" <td>Android;AWS;Google Cloud Platform;IBM Cloud or...</td>\n",
" <td>Django;jQuery;React.js</td>\n",
" <td>Django</td>\n",
" <td>Unity 3D;Unreal Engine</td>\n",
" <td>NaN</td>\n",
" <td>Android Studio;Atom;Eclipse;NetBeans;Notepad++...</td>\n",
" <td>Linux-based</td>\n",
" <td>Production</td>\n",
" <td>NaN</td>\n",
" <td>Useful for decentralized currency (i.e., Bitcoin)</td>\n",
" <td>Yes</td>\n",
" <td>Also Yes</td>\n",
" <td>Yes</td>\n",
" <td>WhatsApp</td>\n",
" <td>In real life (in person)</td>\n",
" <td>NaN</td>\n",
" <td>2012</td>\n",
" <td>Daily or almost daily</td>\n",
" <td>Find answers to specific questions;Learn how t...</td>\n",
" <td>6-10 times per week</td>\n",
" <td>Stack Overflow was much faster</td>\n",
" <td>11-30 minutes</td>\n",
" <td>Yes</td>\n",
" <td>A few times per month or weekly</td>\n",
" <td>Yes</td>\n",
" <td>No, I've heard of them, but I am not part of a...</td>\n",
" <td>Yes, somewhat</td>\n",
" <td>Somewhat less welcome now than last year</td>\n",
" <td>Tech articles written by other developers;Indu...</td>\n",
" <td>18.0</td>\n",
" <td>Man</td>\n",
" <td>No</td>\n",
" <td>Straight / Heterosexual</td>\n",
" <td>Hispanic or Latino/Latina;White or of European...</td>\n",
" <td>No</td>\n",
" <td>Appropriate in length</td>\n",
" <td>Easy</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>88883 rows × 84 columns</p>\n",
"</div>"
],
"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",
"88377 NaN Yes \n",
"88601 NaN No \n",
"88802 NaN No \n",
"88816 NaN No \n",
"88863 NaN 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",
"88377 Less than once a month but more than once per ... \n",
"88601 Never \n",
"88802 Never \n",
"88816 Never \n",
"88863 Less than once per year \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",
"88377 The quality of OSS and closed source software ... \n",
"88601 The quality of OSS and closed source software ... \n",
"88802 NaN \n",
"88816 OSS is, on average, of HIGHER quality than pro... \n",
"88863 OSS is, on average, of HIGHER quality than pro... \n",
"\n",
" EMPLOYMENT \\\n",
"Respondent \n",
"1 Not employed, and not looking for work \n",
"2 Not employed, but looking for work \n",
"3 Employed full-time \n",
"4 Employed full-time \n",
"5 Employed full-time \n",
"... ... \n",
"88377 Not employed, and not looking for work \n",
"88601 NaN \n",
"88802 Employed full-time \n",
"88816 Independent contractor, freelancer, or self-em... \n",
"88863 Not employed, and not looking for work \n",
"\n",
" COUNTRY STUDENT \\\n",
"Respondent \n",
"1 United Kingdom No \n",
"2 Bosnia and Herzegovina Yes, full-time \n",
"3 Thailand No \n",
"4 United States No \n",
"5 Ukraine No \n",
"... ... ... \n",
"88377 Canada No \n",
"88601 NaN NaN \n",
"88802 NaN NaN \n",
"88816 NaN NaN \n",
"88863 Spain Yes, full-time \n",
"\n",
" EDLEVEL \\\n",
"Respondent \n",
"1 Primary/elementary school \n",
"2 Secondary school (e.g. American high school, G... \n",
"3 Bachelors degree (BA, BS, B.Eng., etc.) \n",
"4 Bachelors degree (BA, BS, B.Eng., etc.) \n",
"5 Bachelors degree (BA, BS, B.Eng., etc.) \n",
"... ... \n",
"88377 Primary/elementary school \n",
"88601 NaN \n",
"88802 NaN \n",
"88816 NaN \n",
"88863 Professional degree (JD, MD, 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",
"88377 NaN \n",
"88601 NaN \n",
"88802 NaN \n",
"88816 NaN \n",
"88863 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",
"88377 Taught yourself a new language, framework, or ... \n",
"88601 NaN \n",
"88802 NaN \n",
"88816 NaN \n",
"88863 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",
"88377 NaN \n",
"88601 NaN \n",
"88802 NaN \n",
"88816 NaN \n",
"88863 NaN \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",
"88377 NaN NaN \n",
"88601 NaN NaN \n",
"88802 NaN NaN \n",
"88816 NaN NaN \n",
"88863 NaN 8 \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",
"88377 NaN NaN NaN \n",
"88601 NaN NaN NaN \n",
"88802 NaN NaN NaN \n",
"88816 NaN NaN NaN \n",
"88863 11 3 NaN \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",
"88377 NaN NaN NaN NaN \n",
"88601 NaN NaN NaN NaN \n",
"88802 NaN NaN NaN NaN \n",
"88816 NaN NaN NaN NaN \n",
"88863 NaN NaN NaN NaN \n",
"\n",
" JOBSEEK \\\n",
"Respondent \n",
"1 NaN \n",
"2 I am actively looking for a job \n",
"3 Im 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",
"88377 NaN \n",
"88601 NaN \n",
"88802 NaN \n",
"88816 NaN \n",
"88863 NaN \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",
"88377 NaN \n",
"88601 NaN \n",
"88802 NaN \n",
"88816 NaN \n",
"88863 NaN \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",
"88377 NaN NaN \n",
"88601 NaN NaN \n",
"88802 NaN NaN \n",
"88816 NaN NaN \n",
"88863 NaN NaN \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",
"88377 NaN \n",
"88601 NaN \n",
"88802 NaN \n",
"88816 NaN \n",
"88863 NaN \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",
"88377 NaN NaN \n",
"88601 NaN NaN \n",
"88802 NaN NaN \n",
"88816 NaN NaN \n",
"88863 NaN NaN \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",
"88377 NaN NaN NaN NaN \n",
"88601 NaN NaN NaN NaN \n",
"88802 NaN NaN NaN NaN \n",
"88816 NaN NaN NaN NaN \n",
"88863 NaN 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",
"88377 NaN NaN \n",
"88601 NaN NaN \n",
"88802 NaN NaN \n",
"88816 NaN NaN \n",
"88863 NaN NaN \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",
"88377 NaN \n",
"88601 NaN \n",
"88802 NaN \n",
"88816 NaN \n",
"88863 NaN \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",
"88377 NaN NaN NaN \n",
"88601 NaN NaN NaN \n",
"88802 NaN NaN NaN \n",
"88816 NaN NaN NaN \n",
"88863 NaN NaN NaN \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",
"88377 NaN NaN \n",
"88601 NaN NaN \n",
"88802 NaN NaN \n",
"88816 NaN NaN \n",
"88863 NaN 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",
"88377 NaN \n",
"88601 NaN \n",
"88802 NaN \n",
"88816 NaN \n",
"88863 NaN \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",
"88377 NaN \n",
"88601 NaN \n",
"88802 NaN \n",
"88816 NaN \n",
"88863 NaN \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",
"88377 NaN \n",
"88601 NaN \n",
"88802 NaN \n",
"88816 NaN \n",
"88863 NaN \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",
"88377 HTML/CSS;JavaScript;Other(s): \n",
"88601 NaN \n",
"88802 NaN \n",
"88816 NaN \n",
"88863 Bash/Shell/PowerShell;HTML/CSS;Java;JavaScript... \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",
"88377 C++;HTML/CSS;JavaScript;SQL;WebAssembly;Other(s): \n",
"88601 NaN \n",
"88802 NaN \n",
"88816 NaN \n",
"88863 C;C++;C#;HTML/CSS;Java;Objective-C;SQL;Swift \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",
"88377 Firebase;SQLite \n",
"88601 NaN \n",
"88802 NaN \n",
"88816 NaN \n",
"88863 DynamoDB;MariaDB;Microsoft SQL Server;MySQL \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",
"88377 Firebase;MySQL;SQLite \n",
"88601 NaN \n",
"88802 NaN \n",
"88816 NaN \n",
"88863 MariaDB;MySQL;Oracle;SQLite \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",
"88377 Linux \n",
"88601 NaN \n",
"88802 NaN \n",
"88816 NaN \n",
"88863 iOS;Linux;MacOS;WordPress \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",
"88377 Google Cloud Platform;Linux \n",
"88601 NaN \n",
"88802 NaN \n",
"88816 NaN \n",
"88863 Android;AWS;Google Cloud Platform;IBM Cloud or... \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",
"88377 jQuery \n",
"88601 NaN \n",
"88802 NaN \n",
"88816 NaN \n",
"88863 Django;jQuery;React.js \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",
"88377 jQuery;Vue.js Node.js \n",
"88601 NaN NaN \n",
"88802 NaN NaN \n",
"88816 NaN NaN \n",
"88863 Django Unity 3D;Unreal Engine \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",
"88377 React Native;Unity 3D;Unreal Engine \n",
"88601 NaN \n",
"88802 NaN \n",
"88816 NaN \n",
"88863 NaN \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",
"88377 Atom;Visual Studio;Visual Studio Code Windows \n",
"88601 NaN NaN \n",
"88802 NaN NaN \n",
"88816 NaN NaN \n",
"88863 Android Studio;Atom;Eclipse;NetBeans;Notepad++... 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",
"88377 I do not use containers NaN \n",
"88601 NaN NaN \n",
"88802 NaN NaN \n",
"88816 NaN NaN \n",
"88863 Production NaN \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",
"88377 Useful across many domains and could change ma... Yes \n",
"88601 NaN NaN \n",
"88802 NaN NaN \n",
"88816 NaN NaN \n",
"88863 Useful for decentralized currency (i.e., Bitcoin) 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",
"88377 Yes What? YouTube \n",
"88601 NaN NaN NaN \n",
"88802 NaN NaN NaN \n",
"88816 NaN NaN NaN \n",
"88863 Also Yes Yes WhatsApp \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",
"88377 NaN Username I don't remember \n",
"88601 NaN NaN NaN \n",
"88802 NaN NaN NaN \n",
"88816 NaN NaN NaN \n",
"88863 In real life (in person) NaN 2012 \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",
"88377 A few times per week \n",
"88601 NaN \n",
"88802 NaN \n",
"88816 NaN \n",
"88863 Daily or almost daily \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",
"88377 Find answers to specific questions;Learn how t... \n",
"88601 NaN \n",
"88802 NaN \n",
"88816 NaN \n",
"88863 Find answers to specific questions;Learn how t... \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",
"88377 3-5 times per week Stack Overflow was slightly faster \n",
"88601 NaN NaN \n",
"88802 NaN NaN \n",
"88816 NaN NaN \n",
"88863 6-10 times per week Stack Overflow was much faster \n",
"\n",
" SOHOWMUCHTIME SOACCOUNT \\\n",
"Respondent \n",
"1 31-60 minutes No \n",
"2 11-30 minutes Yes \n",
"3 NaN Yes \n",
"4 31-60 minutes Yes \n",
"5 NaN Yes \n",
"... ... ... \n",
"88377 11-30 minutes Yes \n",
"88601 NaN NaN \n",
"88802 NaN NaN \n",
"88816 NaN NaN \n",
"88863 11-30 minutes Yes \n",
"\n",
" SOPARTFREQ \\\n",
"Respondent \n",
"1 NaN \n",
"2 A few times per month or weekly \n",
"3 Less than once per month or monthly \n",
"4 Less than once per month or monthly \n",
"5 A few times per month or weekly \n",
"... ... \n",
"88377 I have never participated in Q&A on Stack Over... \n",
"88601 NaN \n",
"88802 NaN \n",
"88816 NaN \n",
"88863 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",
"88377 No, I knew that Stack Overflow had a job board... \n",
"88601 NaN \n",
"88802 NaN \n",
"88816 NaN \n",
"88863 Yes \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",
"88377 No, I've heard of them, but I am not part of a... \n",
"88601 NaN \n",
"88802 NaN \n",
"88816 NaN \n",
"88863 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",
"88377 No, not at all NaN \n",
"88601 NaN NaN \n",
"88802 NaN NaN \n",
"88816 NaN NaN \n",
"88863 Yes, somewhat Somewhat less welcome now than 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",
"88377 Tech articles written by other developers;Tech... NaN Man \n",
"88601 NaN NaN NaN \n",
"88802 NaN NaN NaN \n",
"88816 NaN NaN NaN \n",
"88863 Tech articles written by other developers;Indu... 18.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",
"88377 No NaN \n",
"88601 NaN NaN \n",
"88802 NaN NaN \n",
"88816 NaN NaN \n",
"88863 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",
"88377 NaN No \n",
"88601 NaN NaN \n",
"88802 NaN NaN \n",
"88816 NaN NaN \n",
"88863 Hispanic or Latino/Latina;White or of European... 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 \n",
"... ... ... \n",
"88377 Appropriate in length Easy \n",
"88601 NaN NaN \n",
"88802 NaN NaN \n",
"88816 NaN NaN \n",
"88863 Appropriate in length Easy \n",
"\n",
"[88883 rows x 84 columns]"
]
},
"execution_count": 23,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df.columns = [i.upper() for i in df.columns]\n",
"df\n",
"\n",
"df.columns = df.columns.str.replace(' ', '_')\n"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"df.rename(columns={'Gender' : \"Sex\", \"Age\" : \"Years\"}, inplace=True)"
]
}
],
"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.12.6"
}
},
"nbformat": 4,
"nbformat_minor": 2
}