转行数据分析——-大概是在两年前,这个想法就在我脑袋里面发芽了。但苦于自己知识储备和能力技能达不到数据分析师的需求,一直未将这个想法付诸实现。
近一年时间自己一直在空余时间学习数据分析相关的知识和工具。或许是因为自己的日常工作过于单调和重复,同时自己疏于动脑,学习效率已经降低了好多。惊觉自己不能再呆在舒适圈里面了,也不能再当温水里面的青蛙了,于是坚定了自己转行数据分析的想法。
转行就要面临自己从未接触过的空白区域,虽然这几年大数据、人工智很火,但是目前数据分析师的就业环境怎么样呢,在我心底也是个未知数。既然这样,那么不如亲自动手针对招聘网站的数据分析岗位进行挖掘分析,同时记录下来作为我转行求职简历的一部分,这样就很有意义了。
面试官你好,感谢你在百忙之中挑中了我的简历,或许因为你这次简单的“click”,将改变我今后的职业轨迹。感谢你的耐心阅读——有缘人!!!因为这是我数据分析的处女作。
—————————————严肃的分割线——————————————-
在分析之前我查询了大大小小的招聘网站,最终选择了boss直聘,不仅仅是因为boss网站源码最简单,而且信息也很丰富全面。但是boss直聘网站爬1页只能获取30条信息,而且最坑爹的是只能爬前10页,也就是说最多只能有300条的信息。数据量是少了点,就当是随机抽样了,拿来练手正好。那么话不多说,开爬!!!
数据来源:boss直聘.
数据范围:数据分析相关岗位.
数据集:boss直聘招聘网站全国各行业数据分析师招聘信息数据集.
工具:爬虫
##载入所需要的包
library(xml2)
library(rvest)
library(dplyr)
library(magrittr)
library(zoo)
#指定要爬取的url,创建空数据框接收for循环里的信息
url1 <- "https://www.zhipin.com/c100010000/?query=%E6%95%B0%E6%8D%AE%E5%88%86%E6%9E%90%E5%B8%88&page="
url2 <- "&ka=page-"
job_data <- data.frame()
salary_data <- data.frame()
company_data <- data.frame()
detail1_data <- data.frame()
detail2_data <- data.frame()
for(i in 1:10){
url <- paste(url1,i,url2,i,sep = "")
webpage <- read_html(url,encoding = "UTF-8")
job_info <- html_nodes(webpage,xpath = "//div[@class='job-title']/text()") %>%
html_text() %>%
data.frame()
job_data <- bind_rows(job_data,job_info)
salary_info <- html_nodes(webpage,xpath = "//span[@class='red']/text()") %>%
html_text() %>%
data.frame()
salary_data <- bind_rows(salary_data,salary_info)
company_info <- html_nodes(webpage,xpath = "//div[@class='company-text']//a/text()") %>%
html_text() %>%
data.frame()
company_data <- bind_rows(company_data,company_info)
detail1_info <- html_nodes(webpage,xpath = "//div[@class='company-text']/p/text()") %>%
html_text() %>%
data.frame()
detail1_data <- bind_rows(detail1_data,detail1_info)
detail2_info <- html_nodes(webpage,xpath = "//div[@class='info-primary']/p/text()") %>%
html_text() %>%
data.frame()
detail2_data <- bind_rows(detail2_data,detail2_info)
}
names(job_data) <- "job"
names(salary_data) <- "salary"
names(company_data) <- "company"
names(detail1_data) <- "detail1"
names(detail2_data) <- "detail2"
看看爬取下来的数据。
lapply(list(job_data,salary_data,company_data,detail1_data,detail2_data),str)
## 'data.frame': 300 obs. of 1 variable:
## $ job: Factor w/ 50 levels "【华为桌面云】项目数据分析",..: 14 14 27 14 14 27 6 14 14 14 ...
## 'data.frame': 300 obs. of 1 variable:
## $ salary: Factor w/ 93 levels "10-11K","10-12K",..: 75 49 46 62 89 28 28 32 4 66 ...
## 'data.frame': 300 obs. of 1 variable:
## $ company: Factor w/ 220 levels "1药网","58到家",..: 186 182 173 38 67 4 8 4 31 156 ...
## 'data.frame': 896 obs. of 1 variable:
## $ detail1: Factor w/ 54 levels "0-20人","100-499人",..: 23 47 3 46 47 4 18 47 4 15 ...
## 'data.frame': 900 obs. of 1 variable:
## $ detail2: Factor w/ 178 levels "1-3年","10年以上",..: 45 1 168 125 5 38 140 5 38 84 ...
## [[1]]
## NULL
##
## [[2]]
## NULL
##
## [[3]]
## NULL
##
## [[4]]
## NULL
##
## [[5]]
## NULL
除了公司、职位、薪资三个信息比较清晰之外,像所处行业、发展阶段、公司规模三个信息在同一个数据框里面,所处城市、经验要求、学历要求也在同一个数据框里面。当前我的首要任务,就是把这些信息分开,以便于后面的分析。而且细心的我还观察到,“detail1_data”这个数据框只有896条数据,缺失了4条信息,那么就需要我手动添加缺失值了。
detail_data <- c(detail1_data$detail1[1:496],"不需要融资",detail1_data$detail1[497:663],
"不需要融资",detail1_data$detail1[664:827],"不需要融资",
detail1_data$detail1[828:889],"不需要融资",detail1_data$detail1[890:nrow(detail1_data)]) %>% data.frame()
detail_data$id <- index(detail_data)
industry_data <- detail_data[detail_data$id %% 3 == 1,1] %>%
data.frame()
phase_data <- detail_data[detail_data$id %% 3 == 2,1] %>%
data.frame()
scale_data <- detail_data[detail_data$id %% 3 == 0,1] %>%
data.frame()
detail2_data$id <- index(detail2_data)
city_data <- detail2_data[detail2_data$id %% 3 == 1,1] %>%
data.frame()
experience_data <- detail2_data[detail2_data$id %% 3 == 2,1] %>%
data.frame()
education_data <- detail2_data[detail2_data$id %% 3 == 0,1] %>%
data.frame()
final_data <- cbind(company_data,job_data,salary_data,city_data,experience_data,
education_data,industry_data,phase_data,scale_data) %>% data.frame()
names(final_data) <- c("company","job","salary","city","experience","education",
"industry","phase","scale")
看看处理过的数据
str(final_data)
## 'data.frame': 300 obs. of 9 variables:
## $ company : chr "纬创软件" "网易" "腾讯" "必普创富" ...
## $ job : chr "数据分析" "数据分析" "数据分析师" "数据分析" ...
## $ salary : chr "6-7K" "25-50K" "25-35K" "4-5K" ...
## $ city : chr "大连 " "上海 徐汇区 漕河泾" "深圳 南山区 科技园" "济南 历城区 汉峪" ...
## $ experience: chr "1-3年" "5-10年" "5-10年" "1-3年" ...
## $ education : chr "学历不限" "本科" "本科" "大专" ...
## $ industry : chr "计算机软件" "移动互联网" "互联网" "电子商务" ...
## $ phase : chr "已上市" "已上市" "已上市" "已上市" ...
## $ scale : chr "1000-9999人" "10000人以上" "10000人以上" "1000-9999人" ...
head(final_data)
## company job salary city experience education
## 1 纬创软件 数据分析 6-7K 大连 1-3年 学历不限
## 2 网易 数据分析 25-50K 上海 徐汇区 漕河泾 5-10年 本科
## 3 腾讯 数据分析师 25-35K 深圳 南山区 科技园 5-10年 本科
## 4 必普创富 数据分析 4-5K 济南 历城区 汉峪 1-3年 大专
## 5 哈啰出行 数据分析 8-15K 上海 闵行区 莘庄 1-3年 大专
## 6 Boss直聘 数据分析师 15-30K 北京 朝阳区 太阳宫 3-5年 本科
## industry phase scale
## 1 计算机软件 已上市 1000-9999人
## 2 移动互联网 已上市 10000人以上
## 3 互联网 已上市 10000人以上
## 4 电子商务 已上市 1000-9999人
## 5 互联网 D轮及以上 1000-9999人
## 6 人力资源服务 D轮及以上 1000-9999人
上面的数据虽然我简单处理过了,但是可以看出来还是很脏。比如“salary”给定的是一个区间,而且还有很多不止12薪的;“city”里面有的地址太具体了,而且格式不统一,我们只需要前面的城市即可,后面的什么区、什么庄的,不太需要吧。 我们可以用平均工资来代替区间工资,工作经验要求里面,“经验不限”和“应届生”可以都变为“一年以下”,“city”只取前面的城市即可。
虽然已经手动插补了缺失值,其实已经知道了数据没有缺失值,但是为了确保万无一失,还是要象征性过一遍。
library(VIM)
aggr(final_data,prop = T,numbers = T)
#删除重复行
final_data <- final_data[!duplicated(final_data[c("company","job","city")]),]
#计算平均工资
min_salary <- as.numeric(sub("([0-9]*).*","\\1",final_data$salary))
max_salary <- as.numeric(sub(".*-([0-9]*).*","\\1",final_data$salary))
final_data$avg_salary <- (min_salary+max_salary)/2
#取“city”中的城市
final_data$address <- strsplit(as.character(final_data$city)," ") %>%
sapply("[",1)
#把“experience”里的“经验不限”和“应届生”变为“1年以下”
final_data$experience[final_data$experience %in% c("经验不限","应届生")] <- "1年以内"
final_data$experience <- factor(final_data$experience,levels = c("1年以内","1-3年","3-5年","5-10年","10年以上"))
final_data$address <- factor(final_data$address)
final_data$industry <- factor(final_data$industry)
final_data$education <- factor(final_data$education,levels = c("学历不限","高中","大专","本科","硕士"))
final_data$scale <- factor(final_data$scale,levels = c("0-20人","20-99人","100-499人","500-999人","1000-9999人","10000人以上"))
final_data$phase <- factor(final_data$phase,levels = c("不需要融资","未融资","A轮","B轮","C轮","D轮及以上","已上市"))
数据清洗完毕,得到清洗后的数据
str(final_data)
## 'data.frame': 276 obs. of 11 variables:
## $ company : chr "纬创软件" "网易" "腾讯" "必普创富" ...
## $ job : chr "数据分析" "数据分析" "数据分析师" "数据分析" ...
## $ salary : chr "6-7K" "25-50K" "25-35K" "4-5K" ...
## $ city : chr "大连 " "上海 徐汇区 漕河泾" "深圳 南山区 科技园" "济南 历城区 汉峪" ...
## $ experience: Factor w/ 5 levels "1年以内","1-3年",..: 2 4 4 2 2 3 3 2 2 2 ...
## $ education : Factor w/ 5 levels "学历不限","高中",..: 1 4 4 3 3 4 4 4 1 4 ...
## $ industry : Factor w/ 41 levels "O2O","餐饮","地产经纪/中介",..: 12 34 7 4 7 22 4 22 34 5 ...
## $ phase : Factor w/ 7 levels "不需要融资","未融资",..: 7 7 7 7 6 6 5 6 6 1 ...
## $ scale : Factor w/ 6 levels "0-20人","20-99人",..: 5 6 6 5 5 5 5 5 4 5 ...
## $ avg_salary: num 6.5 37.5 30 4.5 11.5 22.5 22.5 21.5 12.5 6 ...
## $ address : Factor w/ 49 levels "北京","亳州",..: 5 27 29 16 27 1 29 1 19 10 ...
library(ggplot2)
library(ggthemes)
w <- windowsFont(family = "Microsoft YaHei")
attach(final_data)
bins <- (max(avg_salary)-min(avg_salary))/20
ggplot(final_data,aes(avg_salary,..density..))+
geom_histogram(fill = "turquoise3",color = "white",binwidth = bins)+
scale_x_continuous(breaks = seq(0,max(avg_salary),5))+
stat_density(geom = "line",color = "red",size = .8)+
theme_economist()+
labs(x = "月薪(K/月)",title = "月薪分布情况")+
theme(plot.title = element_text(hjust = 0.5,size = 15,face = "bold"),
axis.title = element_text(size = 12,face = "bold"))+
geom_vline(xintercept = sum(avg_salary)/nrow(final_data),lty = 2,col = "red",lwd = .8)+
annotate("text",17,0.04,label = "15.7")
可以看到月薪均值为15.7K(这个数值简直出乎我的意料),月薪分布最主要集中在5-25K之间。均值在本次研究中的意义不是很大,参考下就行。其实我们还可以从图中还可以看到月薪分布最集中的还是在5-10K之间。
tab_data <- prop.table(table(final_data$address)) %>% data.frame()
names(tab_data)[1] <- "city"
ggplot(tab_data,aes(reorder(city,-Freq,sum),Freq))+
geom_bar(fill = "turquoise3",stat = "identity")+
theme_economist()+
theme(axis.text.x = element_text(angle = 90, hjust = 1, vjust = 0,size = 10),
axis.title = element_text(size = 12,face = "bold"),
plot.title = element_text(hjust = .5,size = 15,face = "bold"))+
labs(x = "城市",y = "需求量",title = "不同城市对数据分析师的需求情况")+
scale_y_continuous(labels = scales::percent)
可以看到,对数据分析师需求高的是“北上广深杭”这几个一线城市,占据数据分析师需求的90%以上,而且可以看到城市越发达,对数据分析师的需求越高,这跟我们的感性思维比较符合。
final_data$address_type <- NA
final_data$address_type[final_data$address %in% c("北京","上海","广州","深圳","杭州")] <- "top5"
final_data$address_type[is.na(final_data$address_type)] <- "other"
final_data$address_type <- factor(final_data$address_type,levels = c("top5","other"))
ggplot(final_data,aes(x = address,y = avg_salary,fill = address_type))+
geom_boxplot()+
theme_economist()+
labs(x = "城市",y = "月薪 K/月",title = "不同城市薪酬水平比较")+
theme(plot.title = element_text(hjust = 0.5,size = 15,face = "bold"),
axis.text.x = element_text(angle = 90,hjust = 1,vjust = 0,size = 10),
axis.title = element_text(size = 12,face = "bold"),
legend.title = element_blank())
同时可以看到,数据分析师需求最大的几个城市薪酬水平相对较高,但是广州的数据分析师的薪酬水平相较其他几个一线城市低了很多,甚至赶不上苏州、厦门、武汉等城市。其中一些城市,比如青岛、沈阳、乌鲁木齐、重庆等城市虽然薪酬水平看起来高,但是这是样本容量太少所致,所以分析起来意义不大。
tab_indusry <- table(industry) %>% prop.table() %>% data.frame()
final_data$industry_type <- NA
final_data$industry_type[final_data$industry %in%
c("互联网","移动互联网","计算机软件","互联网金融","电子商务")] <- "top5"
final_data$industry_type[is.na(final_data$industry_type)] <- "other"
final_data$industry_type <- factor(final_data$industry_type,levels = c("top5","other"))
ggplot(tab_indusry,aes(reorder(industry,-Freq,sum),Freq))+
geom_bar(stat = "identity",fill = "turquoise3")+
theme_economist()+
labs(x = "行业",y = "需求量",title = "不同行业对数据分析师的需求")+
theme(plot.title = element_text(hjust = 0.5,size = 17,face = "bold"),
axis.title = element_text(size = 13,face = "bold"),
axis.text.x = element_text(angle = 90,hjust = 1,vjust = 0,size = 10))+
scale_y_continuous(labels = scales::percent)
互联网相对于传统行业,对数据分析师的需求量大很多,占比90%以上。这还是行业特性所致,互联网相较于传统行业,数据的产生速度以及产生的数据量都大很多,那么这个数据占比也说得通了。相反,传统行业目前对数据分析师的需求并不是那么大,可以说很多企业都处于空白阶段,可能是由于这些企业数据还没有规范化。但是从另一个方面来讲,这也意味着传统行业有着更多的发展空间。我相信过不了多长时间,像医疗健康、物流仓储、人力资源服务等行业对数据分析师的需求会越来越大,这些行业数据分析师的就业前景相当可观。
ggplot(final_data,aes(industry,avg_salary,fill = industry_type))+
geom_boxplot()+
theme_economist()+
labs(x = "行业",y = "薪资(K/月)",title = "不同行业的薪酬分布")+
theme(plot.title = element_text(size = 15,hjust = 0.5,face = "bold"),
axis.title = element_text(size = 13,face = "bold"),
axis.text.x = element_text(angle = 90,hjust = 1,vjust = 0,size = 10),
legend.title = element_blank())
需求量大,不一定薪资水平就高。计算机软件和电子商务薪资水平,相较于其他互联网行业来说不是很高。汽车生产、人力资源服务、社交网络、医疗护理等行业,数据分析师的需求量不是很大,但是薪酬水平很高。这几个行业未来可以重点关注下。
multiplot <- function(..., plotlist=NULL, file, cols=1, layout=NULL) {
library(grid)
plots <- c(list(...), plotlist)
numPlots = length(plots)
if (is.null(layout)) {
layout <- matrix(seq(1, cols * ceiling(numPlots/cols)),
ncol = cols, nrow = ceiling(numPlots/cols))
}
if (numPlots==1) {
print(plots[[1]])
} else {
grid.newpage()
pushViewport(viewport(layout = grid.layout(nrow(layout), ncol(layout))))
for (i in 1:numPlots) {
matchidx <- as.data.frame(which(layout == i, arr.ind = TRUE))
print(plots[[i]], vp = viewport(layout.pos.row = matchidx$row,
layout.pos.col = matchidx$col))
}
}
}
tab_exp <- table(experience) %>% prop.table() %>% data.frame()
p1 <- ggplot(tab_exp,aes(experience,Freq,fill = experience))+
geom_bar(stat = "identity")+
theme_economist()+
labs(y = "不同工作经验需求占比",title = "工作经验的需求")+
theme(plot.title = element_text(hjust = 0.5,size = 18,face = "bold"),
axis.title = element_text(size = 13,face = "bold"),
legend.title = element_blank(),
legend.position = "none",
axis.title.x = element_blank())+
scale_y_continuous(labels = scales::percent)
p2 <- ggplot(final_data,aes(x = experience,y = avg_salary,fill = experience))+
geom_boxplot()+
theme_economist()+
labs(y = "月薪 K/月",title = "不同工作经验的薪资水平")+
theme(plot.title = element_text(hjust = 0.5,size = 18,face = "bold"),
legend.position = "none",
axis.title = element_text(size = 13,face = "bold"),
axis.title.x = element_blank())
multiplot(p1,p2,cols = 2)
可以看到最多的工作经验需求集中在1-3年和3-5年之间,1年之内需求其实也不少了。所以,只要你有能力,即使没有工作经验,也有相当大的转行机会。
另外,随着工作经验的增长,薪资水平增长很客观。10年以上的工作经验由于样本容量太小,无实际参考意义,可以忽略。
tab_education <- table(education) %>% prop.table() %>% data.frame()
p3 <- ggplot(tab_education,aes(education,Freq,fill = education))+
geom_bar(stat = "identity")+
theme_economist()+
labs(y = "不同学历占比",title = "学历的需求")+
theme(plot.title = element_text(hjust = 0.5,size = 18,face = "bold"),
axis.title = element_text(size = 13,face = "bold"),
legend.title = element_blank(),
legend.position = "none",
axis.title.x = element_blank())+
scale_y_continuous(labels = scales::percent)
p4 <- ggplot(final_data,aes(x = education,y = avg_salary,fill = education))+
geom_boxplot()+
theme_economist()+
labs(y = "月薪 K/月",title = "不同学历的薪资水平")+
theme(plot.title = element_text(hjust = 0.5,size = 18,face = "bold"),
legend.position = "none",
axis.title = element_text(size = 13,face = "bold"),
axis.title.x = element_blank())
multiplot(p3,p4,cols = 2)
接近80%的公司都要求本科以上。大专以下与大专以上的薪资水平差距明显,但是本科和硕士的薪资水平差距不是很大。学历不限这一项薪资水平接近本科的薪资水平,并且80%以上的公司都要求本科以上,所以我判断可能是因为招聘者对学历这一项信息缺失输入造成的,学历不限这个水平可以并入本科。
tab_phase <- table(phase) %>% prop.table() %>% data.frame()
ggplot(tab_phase,aes(phase,Freq,fill = phase))+
geom_bar(stat = "identity")+
theme_economist()+
labs(title = "不同发展阶段的企业对数据分析师的需求")+
theme(plot.title = element_text(hjust = 0.5,size = 18,face = "bold"),
axis.title = element_text(size = 13,face = "bold"),
legend.title = element_blank(),
legend.position = "none",
axis.title.x = element_blank(),
axis.title.y = element_blank())+
scale_y_continuous(labels = scales::percent)
ggplot(final_data,aes(x = phase,y = avg_salary,fill = phase))+
geom_boxplot()+
theme_economist()+
labs(y = "月薪 K/月",title = "不同阶段的企业数据分析师的薪资水平")+
theme(plot.title = element_text(hjust = 0.5,size = 18,face = "bold"),
legend.position = "none",
axis.title = element_text(size = 13,face = "bold"),
axis.title.x = element_blank())
虽然上市公司对数据分析师的需求相对高很多,但是不一定能给出更高的薪酬。
tab_scale <- table(scale) %>% prop.table() %>% data.frame()
ggplot(tab_scale,aes(scale,Freq,fill = scale))+
geom_bar(stat = "identity")+
theme_economist()+
labs(title = "不同规模的企业对数据分析师的需求")+
theme(plot.title = element_text(hjust = 0.5,size = 18,face = "bold"),
axis.title = element_text(size = 13,face = "bold"),
legend.title = element_blank(),
legend.position = "none",
axis.title.x = element_blank(),
axis.title.y = element_blank())+
scale_y_continuous(labels = scales::percent)
ggplot(final_data,aes(x = scale,y = avg_salary,fill = scale))+
geom_boxplot()+
theme_economist()+
labs(y = "月薪 K/月",title = "不同规模的企业数据分析师的薪资水平")+
theme(plot.title = element_text(hjust = 0.5,size = 18,face = "bold"),
legend.position = "none",
axis.title = element_text(size = 13,face = "bold"),
axis.title.x = element_blank())
是的,没错,规模越大的公司能给出更高的薪资。由于10000人以上的公司相较1000-9999人的公司数量而言, 在数量上少一些,所以直接体现在对数据分析师的需求数量上,这个结论也是没有在意料之外。
tab_se <- table(scale,experience) %>% prop.table(1) %>% data.frame()
tab_pe <- table(phase,experience) %>% prop.table(1) %>% data.frame()
ggplot(tab_se,aes(scale,Freq,fill = experience))+
geom_bar(stat = "identity")+
theme_bw()+
labs(title = "不同规模的企业对经验的要求")+
theme(legend.title = element_blank(),
plot.title = element_text(hjust = 0.5,size = 18,face = "bold"),
axis.title = element_blank())+
geom_text(aes(label = paste(round(tab_se$Freq,3)*100,"%",sep = "")),colour = "white",
position = position_stack(0.5),vjust = 0)+
scale_y_continuous(labels = scales::percent)
ggplot(tab_pe,aes(phase,Freq,fill = experience))+
geom_bar(stat = "identity")+
theme_bw()+
labs(title = "不同发展阶段的企业对经验的要求")+
theme(legend.title = element_blank(),
plot.title = element_text(hjust = 0.5,size = 18,face = "bold"),
axis.title = element_blank())+
geom_text(aes(label = paste(round(tab_pe$Freq,3)*100,"%",sep = "")),colour = "white",
position = position_stack(0.5),vjust = 0)+
scale_y_continuous(labels = scales::percent)
可以看到企业规模越大,对数据分析师工作经验的要求越高。不同发展阶段的公司,对数据分析师的经验要求没有明显差别。
tab_sedu <- table(scale,education) %>% prop.table(1) %>% data.frame()
tab_pedu <- table(phase,education) %>% prop.table(1) %>% data.frame()
ggplot(tab_sedu,aes(scale,Freq,fill = education))+
geom_bar(stat = "identity")+
theme_bw()+
labs(title = "不同规模的企业对学历的要求")+
theme(legend.title = element_blank(),
plot.title = element_text(hjust = 0.5,size = 18,face = "bold"),
axis.title = element_blank())+
geom_text(aes(label = paste(round(tab_sedu$Freq,3)*100,"%",sep = "")),colour = "white",
position = position_stack(0.5),vjust = 0)+
scale_y_continuous(labels = scales::percent)
ggplot(tab_pedu,aes(phase,Freq,fill = education))+
geom_bar(stat = "identity")+
theme_bw()+
labs(title = "不同发展阶段的企业对学历的要求")+
theme(legend.title = element_blank(),
plot.title = element_text(hjust = 0.5,size = 18,face = "bold"),
axis.title = element_blank())+
geom_text(aes(label = paste(round(tab_pedu$Freq,3)*100,"%",sep = "")),colour = "white",
position = position_stack(0.5),vjust = 0)+
scale_y_continuous(labels = scales::percent)
与工作经验类似,规模越大的公司对学历的要求越高。而不同发展阶段的公司对学历的要求差异不是很明显。
需求量:
1.“北上广深杭”等一线城市对数据分析师的需求最高。城市越发达,对数据分析师的需求大;
2.互联网企业相较于其他传统行业来说,对数据分析师的需求更高。医疗健康、物流仓储、人力资源服务等行业对数据分析师的需求也不低,未来发展可期;
3.上市公司对数据分析师的需求最高;
4.公司规模越大对数据分析师的需求越高。
薪资水平:
1.数据分析师需求最大的几个城市薪酬水平相对较高,但是广州的数据分析师的薪酬水平相较其他几个一线城市低了很多,甚至赶不上苏州、厦门、武汉等城市;
2.在不同行业,需求量大,不一定薪资水平就高。计算机软件和电子商务薪资水平,相较于其他互联网行业来说不是很高。汽车生产、人力资源服务、社交网络、医疗护理等行业,数据分析师的需求量不是很大,但是薪酬水平很高;
3.虽然上市公司对数据分析师的需求相对高很多,但是不一定能给出更高的薪酬;
4.规模越大的公司能给出更高的薪资。
工作经验要求:
1.企业规模越大,对数据分析师工作经验的要求越高;
2.不同发展阶段的公司,对数据分析师的经验要求没有明显差别。
学历的要求:
1.企业规模越大,对学历的要求越高;
2.不同发展阶段的公司,对数据分析师的学历要求没有明显差别。
——————————— 感谢您的耐心阅读 ————————————-