当前位置: 首页 > news >正文

广州网站建设便宜成都网站建设开发价

广州网站建设便宜,成都网站建设开发价,手机做wordpress,c语言开发网站后端数据入口#xff1a;人力资源分析数据集 - Heywhale.com 数据说明 字段说明EmpID唯一的员工IDAge年龄AgeGroup年龄组Attrition是否离职BusinessTravel出差#xff1a;很少、频繁、不出差DailyRate日薪Department任职部门#xff1a;研发部门、销售部门、人力资源部门Dista…数据入口人力资源分析数据集 - Heywhale.com 数据说明 字段说明EmpID唯一的员工IDAge年龄AgeGroup年龄组Attrition是否离职BusinessTravel出差很少、频繁、不出差DailyRate日薪Department任职部门研发部门、销售部门、人力资源部门DistanceFromHome通勤距离Education教育等级EducationField专业领域生命科学、医学、市场营销、技术、其他EnvironmentSatisfaction工作环境满意度Gender性别HourlyRate时薪JobInvolvement工作参与度JobLevel工作级别JobRole工作角色JobSatisfaction工作满意度MaritalStatus婚姻状况MonthlyIncome月收入SalarySlab工资单MonthlyRate月薪NumCompaniesWorked工作过的公司数量PercentSalaryHike加薪百分比PerformanceRating绩效评级RelationshipSatisfaction关系满意度StandardHours标准工时StockOptionLevel股票期权级别TotalWorkingYears总工作年数TrainingTimesLastYear去年培训时间WorkLifeBalance工作生活平衡评价YearsAtCompany在公司工作年数YearsInCurrentRole担任现职年数YearsSinceLastPromotion上次晋升后的年数YearsWithCurrManager与现任经理共事年数 import pandas as pd data HR_Analytics.csv data pd.read_csv(file_path) # 打印每一列的唯一值 for column in data.columns:print(fUnique values in {column}:)print(data[column].unique()) 通过这段代码可以了解每一列的唯一值。观察到某些列含有缺失值且缺失值的行数较少可以直接删去。 data_cleaned data.dropna()本文将通过随机森林与逻辑回归预测员工晋升路径和潜在的流失风险。 一预测员工晋升路径 数据理解首先需要查看CSV文件的内容以了解数据的结构和可用特征。这将帮助确定哪些特征可能与员工晋升路径相关。数据预处理基于数据理解可能需要进行数据清洗处理缺失值转换分类数据以及进行特征选择。模型选择选择一个合适的机器学习模型来预测员工晋升路径。考虑到这是一个分类问题逻辑回归、决策树或随机森林等模型可能适用。模型训练与评估使用历史数据训练模型并使用适当的评估指标如准确率、召回率、F1分数来评估模型性能。结果解释最后我将解释模型结果并提供关于员工晋升路径的预测。 首先检查数据集中的分类特征以便进行适当的编码 categorical_features data.select_dtypes(include[object, category]).columns.tolist()categorical_features 数据集中有多个分类特征包括员工ID、年龄组、离职情况、出差频率、部门、教育领域、性别、工作角色、婚姻状况和薪资等级。为了在机器学习模型中使用这些特征我们需要对它们进行编码。常见的编码方法包括独热编码One-Hot Encoding和标签编码Label Encoding。独热编码适用于具有多个类别且类别之间没有顺序关系的特征而标签编码适用于具有顺序关系的特征。 接下来我将使用独热编码处理具有多个类别的分类特征。然后我将选择与员工晋升路径相关的特征并准备数据集以进行模型训练。 data_encoded pd.get_dummies(data, columnscategorical_features, drop_firstTrue)data_encoded.head() 数据集经过独热编码后现在包含了1522个特征。这个特征数量对于建立一个有效的机器学习模型来说可能太多了可能会导致过拟合。因此我们需要进行特征选择只保留与员工晋升路径最相关的特征。 为了选择相关特征我们可以使用不同的特征选择方法例如基于模型的特征选择如使用随机森林的特征重要性或使用统计测试如卡方检验来选择与目标变量最相关的特征。在这个案例中我们的目标变量是员工是否晋升这需要我们首先定义晋升的标准。例如我们可以根据员工的工作等级JobLevel是否增加来定义晋升。 接下来我将定义晋升的标准并使用随机森林模型来确定哪些特征与晋升最相关。然后我将选择这些特征来训练模型。 from sklearn.ensemble import RandomForestClassifier from sklearn.model_selection import train_test_split from sklearn.metrics import accuracy_score, classification_report import numpy as npdata_encoded[Promotion] np.where(data_encoded[JobLevel] data_encoded[JobLevel].shift(-1), 1, 0)data_encoded.dropna(subset[Promotion], inplaceTrue)relevant_features [Education, TotalWorkingYears, TrainingTimesLastYear,YearsAtCompany, YearsInCurrentRole, YearsSinceLastPromotion,YearsWithCurrManager ]features data_encoded[relevant_features] target data_encoded[Promotion]X_train, X_test, y_train, y_test train_test_split(features, target, test_size0.2, random_state42)rf_classifier RandomForestClassifier(n_estimators100, random_state42)rf_classifier.fit(X_train, y_train)y_pred rf_classifier.predict(X_test)accuracy accuracy_score(y_test, y_pred)accuracy, classification_report(y_test, y_pred) 使用随机森林模型我们得到了大约70%的准确率可以使用该随机森林模型对数据进行预测。 此外从分类报告中我们可以看到模型在预测晋升标签1方面的召回率较低这意味着它可能没有很好地识别出所有晋升的案例。这可能是因为晋升事件相对较少导致数据集不平衡。在未来的工作中可以考虑使用过采样或欠采样技术来处理这种不平衡或者使用不同的评估指标如F1分数来更好地衡量模型性能。 二预测员工流失风险 1判断特征重要性 首先进行一些基本的特征工程例如从现有特征中创建新的特征。 categorical_features [EmpID, AgeGroup, Attrition, BusinessTravel, Department, EducationField, Gender, JobRole, MaritalStatus, SalarySlab] data[categorical_features] data[categorical_features].astype(category)data_types_updated data.dtypesdata[Experience] data[TotalWorkingYears] - data[YearsAtCompany]data_types_updated, data[Experience].head()我已经将分类特征转换为正确的数据类型并创建了一个新的特征Experience它表示员工的总工作经验减去在当前公司的年数。 接下来将进行特征选择确定哪些特征对于预测流失风险最为重要。这可以通过多种方法来完成例如使用相关性分析、基于模型的特征重要性等。在这里我将使用随机森林模型的特征重要性来选择特征。 from sklearn.preprocessing import LabelEncoder from sklearn.ensemble import RandomForestClassifier from sklearn.model_selection import train_test_split from sklearn.metrics import classification_report, accuracy_score import matplotlib.pyplot as pltX data.drop([EmpID, Attrition], axis1) y data[Attrition]X_train, X_test, y_train, y_test train_test_split(X, y, test_size0.2, random_state42)rf_clf RandomForestClassifier(n_estimators100, random_state42)le LabelEncoder()for feature in categorical_features:if feature ! Attrition: data[feature] le.fit_transform(data[feature])X data.drop([EmpID, Attrition], axis1) y data[Attrition]X_train, X_test, y_train, y_test train_test_split(X, y, test_size0.2, random_state42)rf_clf.fit(X_train, y_train)feature_importances rf_clf.feature_importances_feature_importances_df pd.DataFrame({Feature: X_train.columns, Importance: feature_importances})feature_importances_sorted feature_importances_df.sort_values(byImportance, ascendingFalse)top_features feature_importances_sorted.head(10)plt.figure(figsize(12, 8)) plt.barh(top_features[Feature], top_features[Importance], colorskyblue) plt.xlabel(Feature Importance) plt.ylabel(Feature) plt.title(Top 10 Most Important Features for Attrition Prediction) plt.gca().invert_yaxis() plt.show()top_features 根据随机森林模型的特征重要性我们可以看到MonthlyIncome月收入是预测员工流失风险最重要的特征其次是Age年龄、DailyRate日薪、MonthlyRate月薪等。这些特征对于预测员工是否流失具有显著的影响。 接下来我将使用这些特征来训练一个逻辑回归模型并评估其在测试集上的性能。逻辑回归是一种常用的分类算法特别适用于二元分类问题。 这段代码是一个使用Python语言和scikit-learn库进行数据预处理、模型训练、特征重要性评估和可视化的完整流程。以下是这段代码的详细解释 from sklearn.preprocessing import LabelEncoder from sklearn.ensemble import RandomForestClassifier from sklearn.model_selection import train_test_split from sklearn.metrics import classification_report, accuracy_score import matplotlib.pyplot as plt import pandas as pdLabelEncoder 用于将分类特征转换为数值型数据。RandomForestClassifier 是随机森林分类器用于分类任务。train_test_split 用于将数据集分割为训练集和测试集。classification_report 和 accuracy_score 用于评估模型的性能。matplotlib.pyplot 用于数据可视化。 X data.drop([EmpID, Attrition], axis1) y data[Attrition]这部分代码从数据集中移除了不需要的列例如员工ID和目标变量并将剩余的数据作为特征集X和目标变量y。 X_train, X_test, y_train, y_test train_test_split(X, y, test_size0.2, random_state42)使用 train_test_split 函数将数据集分割为训练集和测试集其中测试集占总数据的20%random_state 确保结果的可重复性。 rf_clf RandomForestClassifier(n_estimators100, random_state42)le LabelEncoder()初始化一个随机森林分类器其中包含100棵树。初始化一个 LabelEncoder 实例。 for feature in categorical_features:if feature ! Attrition: data[feature] le.fit_transform(data[feature])遍历分类特征列表使用 LabelEncoder 对每个特征进行编码排除目标变量。 X data.drop([EmpID, Attrition], axis1) y data[Attrition]X_train, X_test, y_train, y_test train_test_split(X, y, test_size0.2, random_state42)由于数据已经经过编码处理再次执行特征和目标变量的分割以及训练集和测试集的分割。 rf_clf.fit(X_train, y_train)使用训练集数据训练随机森林分类器。 feature_importances rf_clf.feature_importances_feature_importances_df pd.DataFrame({Feature: X_train.columns, Importance: feature_importances})feature_importances_sorted feature_importances_df.sort_values(byImportance, ascendingFalse)top_features feature_importances_sorted.head(10)从训练好的模型中获取特征重要性。创建一个DataFrame来存储特征和它们的重要性。按照特征重要性对DataFrame进行排序。显示最重要的前10个特征。 plt.figure(figsize(12, 8)) plt.barh(top_features[Feature], top_features[Importance], colorskyblue) plt.xlabel(Feature Importance) plt.ylabel(Feature) plt.title(Top 10 Most Important Features for Attrition Prediction) plt.gca().invert_yaxis() plt.show()使用条形图可视化最重要的前10个特征。设置图表的大小、颜色、标签和标题。反转y轴使得最重要的特征在上方。 top_features显示排序后的特征重要性DataFrame的前10行。 2建立逻辑回归预测模型 from sklearn.linear_model import LogisticRegression from sklearn.metrics import confusion_matrix, roc_auc_scorelog_clf LogisticRegression(random_state42)log_clf.fit(X_train, y_train)y_pred log_clf.predict(X_test)accuracy accuracy_score(y_test, y_pred) conf_matrix confusion_matrix(y_test, y_pred) roc_auc roc_auc_score(y_test, log_clf.predict_proba(X_test)[:, 1])accuracy, conf_matrix, roc_auc 逻辑回归模型在测试集上的准确率为83.16%混淆矩阵显示有48个实际流失的样本被错误地预测为未流失。模型的ROC AUC得分为0.709这意味着模型在区分流失和非流失员工方面的性能是中等偏上。可以利用该逻辑回归根据员工数据预测员工是否流失。 注roc_auc_score(y_test, log_clf.predict_proba(X_test)[:, 1]) roc_auc_score是一个用于计算接收者操作特征曲线下面积Receiver Operating Characteristic Area Under the Curve简称 ROC AUC的函数。ROC AUC 是一种衡量二分类模型性能的指标它的值介于 0.5随机猜测和 1完美分类之间值越接近 1 表示模型性能越好。 y_test是真实的测试集目标变量值通常是 0 和 1 表示的二分类结果。 log_clf.predict_proba(X_test)是使用已经训练好的分类器这里假设 log_clf 是一个逻辑回归分类器对测试集 X_test 进行预测得到的是一个概率矩阵其中每一行表示一个样本属于不同类别的概率。 [:, 1]表示取这个概率矩阵的第二列通常对应着正类1的概率预测值。 整体而言这段代码是计算使用逻辑回归分类器对测试集进行预测得到的正类概率与真实的测试集目标变量之间的 ROC AUC 值以评估该分类器在测试集上的性能表现。 想要探索多元化的数据分析视角可以关注之前发布的相关内容。
http://www.hkea.cn/news/14322778/

相关文章:

  • 网站图片上传功能怎么做的做的网站搜不到
  • 香河做网站东营垦利
  • 网站后期维修问题餐饮品牌全案策划公司
  • 网站logo多大办公空间设计布局
  • 百度网站制作公司网站负责人 主体负责人
  • 许昌市住房和城乡建设局门户网站域名和网站建设
  • 北京电商网站开发多少钱网站开发科普书
  • 网站工作室和网络公司珠海建设工程交易中心
  • wordpress免插件seo网站培训优化怎么做
  • 国际营销网站建设网站空间支付方式
  • semcms外贸网站管理系统西宁市城东区住房和建设局网站
  • 泰安可以做网站的公司wordpress 改 分隔
  • 简述网站开发设计流程网站开发实训指导书
  • 做的比较炫的网站网站的组织与风格设计
  • 织梦贷款网站模板国外产品推广是怎么做的
  • 最好的网站建设报价网站建设规划书道客巴巴
  • 网站设计示例上海职业技能培训机构
  • 下关汇做网站的公司互联网彩票网站开发
  • dedecms网站制作教程机械英语网站
  • 怎么做律师事务所的网站安卓系统优化app
  • 网站开发专员的面试题中亿丰建设集团股份有限公司网站
  • 亚马逊网站关键词挖掘站长工具
  • 开锁都在什么网站做怎么宣传自己的店铺
  • 网站ip屏蔽品牌网站建设目标
  • 济南网站托管看一个网站是哪里做的
  • 假发网站是怎么做的手机怎么做程序
  • node做网站如何做自助网站
  • 海洋网络专业网站建设上海 餐饮网站建设
  • 海南建设培训与执业中心网站南昌企业建设网站设计
  • 苏州建设工程有限公司包括搜索引擎排名、网页标签优化、相关链接交换、网络广告投放等