志在指尖
用双手敲打未来

python有什么用(hr)

python有什么用

Python是一门十分通用的编程语言,在各个不同的范畴有着广泛的用途。Google是从一开端就运用python的公司。那么运用Python能干什么呢?
Python编程
1、数据采集与剖析,例如现在我有1000个excel文件,包含各类出售、产品数据,假如人工剖析估量要累死了。此时能够用Python批量处理这些文件,然后依照需求进行运算并显示结果
2、主动填写表单并提交。许多人的作业是在网页或者软件上填写内容然后提交,这块作业其实完全也能够交给Python去做,假如咱们有清晰的数据源的话(比方文本文件),咱们能够规定好规则,文件的那些内容填写到网页的哪些位置,然后主动提交。
3、运用爬虫获取数据并进行剖析,现在是数据大爆炸的时代,网上的数据是在是太多了。比方房价信息,各种网站都供给,那么咱们怎么整合这些信息做一个最全面的参阅呢。此时就能够运用爬虫,将某一地区的房价信息都爬取下来,然后进行综合剖析运算,这样是不是更便于我们买房参阅呢?。
4、编写网站。Python也是能够做网站的,特别适用于需求快速开发的场景。
5、机器学习。Python在这些算法研讨范畴十分火爆,有许多现成的库和结构能够供学习运用。
6、web开发。其实许多闻名的网站像知乎、YouTube、豆瓣网便是Python写的,此外许多大公司,包含Google、Yahoo等,乃至NASA(美国航空航天局)都大量地运用Python;
7、网络游戏后台。许多在线游戏的后台都是Python开发的;
8、运维、使用开发、大数据、人工智能、自然语言处理等。
……还能够写很长很长…………还能够写很长很长……
Python的用途真的许多许多,假如你自制力强,有上进心,想经过学习来改变现状,那么学习Python能够让你点亮高薪人生。
有对Python感兴趣的同学就赶快学习起来吧,已然选择要学python编程现在就去做,现在永远比未来早。时不等人,抓紧时间开端学习之旅吧。学习没有捷径,希望我们都能少走一些弯路,在学习Python的道路上一往无前,学有所成!

python
python有什么用hr

比赛所用到的数据取自于IBMWatsonAnalytics剖析渠道共享的样例数据。咱们只选取了其中的子集,并对数据做了一些预处理使数据愈加契合逻辑回归剖析模型的要求。
数据首要包含影响职工离任的各种因素(薪酬、出差、工作环境满意度、工作投入度、是否加班、是否升职、薪酬提高比例等)以及职工是否现已离任的对应记载。数据分为练习数据和测验数据,分别保存在pfmtrain.csv和pfmtest.csv两个文件中。
3.剖析意图
测验数据首要包含350条记载,30个字段,跟练习数据的不同是测验数据并不包含职工是否现已离任的记载,学员需求经过由练习数据所树立的模型以及所给的测验数据,得出测验数据相应的职工是否现已离任的猜测。
二、数据探索性剖析
1.数据读取
pd.set_option(‘max_columns’,50)train=pd.read_csv(‘pfm_train.csv’)train.head()test=pd.read_csv(‘pfm_test.csv’)test.head()
2.数据信息探索
train.info()
3.删去无用特征
train[‘Over18’].value_counts()#只包含一种特点train=train.drop([‘EmployeeNumber’,’Over18′],axis=1)#删去无用特征
4.描述性核算
4.1年纪、性别与是否离任联系图
f,ax=plt.subplots(1,2,figsize=(18,8))sns.violinplot(“Gender”,”Age”,hue=”Attrition”,data=train,split=True,ax=ax[0])ax[0].set_title(‘GenderandAgevsAttrtion’);
4.2工作水平、部门与是否离任联系图
f,ax=plt.subplots(1,2,figsize=(20,8))sns.countplot(‘JobLevel’,hue=’Attrition’,data=train,ax=ax[0])ax[0].set_title(‘JobLevelvsAttrition’)sns.countplot(‘Department’,hue=’Attrition’,data=train,ax=ax[1])ax[1].set_title(‘DepartmentvsAttrition’);
4.3月收入与离任情况联系图
f,ax=plt.subplots(1,2,figsize=(20,8))sns.distplot(train[train[‘Attrition’]==1].MonthlyIncome,ax=ax[0])ax[0].set_title(‘MonthlyIncomevsAttrition=1’)sns.distplot(train[train[‘Attrition’]==0].MonthlyIncome,ax=ax[1])ax[1].set_title(‘MonthlyIncomevsAttrition=0’);
4.4婚姻状况、性别与是否离任联系图
sns.factorplot(‘MaritalStatus’,’Attrition’,data=train,col=’Gender’);
4.5出差情况与是否离任联系图
f,ax=plt.subplots(1,2,figsize=(20,8))sns.barplot(‘BusinessTravel’,’Attrition’,data=train,ax=ax[0])ax[0].set_title(‘BusinessTravelvsAttrition’)sns.factorplot(‘BusinessTravel’,’Attrition’,data=train,ax=ax[1])ax[1].set_title(‘BusinessTravelvsAttrition’)plt.close(2);
综上图能够看出,离任人员特征包含偏年轻化,男性稍多,单身,月收入较低,加班等。
三、数据预处理
1.字符型变量数值化
sklearn只允许数值类型变量进入模型学,所以需求提早将字符型变量数值化,为后续建模做准备。
#挑选出字符型的变量col=[]foriintrain.columns:iftrain.loc[:,i].dtype==’object’:col.append(i)#导入相关模块进行数据类型转化fromsklearn.preprocessingimportOrdinalEncodertrain.loc[:,col]=OrdinalEncoder().fit_transform(train.loc[:,col])train.loc[:,col].head()
2.相关性查验
逻辑回归归于广义线性回归,对自变量间的独立性有所要求,所以在这里咱们运用皮尔逊相联系数对自变量进行相关性查验,对相关性较高的特征进行进一步挑选。
sns.heatmap(train.corr(),annot=True)#train.corr()–>correlationmatrixfig=plt.gcf()fig.set_size_inches(20,20);
其中月收入与职位级别相关性呈强正相关联系,在这里咱们保存职位级别,将月收入自变量删去。
3.分类变量独热编码
为什么运用独热编码?
将离散特征经过one-hot编码映射到欧式空间,是因为,在回归,分类,聚类等机器学习算法中,特征之间距离的核算或类似度的核算是十分重要的,而咱们常用的距离或类似度的核算都是在欧式空间的类似度核算,核算余弦类似性,基于的便是欧式空间。
运用独热编码的优缺陷?
长处:独热编码处理了分类器欠好处理特点数据的问题,在必定程度上也起到了扩大特征的效果。它的值只要0和1,不同的类型存储在垂直的空间。缺陷:当类别的数量很多时,特征空间会变得十分大。在这种情况下,一般能够用PCA来削减维度。而且onehotencoding+PCA这种组合在实践中也十分有用。X=train.loc[:,train.columns!=’Attrition’]Y=train.loc[:,’Attrition’]X_onehot=X.drop([‘Age’,’NumCompaniesWorked’,’PercentSalaryHike’,’TotalWorkingYears’,’YearsAtCompany’,’YearsInCurrentRole’,’YearsSinceLastPromotion’,’YearsWithCurrManager’],axis=1)fromsklearn.preprocessingimportOneHotEncoderX_onehot=OneHotEncoder().fit_transform(X_onehot)X_onehot=X_onehot.toarray()X_other=X.loc[:,[‘Age’,’NumCompaniesWorked’,’PercentSalaryHike’,’TotalWorkingYears’,’YearsAtCompany’,’YearsInCurrentRole’,’YearsSinceLastPromotion’,’YearsWithCurrManager’]]X_other.shapeX=pd.concat([pd.DataFrame(X_onehot),X_other],axis=1)X.shape
四、模型学习
1.划分练习集和验证集
fromsklearn.model_selectionimporttrain_test_splitXtrain,Xtest,Ytrain,Ytest=train_test_split(X,Y,test_size=0.2,random_state=42)Xtrain.shape
2.逻辑回归模型构建
fromsklearn.linear_modelimportLogisticRegressionLR=LogisticRegression().fit(Xtrain,Ytrain)LR.score(Xtest,Ytest)
开始模型成果为0.84,还需待进一步调参。
3.模型评估
fromsklearn.metricsimportrecall_scorerecall_score(Ytest,LR.predict(Xtest))
1类样本召回率略低,只要0.42。能够考虑是否要做样本不均衡性处理。
五、模型调参
fromsklearn.model_selectionimportGridSearchCVparams={‘penalty’:[‘l1′,’l2′],’C’:np.arange(1,10,0.1)}gd=GridSearchCV(LogisticRegression(solver=’liblinear’),param_grid=params,cv=10)gd.fit(Xtrain,Ytrain)print(gd.best_score_)print(gd.best_params_)LR_o=LogisticRegression(penalty=’l1′,C=1.2000000000000002).fit(Xtrain,Ytrain)LR_o.score(Xtest,Ytest)
调参成果不错,练习集准确率提高到了0.88,验证集准确率也达到了0.85.
六、猜测剖析
模型树立完结之后,就需求读入测验集并进行猜测。这里留意,需求对测验集按照练习集进行相同处理:包含删去变量、转化数据类型、独热编码等操作。
test=test.drop([‘EmployeeNumber’,’Over18′,’MonthlyIncome’],axis=1)#挑选出字符型的变量col=[]foriintest.columns:iftest.loc[:,i].dtype==’object’:col.append(i)fromsklearn.preprocessingimportOrdinalEncodertest.loc[:,col]=OrdinalEncoder().fit_transform(test.loc[:,col])test.loc[:,col].head()test_onehot=test.drop([‘Age’,’NumCompaniesWorked’,’PercentSalaryHike’,’TotalWorkingYears’,’YearsAtCompany’,’YearsInCurrentRole’,’YearsSinceLastPromotion’,’YearsWithCurrManager’],axis=1)fromsklearn.preprocessingimportOneHotEncodertest_onehot=OneHotEncoder().fit_transform(test_onehot)test_onehot=test_onehot.toarray()test_other=test.loc[:,[‘Age’,’NumCompaniesWorked’,’PercentSalaryHike’,’TotalWorkingYears’,’YearsAtCompany’,’YearsInCurrentRole’,’YearsSinceLastPromotion’,’YearsWithCurrManager’]]test_other.shapeX=pd.concat([pd.DataFrame(test_onehot),test_other],axis=1)X.shapesolution=pd.DataFrame({‘result’:LR_o.predict(X)})solution
solution是经过咱们现已调整好的模型对测验集做猜测的最终成果。
得到成果之后,咱们就能够上传至比赛渠道与真实值进行对比了。本课件中的代码成果在测验集中猜测准确率达0.91428,猜测成果明显并能够为实践业务进行辅佐决策。
七、总结
经过对测验集的调查,该公司的职工离任现状能够总结如下:
当前离任率为11.82%;由于企业培养人才是需求大量的本钱,为了避免人才再次流失,因而应当注重处理人才的流失问题,也便是留人,另外如果在招人时留意某些问题,也能在必定程度上削减人才流失.因而,这里可将对策分为两种,一种是留人对策,一种是招人对策。

未经允许不得转载:IT技术网站 » python有什么用(hr)
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!

 

志在指尖 用双手敲打未来

登录/注册IT技术大全

热门IT技术

C#基础入门   SQL server数据库   系统SEO学习教程   WordPress小技巧   WordPress插件   脚本与源码下载