You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

基于招聘技能需求频率的相似职业识别(R语言实现)

用R语言分析职业技能关联的实现方案

1. 环境准备与数据导入

首先安装并加载所需核心包:

# 安装包(仅首次运行需要)
install.packages(c("tidyverse", "proxy", "factoextra"))

# 加载包
library(tidyverse)
library(proxy)
library(factoextra)

假设你的数据集是CSV格式,用以下代码导入并清理无效数据:

# 导入数据,替换为你的文件路径
job_data <- read.csv("招聘数据集.csv", stringsAsFactors = FALSE)

# 移除技能字段为空的无效记录
job_data_clean <- job_data %>%
  filter(!is.na(skillname) & skillname != "")

2. 统计各职业的技能需求频率

先按职业和技能分组统计出现次数,再转换为职业-技能频率矩阵(行=职业,列=技能,值=该技能在对应职业中的需求次数):

# 统计职业-技能的需求频次
skill_freq <- job_data_clean %>%
  group_by(occname, skillname) %>%
  summarise(freq = n(), .groups = "drop")

# 转换为宽格式矩阵,缺失技能的频次填充为0
skill_matrix <- skill_freq %>%
  pivot_wider(names_from = skillname, values_from = freq, values_fill = 0)

# 提取数值矩阵并设置行名为职业名称
row_names <- skill_matrix$occname
skill_matrix_num <- skill_matrix %>% select(-occname) %>% as.matrix()
rownames(skill_matrix_num) <- row_names

3. 计算职业间的技能相似度

用余弦相似度衡量职业间的技能需求相似性(值越接近1,代表技能需求重合度越高):

# 计算余弦相似度矩阵
similarity_matrix <- simil(skill_matrix_num, method = "cosine")

# 转换为数据框方便查看
similarity_df <- as.data.frame(as.matrix(similarity_matrix))

4. 识别技能需求相似的关联职业

方式1:筛选高相似度职业对

设定相似度阈值(比如0.8),筛选出符合条件的职业组合:

# 将相似度矩阵转换为长格式,避免重复配对
similarity_long <- similarity_df %>%
  rownames_to_column(var = "职业A") %>%
  pivot_longer(cols = -职业A, names_to = "职业B", values_to = "相似度") %>%
  filter(职业A < 职业B, 相似度 >= 0.8)

# 查看结果
print(similarity_long)

方式2:聚类分析分组相似职业

用层次聚类将技能需求相似的职业归为一类,可视化聚类结果:

# 基于相似度矩阵进行层次聚类
hc <- hclust(as.dist(1 - similarity_matrix), method = "ward.D2")

# 绘制聚类树,k为聚类组数,可按需调整
fviz_dend(hc, cex = 0.6, k = 3,
          main = "职业技能需求相似性聚类树",
          xlab = "职业",
          ylab = "相似度距离")

关键说明

  • 若数据集为Excel格式,可替换read.csv为read_excel(需先安装readxl包)。
  • 相似度阈值可根据数据实际分布调整,比如0.7或0.9。
  • 若仅关注技能是否被需求而非频次,可改用method = "jaccard"计算相似度。

内容的提问来源于stack exchange,提问作者Dandae

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.01 04:11:19