kaggle数据科学社区调查报告

欢迎关注天善智能,我们是专注于商业智能BI,人工智能AI,大数据分析与挖掘领域的垂直社区,学习,问答、求职一站式搞定!

本文作者:天善智能讲师邬书豪 。一入数据之门,当须精益求精。他日纵横捭阖,根据即在年轻!

天善智能社区地址:https://www.hellobi.com/


附视频链接:天善智能Kaggle十大案例精讲(连载中)提供案例代码和数据,可以实操。欢迎学习!(数据集和代码在链接公告处提供下载)

2017年8月26日,全球最大的数据科学社群Kaggle发布了数据科学/机器学习业界现状全行业调查的数据集。调查问卷数据从2017年8月7日~8月25日收集。受访者囊括了来自50多个国家的16,716+位从业者,根据kaggle的调查问卷数据集,我们挖掘一些有营养的信息。

################# =========== 导入数据+简单清洗 ============== #################

library(data.table)# fread()

library(dplyr)# group_by() / %>% / summaries()

library(ggplot2)# ggplot()

responses = fread("D:/R/天善智能/书豪十大案例/数据科学调查\\multipleChoiceResponses.csv")

## 把Country列中的表示中国的特征值改为中国

responses$Country <- ifelse(responses$Country =="Republic of China"|

responses$Country =="People 's Republic of China",

"China", responses$Country)

################# =========== 国家+年龄统计 ================ ##################

## 探索数据科学从业者的年龄中位数最大的十个国家

# 创建绘图所需的数据源(按照Country进行统计Age的中位数,并且按照Age进行降序排列)

df_country_age <- responses %>%

group_by(Country) %>%# 按照Country进行统计

summarise(AgeMedian = median(Age, na.rm = T)) %>%# 统计Age的中位数

arrange(desc(AgeMedian))# 按照Age进行降序排列

# reorder(Country, AgeMedian)--按照AgeMedian的升序排列其对应的Country

# head(df_country, 10)--选取数据源的前10行

# x参数中传入图中的x轴所需数据,y参数同理

# geom_bar()--绘制条形图的子函数

# fill = Country--按照Country填充条形图颜色

# stat(统计转换)参数设置为'identity',即对原始数据集不作任何统计变换

# geom_text()--添加文本注释的子函数

# label = AgeMedian--添加AgeMedian中的内容

# hjust--控制横向对齐(0:底部对齐,  0.5:居中,  1:顶部对齐)

# colour--控制注释颜色

# theme_minimal()--是ggplot的一种主背景主题

ggplot(head(df_country_age,10), aes(x = reorder(Country, AgeMedian), y = AgeMedian)) +

geom_bar(aes(fill = Country),stat='identity') +

labs(x ='Country', y ='AgeMedian') +

geom_text(aes(label = AgeMedian), hjust =1.5, colour ='white') +

coord_flip() +

theme_minimal() +

theme(legend.position ='none')# 移除图例

# 封装绘图函数

fun1 <-function(data, xlab, ylab, xname, yname) {

ggplot(data, aes(xlab, ylab)) +

geom_bar(aes(fill = xlab),stat='identity') +

labs(x = xname, y = yname) +

geom_text(aes(label = ylab), hjust =1.5, colour ='white') +

coord_flip() +

theme_minimal() +

theme(legend.position ='none')

}

data <- head(df_country_age,10)

xname <-'Country'

yname <-'AgeMedian'

fun1(data, reorder(data$Country, data$AgeMedian), data$AgeMedian, xname, yname)

## 探索数据科学从业者的年龄中位数最小的十个国家

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值