首页 > 其他分享 >大模型岗位招聘数据分析及可视化

大模型岗位招聘数据分析及可视化

时间:2024-09-11 14:20:08浏览次数:12  
标签:数据分析 plt df 岗位 招聘 可视化 import 薪资 地点

数据入口:大模型相关岗位招聘数据集 - Heywhale.com

一:数据介绍

首先预览提供的数据,数据文件为CSV格式文件,约有5000条招聘信息,共10个字段,岗位名称,工作地点,岗位薪资,经验要求,学历要求,岗位标签,企业名称,企业行业,企业规模,融资状况。可以分别对每个字段进行数据分析。数据大致如下:

首先导入所需的库:

import matplotlib.pyplot as plt  # 首先导入matplotlib.pyplot
# 配置matplotlib支持中文显示
plt.rcParams['font.sans-serif'] = ['SimHei']  # 'SimHei'是黑体的字体名称
plt.rcParams['font.family'] = 'sans-serif'
plt.rcParams['axes.unicode_minus'] = False
import pandas as pd  # 然后导入pandas
import seaborn as sns  # 最后导入seaborn

然后读取数据基本详情:

# 读取文件
df = pd.read_csv('大模型岗位信息.csv')
print('数据基本信息:')
df.info()

可以看出数据无空缺值。

二:平均薪资分布

由于岗位薪资的数据不太规划,可以先进行数据预处理求出平均薪资:

# 仅保留岗位薪资范围
df["岗位薪资"] = df["岗位薪资"].map(lambda x:x.split("·")[0])
# 计算平均薪资
def Calculate_average_salary(Salary_Range):
    if Salary_Range not in ["薪资面议","面议"]:
        minSalary, maxSalary = int(Salary_Range.split("-")[0]), int(Salary_Range.split("-")[-1][:-1])

        avgSalary = (minSalary + maxSalary) / 2
    else:
        avgSalary = None

    return avgSalary
    
df["平均薪资"] = df["岗位薪资"].map(lambda x:Calculate_average_salary(x))

然后根据“平均薪资”一列进行数据预处理:

# 使用seaborn创建直方图
sns.histplot(df['平均薪资'], bins=10, kde=True)  # kde参数为True表示添加核密度估计曲线

# 添加标题和标签
plt.xlabel('薪资(元)')
plt.ylabel('频数')
plt.title('薪资分布')

# 显示图形
plt.show()

从上述图发现大多数大模型相关岗位的平均月薪资分布在100K以内

三:更多的数据分析可视化

工作地点的数量与薪资分布

为了避免重复,后续一些代码在附录中。

可以看出大部分大模型产业在上海,北京,深圳的平均薪资较高。

四:学历要求的数量与薪资分析

可以看出对学历要求较多的是硕士,本科和统招本科,学历越高一般平均薪资越高。

五:经验要求的数量与薪资分布

大部分企业的要求是在1-3年或10年以上。所有一般需要有经验的人员。

六:企业规模与融资情况分布

可以看出大部分大模型企业都是10000人以上的大型公司。

七:热门行业的薪资分布

可以看出大模型岗位行业集中在IT服务,互联网,人工智能,计算机软件和通信设备。

四:岗位要求的词云图

import pandas as pd
from wordcloud import WordCloud
import matplotlib.pyplot as plt

# 将岗位名称列的数据转换为字符串类型
text = ' '.join(df['岗位名称'].astype(str))
# 指定中文字体,前提要求是有该'wqy-zenhei.ttc'字体文件。
font_path = 'wqy-zenhei.ttc'

# 创建词云对象
wordcloud = WordCloud(width=800, height=400, background_color='white', font_path=font_path).generate(text)

# 绘制词云图
plt.figure(figsize=(10, 5))
plt.imshow(wordcloud, interpolation='bilinear')
plt.axis('off')
plt.show()

绘制的关于岗位要求的词云图如下:

想要探索更多元化的数据分析视角,可以关注之前发布的相关内容。

五:附录(三、四、五、六、七代码)

三:

# 仅保留工作城市
df["工作地点"] = df["工作地点"].map(lambda x:x.split("-")[0])

# 使用seaborn创建直方图
sns.histplot(df['工作地点'], bins=10, kde=True)  # kde参数为True表示添加核密度估计曲线

# 添加标题和标签
plt.xlabel('不同工作地点')
plt.ylabel('频数')
plt.title('工作地点分布')

# 显示图形
plt.show()

average_salary_by_location = df.groupby('工作地点')['平均薪资'].mean().reset_index()
plt.figure(figsize=(10, 6))
plt.bar(average_salary_by_location['工作地点'], average_salary_by_location['平均薪资'], color='skyblue')
plt.xlabel('工作地点')
plt.ylabel('平均薪资 (k)')
plt.title('不同地点的平均薪资')
plt.xticks(rotation=45)
plt.tight_layout()
plt.show()

四,五,六,七的代码入口:

‌​‌​‌‬‬‍​‍‍‌​‍​‌​​‍​‍​​​​‬‌​​​​‍⁠​⁠​‬‍​‌‍​​​‬‬代码 - 飞书云文档 (feishu.cn)

想要探索多元化的数据分析视角,可以关注之前发布的相关内容。

标签:数据分析,plt,df,岗位,招聘,可视化,import,薪资,地点
From: https://blog.csdn.net/2301_80651329/article/details/142109868

相关文章