玩免费代码训练营数据Pt 2

深入数据

大家好! 很高兴您回来了。 今天我们要完成这个项目。 我们正在分析2016年Free Code Camp调查中对数据科学家和数据工程师职位感兴趣的人员,以建立客户角色。 我们通过了解参与者的年龄范围来启动EDA流程。 让我们弄清楚有多少人去过技术训练营。

 表(DSInt_df $ AttendedBootcamp) 
  0 1 
622 13

不要为此感到震惊。 在R中,1被认为是True,0被认为是False。 我最初通过超级侦探方法来解决这个问题,然后再实际搜索它。 你生活,你学习。 为了方便起见,这很容易解决:

  DSInt_df $ AttendedBootcamp <-因素(DSInt_df $ AttendedBootcamp,级别= c(1,0),标签= c('是','否')) 
 表(FCC_df $ JobRelocateYesNo) 
是否
13622
  DSInt_df%>% 
ggplot(aes(AttendedBootcamp))+
geom_bar(填充=“绿色”)

显然,我们的许多潜在客户从未去过训练营。 这消除了有关该主题的其他问题,例如他们是否毕业,是否有工作后记,现在赚了多少等等。有时这些事情会发生。 您只需要充分利用现有资源即可。 因此,我们继续讨论更多问题。

您是软件开发人员吗?

对于具有技术角色的人员来说,过渡到具有类似技能的另一技术角色是很常见的。 考虑到数据工程师具有开发人员应具备的许多技能,因此软件开发通常是他们以前所担任的职位也就不足为奇了。 让我们来看看。

  DSInt_df $ IsSoftwareDev <-factor(DSInt_df $ IsSoftwareDev,级别= c(1,0),标签= c('是','否')) 
 表(DSInt_df $ IsSoftwareDev) 
是否
0 0

嗯,很奇怪。 虽然并非不可能,但我高度怀疑在潜在客户群中至少没有一位软件开发人员。 让我们看看是否可以找到原因:

 摘要(DSInt_df $ IsSoftwareDev) 
 是否NA 
0 0 646

646个不适用。 那意味着我们的前景由于一个或另一个原因而使这个问题不为所动。 令人失望,但我们继续前进。

尽管我已经回答了我最初的四个问题,但我还有其他一些感兴趣的事情。 例如:

我们的潜在客户居住在多大的城市?

  DSInt_df%>% 
ggplot(aes(CityPopulation))+
geom_bar(填充=“洋红色”)

不用说,大多数前景都存在于大城市中。 人口超过一百万的人口最多。 确切地说是229。 对于市场推广,这有助于确定重点。 但是我觉得我们可以从中得到更多。 在这些地区的居民中,他们的就业状况如何?

  DSInt_df%>% 
ggplot(aes(CityPopulation,fill = EmploymentStatus))+
geom_bar()

该图与上一个图相同,不同之处在于,每个条现在都填充有反映其就业状态的颜色。 这是您查看和比较每个人站立位置的一种好方法。 您可以看到这里的大多数人目前正在工作,但可能正在寻找工作。

  DSInt_df%>% 
ggplot(aes(CityPopulation,fill = EmploymentStatus))+
geom_bar(position =“道奇”

通过按就业状况更改条形图的位置,您可以按城市人口组并排查看每个就业状况。 这样,您可以看到每个城市人口中有多少人受雇是一个更大的群体,而不管他们有多大。 其次是失业者,但看上去很像。

总的来说,有267人在找工作,有137人在找工作或失业但正在寻找工作。 看到个人受雇于此的领域真的很有趣,但是可惜,缺少400多个观察结果。 在这里看到一个正在运行的主题? 现在,可以采取多种措施来处理丢失的数据。 在每种情况下,事实都是事实,它改变了数据的故事和/或事实,因此您必须小心并意识到可能要进行的任何取舍。 对于这个项目,我不想更改不存在的故事,而让大家知道可用的内容和不可用的内容。 我的github将显示更多代码,我尝试在其中进行调查并发现了不错的数据丢失块。

现在我们正处于最后阶段,还剩下几个问题。

我们的人口学历是多少?

  DSInt_df%>% 
ggplot(aes(SchoolDegree))+
geom_bar(fill =“ Turquoise”)+
coord_flip()

因此,当时所有潜在客户中的大多数都拥有学士学位。 看到现在的情况并使它与不同公司要求的教育水平相匹配会很有趣。 也许是未来的项目?

现在,我们的潜在客户期望从数据中获得多少收益?

  ggplot(DSInt_df,aes(x = ExpectedEarning))+ 
geom_histogram(fill =“ dark green”)

数据向右倾斜。 这很有趣。 考虑到对Glassdoor的快速搜索显示,今年数据科学家的基本工资为120,931美元。 平均值是根据该数据得出的平均值的一半。 最高数量似乎徘徊在60k附近。 我很好奇我们的潜在客户对这些薪水进行了多少研究,或者他们都只是猜到了什么。 最低实际是$ 6000,最高是$ 200,000(如果您从事银行等行业,这是可能的。)

考虑到教育程度和工资之间存在关系,根据人们的学历来研究他们的期望会很有趣:

  DSInt_df%>% 
mutate(SchoolDegree = fct_infreq(SchoolDegree))%>%
ggplot(aes(SchoolDegree,ExpectedEarning))+
geom_boxplot()+
coord_flip()

这是合并我们之前看到的数据以提供更多上下文的一种好方法。 例如,每个教育小组的最低费用都低于50,000美元。 除研究行业外,每组的最高金额都超过100,000美元。 拥有学士学位的人最高,最高约125,000美元。 Phds期望除少数非GED持有者之外的所有群体的薪资中位数更高,但最高薪资比不包括相同非GED持有者和副学士学位的群体的薪酬要低。 有趣的是,少数没有高中文凭/ GED的人实际上期望比具有贸易技能的人能赚更多的钱。

因此,我们将根据数据创建两个基本的营销角色。 我们称他们为弗兰克和简。

弗兰克(Frank)是一位24岁的年轻人,最近刚从大学毕业,获得计算机科学学士学位,目前正在工作。 弗兰克(Frank)希望将来能够转变为数据科学的角色,并希望赚取65,000美元的起薪。

Jane是一位26岁的女性,最近刚获得统计学博士学位,目前正在工作。 但是,她想探索自己的选择,并对机器学习角色感到好奇。 她希望起薪约为80,000美元。

感谢您坚持进行此分析。 尽管缺少数据,但在乏味的情况下尽您所能进行挑战可能很有趣。 我可以将此数据与2017年的调查进行比较,以了解故事或角色是否发生了任何变化。 如果您有兴趣,David Venturi会对这部分数据以及基于其他因素FreeCodeCamp数据的其他两篇文章进行自己的分析。 我建议你看看!