版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
项目七Python在财务中的应用案例教学目标A职工薪酬的计算方法固定资产折旧的方法及计算项目投资决策的相关知识点本量利分析的相关知识点预算管理的相关知识点财务分析相关指标的概念及计算方法知识学习目标教学目标B使用Python计算职工薪酬使用Python计算固定资产折旧使用Python进行项目投资决策分析使用Python进行本量利分析使用Python对企业进行预算管理使用Python对企业进行财务分析技能训练目标教学目标C敢于创新、实事求是的工作态度持续提升专业知识和理论结合实际的实践能力灵活运用、举一反三的思维能力思政教育目标项目框架1职工薪资计算与分析3项目投资决策5固定预算与弹性预算2固定资产折旧计提与分析4本量利分析6计算机通信行业10家公司对标分析01任务一职工薪资计算与分析【案例引入】小李已经入职公司财务部三个月了,这三个月来他踏实肯干的工作态度、严谨细致的工作作风、系统扎实的专业基础得到了部门同事的一致认可,财务经理决定将每月职工薪酬核算和分析的任务交给他。职工薪酬一方面是企业生产经营成本的重要组成部分,另一方面也是企业激励员工劳动积极性的主要手段之一,同时政府通过税务机构征收个人所得税也起到了对社会收入调节的作用。因此科学、合理、准确与迅捷的薪酬核算,对员工个人、企业经营管理乃至和谐社会的构建都具有积极意义。小李暗下决心,一定要把这项工作做对、做好。他与上一任薪酬会计交接完工作后就认真的研究起公司的工资管理制度和工资表来,如表7-1-1所示。表7-1-1职工薪酬数据单位:元【案例引入】【案例引入】经过研究小李明确了以下几点要求:(1)工资构成包括基本工资、绩效工资、津贴三项内容,其中生产部人员的绩效工资根据每月生产产品数量计件核算,其他人员绩效工资按月固定不变。(2)员工工资计算以月为计算期,月平均工作日为21.75天,员工缺勤按照实际缺勤天数扣款,扣款数额为日基本工资。(3)公司为员工缴纳五险一金,个人承担的部分及个人所得税由公司代扣代缴。(4)日常发生的福利费不再预提,而是发生后根据实际金额记入相关费用。(5)每月按工资总额的2%计提工会经费。(6)每月职工薪酬核算完成后,还应对薪酬数据进行分析。【案例引入】薪酬核算与分析工作量大,小李准备用Python完成工作。仔细思索以后,小李确定了如下工作步骤:(1)读取工资数据到Python系统。(2)计算应发工资。(3)计算实发工资。(4)计算福利费。(5)计提工会经费。(6)保存计算结果为excel文件。(7)进行薪酬数据分析。一、读取工资数据到Python系统12导入pandas模块并读取数据填充缺失数据一、读取工资数据到Python系统(一)导入pandas模块并读取数据【知识回顾】(1)pandas读取excel文件时使用函数pd.read_excel(),其基本语法格式为pd.read_excel(io,sheet_name=0,index_col=None,converters=None)。参数io表示文件路径,文件名不能省略后缀名,文件路径涉及斜杠线时要用“/”,若用“\”则路径前要加“r”进行转译;参数sheet_name用于指定导入哪张表页,sheet_name=0表示导入第一张表页中的数据;参数index_col用于指定行索引,省略index_col参数表示由pandas自动分配从0开始的行索引号;参数converters可以规定某列数据的类型。(2)数据名.head()函数用于返回DataFrame中前几行的数据,默认是前5行。比如上述代码中的第3行就表示读取wj1前5行的数据。(3)数据名.head()函数只是选择数据,而不对数据内容做任何改变,因此要想显示数据内容,还需要使用print()函数将数据打印输出。一、读取工资数据到Python系统(二)填充缺失数据【知识回顾】数据名.
fillna()是用指定的值去填充DataFrame中的缺失值,其基本语法格式为:数据名.fillna(a,inplace=False)。参数a表示要填充上的值,可以是常数或字典,若a为常数,则用常数a填充缺失值,若a为字典,则表示第key列的缺失值用key对应的value值填充。inplace为可选参数,默认为False,表示不修改原表格,若指定inplace=True,则直接修改原表格。二、计算应发工资123计算绩效工资计算缺勤扣款计算应发工资二、计算应发工资(一)计算绩效工资1.计算生产人员绩效工资【知识回顾】(1)在DataFrame中新添加一列最简单的方法就是直接指明列名,然后赋值。比如上述代码中的第6行就是在wj2中增加“绩效工资”列。(2)在DataFrame中使用直接索引可以获取一列、多列、连续行的数据。获取一列数据时表达方法为:数据名[“列名”];获取多列数据时表达方法为:数据名[“列名1”,“列名2”,…];获取连续多行数据时表达方法为:数据名[n:m]。比如上述代码中的第8行就是获取wj2中“工号”“姓名”“绩效工资”三列数据。二、计算应发工资(一)计算绩效工资2.将生产部人员绩效工资填加到原数据表中【知识回顾】
(1)条件索引可以通过条件设置在被选择列中筛选中结果为True的记录。选取某列满足一定条件的行时的表达方式为:数据名[数据名[“列名”==条件]]。(2)删除DataFrame中某列数据可以使用数据名.drop()函数。参数columns用于指定具体的列。(3)数据连接使用pd.merge()函数,其基本语法格式为:pd.merge(left,right,how='inner',on=None)。参数left、right表示要连接的两个数据表的名称,参数how用于指定两个表的连接方式,参数on用于指定两个表的连接键。(4)数据合并使用pd.concat()函数,其基本语法格式为:pd.concat(objs,axis=0,join='outer',ignore_index=False)。参数objs用于指定要合并的多个数据表名,需要将多个表名用中括号包围起来;参数axis表示轴向,0代表纵向合并,1代表横向合并,默认是纵向合并;参数join用于指定合并方式,有outer和inner两种可选合并方式,默认是outer;ignore_index用于指定是否重建索引,有True和False两种选择,默认是False。二、计算应发工资(二)计算缺勤扣款【知识回顾】
round()函数可以对浮点数进行四舍五入求值。round()函数的语法格式为:round(数值[,保留小数位数])。但该函数对于返回的数值并不是严格的四舍五入,而会受到计算机表示精度的影响。二、计算应发工资(三)计算应发工资根据公式“应发工资=基本工资+绩效工资+津贴-缺勤扣款”计算应发工资,并将计算结果填加到表格中三、计算实发工资123计算五险一金计算缺勤扣款计算应发工资(一)计算五险一金每月的社会保险与住房公积金按缴费基数进行计算。三、计算实发工资(二)计算个人所得税1.计算应纳税所得额【知识回顾】(1)自定义函数,使用def保留字开头,其语法形式如下:def<函数名>(<参数列表>):
<函数体>return<返回值列表>(2)二分支语句if-else,其语法格式如下:if<条件>:
<语句块1>else:<语句块2>(3)map()函数,可以根据提供的函数对指定序列做映射,语法格式为:map(函数,序列)或者序列.map(函数)。比如上述代码第29行就是使用第二种格式调用自定义的ynssde(),以确保计算出来的本期应纳税所得额不会小于0。三、计算实发工资(二)计算个人所得税2.计算应纳税额【知识回顾】多分支语句if-elif-else,其语法格式如下:if<条件1>:
<语句块1>elif<条件2>:
<语句块2>…else:
<语句块n>python只执行if-elif-else结构中的一个语句块。它会依次寻找第一个结果为True的条件,并执行该条件下的缩进语句块,执行结束后跳过整个if-elif-else结构。三、计算实发工资(三)计算实发工资根据公式“实发工资=应发工资-五险一金(个人)-本月应纳税额”计算实发工资,并计算结果填加到表格中。三、计算实发工资提前将薪资数据文件《工龄统计.xlsx》存放到D盘根目录下,然后将工龄统计数据导入Python系统,并按照发放方案计算出职工福利费。四、计算职工福利费根据《中华人民共和国工会法》的相关规定,公司每月应按工资总额的2%计提工会经费。工会经费计提的基数为工资薪金总额,此处所说的工资薪金总额是指企业按照工资管理制度的规定实际发放给员工的工资薪金总和,不包括企业的福利费、职工教育经费、五险一金等。在本案例中,工会经费的计提基数就是应发工资数。五、计提工会经费【知识回顾】pandas写入excel文件时使用函数to_excel(),其基本语法格式为:数据名.to_excel(excel_writer,sheet_name=’Sheet1’,index=True)。参数excel_writer表示文件路径,文件名不能省略后缀名,文件路径涉及斜杠线时要用“/”,若用“\”则路径前要加“r”进行转译;参数sheet_name用于指定写入哪张表页,默认写入Sheet1;参数index用于指定是否输出索引,默认输出索引。六、保存计算结果为excel文件薪酬分析一般包括三个部分,一是薪酬总额分析,就是要搞清楚薪酬总共花了多少钱,和以往有什么变化,和预算有什么变化;二是薪酬结构分析,就是要搞清楚钱都花到哪儿去了,通常可以围绕人员、结构、部门等维度展开分析;三是薪酬效益分析,就是要搞清楚花出去的钱产生了多大回报,通常可以围绕员工和企业两个方面展开分析。七、薪酬数据分析1.按部门汇总职工薪酬数据【知识回顾】pivot_table()函数类似于excel的数据透视表功能,可以在不破坏原数据的基础上,更好地挖掘数据之间的关系。其基本语法格式为:数据名.pivot_table(index,columns,values,aggfunc,margins,margins_name)。参数index用于指定索引;参数columns用于指定数据透视表的列;参数values用于指定数据透视表的数值;参数aggfunc用于指定数值的计算方式,默认取平均值;参数margins用于确定是否将各列数据进行汇总,默认不汇总;参数margins_name用于指定汇总栏的名称。比如上述代码第3行就是将wj1中的数据,按部门为索引,对所有数值列进行加总求和。七、薪酬数据分析(一)按部门分析职工薪酬2.部门薪酬汇总数据的可视化分析【知识回顾】(1)plt.figure(figsize=(,)):设置图纸的大小。(2)plt.bar():绘制柱形图,可设置多个参数来定义条形高度、宽度、颜色、起始位置等特征。比如上述代码第12行就定义了条形的颜色。(3)plt.title():设置图形的名称。(4)plt.show():显示图片。七、薪酬数据分析(一)按部门分析职工薪酬3.计算各部门职工薪酬的占比4.部门薪酬占比的可视化分析【知识回顾】plt.pie(x1,labels=x1.index,autopct='%.2f%%'):绘制饼形图,x1为填充内容,labels=x1.index为每块扇形所代表的含义,autopct=“%.2f%%”为每块扇形所代表的占比。七、薪酬数据分析(一)按部门分析职工薪酬1.按薪酬项目汇总职工薪酬数据【知识回顾】需要将一个DataFrame进行行和列的互换时,可以用数据名.stack()和数据名.unstack(0)进行互换。2.薪酬项目汇总数据的可视化分析3.计算薪酬项目的占比4.薪酬项目占比的可视化分析七、薪酬数据分析(二)按结构分析职工薪酬02任务二固定资产折旧计提与分析【案例引入】薪资会计小李利用python系统将每月繁琐的职工薪酬核算工作做的井井有条,尤其是他绘制的可视化图表让枯燥的数据分析变得生动、直观起来,大家在赞扬小李的同时,也产生了学习python的愿望。资产会计小王就主动向小李求教起来。由于企业的固定资产种类多、数量大、使用分散、使用期限较长,在使用和管理中容易发生被遗忘、遗失、损坏或失盗等种种事件。因此每月的固定资产核算也是一大任务,2022年10月份的固定资产折旧还没有计提完,小王希望能够借助python系统实现固定资产折旧的准确计算,最好也能绘制出漂亮的可视化分析图表。【案例引入】通过与小王交流,小李了解到公司对不同类别的固定资产确定了不同的折旧方法、折旧年限和预计净残值率,对于生产设备采用年数总和法计提折旧,对于其他固定资产均采用年限平均法计提折旧。固定资产在使用过程中受实际情况的影响会出现使用状态的改变,比如原本正常使用的固定资产出现了毁损而报废、因技术的变化对原有资产进行更新改造等等。使用状态的改变有可能会对折旧的计提产生影响,还需要分情况进行处理。表7-2-1部分固定资产数据单位:元【案例引入】【案例引入】经过一番讨论后,小李和小王确定了如下工作步骤:(1)读取固定资产数据到Python系统。(2)计算已折旧月数。(3)计算剩余折旧月数。(4)采用年限平均法计提固定资产当月折旧。(5)采用年数总和法计提固定资产当月折旧。(6)汇总当月固定资产折旧数。(7)按类别分析固定资产数据。一、读取固定资产数据到Python系统12导入pandas模块并读取数据填充缺失数据(一)导入pandas模块并读取数据【知识回顾】(1)pandas读取excel文件时使用函数pd.read_excel(),其基本语法格式为pd.read_excel(io,sheet_name=0,index_col=None,converters=None)。参数io表示文件路径,文件名不能省略后缀名,文件路径涉及斜杠线时要用“/”,若用“\”则路径前要加“r”进行转译;参数sheet_name用于指定导入哪张表页,sheet_name=0表示导入第一张表页中的数据;参数index_col用于指定行索引,省略index_col参数表示由pandas自动分配从0开始的行索引号;参数converters可以规定某列数据的类型。(2)数据名.head()函数用于返回DataFrame中前几行的数据,默认是前5行。比如上述代码中的第3行就表示读取wj1前5行的数据。(3)数据名.head()函数只是选择数据,而不对数据内容做任何改变,因此要想显示数据内容,还需要使用print()函数将数据打印输出。一、读取固定资产数据到Python系统(二)填充缺失数据【知识回顾】数据名.fillna()是用指定的值去填充DataFrame中的缺失值,其基本语法格式为:数据名.fillna(a,inplace=False)。参数a表示要填充上的值,可以是常数或字典,若a为常数,则用常数a填充缺失值,若a为字典,则表示第key列的缺失值用key对应的value值填充。inplace为可选参数,默认为False,表示不修改原表格,若指定inplace=True,则直接修改原表格。一、读取固定资产数据到Python系统【知识回顾】
(1)构造datetime类函数的方法是:datetime.datetime(year,month,day[,hour,minute,second]),第一个datetime是指datetime模块,可以使用自定义的别名“dt”表示,第二个datetime是指datetime类。参数依次为:年、月、日、时、分、秒,其中时、分、秒可以省略。上述代码第6行只是引入datetime模块,因此第7行构建datetime类函数时必须使用“模块+类”的全名方式,也即datetime.datetime()或dt.datetime()。如果代码第6行表述为“fromdatetimeimportdatetime”就是直接导入了datetime类,那么第7行构建datetime类函数时可以表述为“jzrq=datetime(2022,10,31)”。(2)自定义函数,使用def保留字开头,其语法形式如下:def<函数名>(<参数列表>):<函数体>return<返回值列表>(3)map()函数,可以根据提供的函数对指定序列做映射,语法格式为:map(函数,序列)或者序列.map(函数)。比如上述代码第10行就是使用第二种格式调用自定义的yzjys(),根据每项固定资产的购置日期计算其已折旧月数。二、计算已折旧月数【知识回顾】
(1)max()函数可以返回可迭代对象中的元素的最大值或者所有参数的最大值。比如上述代码第12行就是要比较x和0的大小,然后取两者之中较大的值。(2)lambda函数是一个匿名函数(不存在函数名的函数)。lambda函数的语法只包含一个语句,表现形式为:lambda[arg1[,arg2,.....argn]]:expression[arg…]是参数列表,它的结构与Python中函数(function)的参数列表是一样的。expression是一个参数表达式,表达式中出现的参数需要在[arg......]中有定义,并且表达式只能是单行的,只能有一个表达式。比如编写代码如下:a=lambdax:x+2print(a(4))其运行结果为:6三、计算剩余折旧月数【知识回顾】(1)条件索引可以通过条件设置在被选择列中筛选中结果为True的记录。选取某列满足一定条件的行时的表达方式为:数据名[数据名[“列名”==条件]],比如上列中第14行筛选折旧方法为年限平均法的固定资产信息。(2)多分支语句if-elif-else,其语法格式如下:if<条件1>:
<语句块1>elif<条件2>:
<语句块2>…else:<语句块n>python只执行if-elif-else结构中的一个语句块。它会依次寻找第一个结果为True的条件,并执行该条件下的缩进语句块,执行结束后跳过整个if-elif-else结构,执行后面的语句。四、年限平均法计提固定资产当月折旧【知识回顾】(3)if嵌套语句当某个条件成立后,才会进行另一个条件判断的问题时,就需要使用if,if-else,if-elif-else的互相嵌套。if嵌套语句只有在外部的if条件满足时,才会执行内部的if语句。嵌套结构在外层缩进的基础上,也要保持内层缩进。缩进量均为4个空格。随意缩进和缩进不一致的情况,都会出现报错。(4)apply()函数。与map函数类似,应用在DataFrame的行或列中。其语法格式为:数据名.apply(function,axis=0)。参数function表示某个函数。参数axis用于指定是对表中的行进行操作还是对列进行操作,axis=0代表操作对列进行,axis=1代表操作对行进行,默认为0。四、年限平均法计提固定资产当月折旧【知识回顾】(1)数据合并使用pd.concat()函数,其基本语法格式为:pd.concat(objs,axis=0,join='outer',ignore_index=False)。参数objs用于指定要合并的多个数据表名,需要将多个表名用中括号包围起来;参数axis表示轴向,0代表纵向合并,1代表横向合并,默认是纵向合并;参数join用于指定合并方式,有outer和inner两种可选合并方式,默认是outer;ignore_index用于指定是否重建索引,有True和False两种选择,默认是
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 便携式探照灯产品供应链分析
- 大数据分析及应用项目教程(Spark SQL)(微课版) 实训单 实训1 Hadoop集群环境搭建
- 光学阅读机产品供应链分析
- 外语学习书籍出版行业市场调研分析报告
- 云梯游乐设施产品供应链分析
- 临时性商业管理行业经营分析报告
- 废物化学处理行业经营分析报告
- 电动和非电动洁面刷商业机会挖掘与战略布局策略研究报告
- 主要负责人年度安全生产工作述职报告
- 《采集能量》学历案
- 医院高风险意外事件应急措施和救护机制
- 一年工作业绩总结与成长
- 2024年能源安全的新战略
- 土石方应急预案
- 市场监管机构的职责与作用
- 丧葬行业的盈利分析
- 年度客舱清洁总结:成功经验与不足反思
- 书法等级考试试题含答案一至九级
- 应急救援基地项目可行性研究报告
- 2024年中国电建招聘笔试参考题库含答案解析
- 风险偏好与投资策略选择
评论
0/150
提交评论