版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
《大数据财务分析——基于Python》课后习题答案第一章Python基础快速入门A、int函数可以将字符串转为整数但对字符串也有要求,如果字符串内有小数就不能D、strip函数可以进行字符替换用于移除字符串头尾指定的字符序列该题选ABC,strip函数适用于头尾字符删除。B、Python可以通过/进行注释应该是通过#注释C、Python中缩进不重要缩进会影响代码的运行逻辑D、for语句是判断语句是循环语句而不是判断语句B:使用/不能用于注释,该字符通过‘Ctr+1需要注释的代码,注释通常则使用#或"";D:判断语句一般为ifelse。1.列表的索引序号从1开始。该题答案为错误。索引序号从0开始。1.使用for循环语句计算从1加到10000的值。2.通过if判断语句、for循环语句和range()函数批量打印出1到100内的奇数。#方法一:#方法二:4.请用2种方法清除a='华能信托是家好公司'两旁的空格。a='华能信托是家好公司'6.公司A在2016—2020年的净利润分别为2.5,2.8,3.1,2.9,3.3亿元,净资产分别为10,11,13,13.5,14亿元,通过print()函数打印输出2020年公司A的净资产收益率#方法一:#方法二:#方法三:7.假设公司A是贵州茅台,通过字符串拼接得到它的完整股票代码:600519.SH。(上8.分别创建两个名为“net_profit”和“net_equity”的列表,列表元素分别为第6题中的5年净利润和5年净资产。net_profit=[2net_equity=[10,9.根据第8题中的两个列表计算得到2016—2020年每年的ROE,把结果放入新列表“ROE”中,并依次打印输出该列表中的所有元素。#方法一:#方法二:ROE=[net_profit[ij]/net_equity[i]fori10.选取第9题列表“ROE”中2018年的指标;选取5年中第2年到第4年的指标。11.公司A在2020年的收入为100亿元,资产总额为30亿元,首先计算总资产周转率,然后用if判断语句,如果公司A的总资产周转率大于2,则打印输出“总资产周转#方法一:ifTAT>2:print('总资产周转率为:'+str(TAT)+print('总资产周转率为:'+str#方法二:print('总资产周转率为:{,指标较差'.format(TAT))12.给定一个包含6位股票代码的列表stock=['600519',’000725','600031'],通过for循环语句和if判断语句判断列表中每个代码是来自上交所还是深交所,并加上相应码通常是6开头,深交所的股票代码通常是0开头。)stock=['600519','000725',13.假设从财经网站获取了部分公司名称列表['贵州茅台','五粮液','泸州老窖],以及毛利率拼接成字符串(格式为“xx公司的毛利率为xx”)并依次输出结果。14.假设从财经网站获取了部分公司名称列表[贵州茅台''五粮液'泸州老窖],以及这些公司对应的毛利率[0'.75'0'.66'0'.58'],注意获取到的毛利率格式为字符串类型。依次判断各家公司的毛利率是否大于0.6,大于则输出“xx公司的毛利率优秀”,否则输15.创建一个名为transcode的函数,实现输入股票的6位数字代码可自动输出股票的完整代码(即包含上交所后缀名“.SH”或深交所后缀名“.SZ”)。使用该封装好的函数批量判断列表stock=['600519',000725',‘600031']并输出结果。(提示:上交所的股票代码通常是6开头,深交所的股票代码通常是0开头。stock=['600519','00072Part1:单项选择题1.使用tushare获取利润表中营业总收入的输出变量为(C)C:total_revenue2.使用tushare获取经营活动产生的现金流量净额的输出变量为(A)A:n_cashflow_actB:free_cashflow3.使用tushare获取交易性金融资产的输出变量为(B)A:intan_assetsB:trad_assetC:acct_payableD:It_eqPart2:多项选择题2.以下为tushare可用的接口是(BD)D:主营业务构成接口1.在获取宏观数据时,获取GDP数据的开1.参照2.2.4小节内容,利用Tushare接口获取中信特钢(000708.SZ)、抚顺特钢(600399.SH)、方大特钢(600507.SH)2018至2020年三张报表的数据,并另存#需要获取数据的公司名称、股票代码、年份years=[2020,2019,2#循环获取语句df_balance=pro.balancesheet(ts_code=codes[i],df_income=pro.income(ts_code=codes[i]df_cash=pro.cashflow(ts_code=codes[i],period=s#保存为表格2.参照2.3.1小节内容,利用Tushare接口获取抚顺特钢(600399.SH)基本信息、管理层信息、财务审计意见(2016年至2020年)以及主营业务构成(分别按地区和业务)。df#JupyterNotebook中输audit=pro.fina_audit(ts_code='600519df#JupyterNotebook中直接输入变量名打印,Pychdf=pro.fina_mainbz(ts_code='600399.SH',period='20数据。(提示,先利用index_basic接口获得指数代码)。5.参照2.3.4小节内容,利用Tushare接口获取2020年一整年的LIBOR拆借利率数据(提示:相关接口为pro.libor)。1.以下不为常用创建DataFrame的方法是(C)该题选C。常用的创建方法为列表法、字典法、空DF法、导入法等。2.对名为data的dataframe进行数据筛选时,获取多列二维表格的方法是(C)A:a=data['c1]series一维B:b=data[['c1]]只有一列C:c=data[['c1','c3']]D:d=data.iloc[1,1]写法不对该题选C。3.根据列对数据进行排序时,要对c2列进行降序排序,应输入ascending=(A)该题选A。对数据进行排序时,使用False代表降序、True代表升序。Pandas-Part2:多项选择题1.以下为Dataframe常用的拼接方法是(ABC)A、merge()函数D、extend()函数该题选ABC。前三项为DF常用拼接方法,选项D用于在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)A、+D、|(1)通过列表,创建如下DataFrame。0201人均支出中国韩国美国(3)通过创建一个空DataFrame,然后列表添加的方式,创建如下DataFrame。日期021426(4)修改上一小题的列名为date和score。a=pd.DataFraa=pd.DataFrame()#创建一个空DataFramea=pd.DataFrame()#创建一个空DataFrame2.pandas基础操作1-数据选取(5分)已知如下表格数据,为3人的日常生活缴费情况:水费电费房租(1)根据列筛选数据查看3人的房租情况,此外,查看3人的水费和房租的情况(2)根据行筛选数据查看第2到3行的数据,此外,查看最后一行的数据。a=df[1:3]#也可以写成a=df.iloc[1:3],或者df.iloc[1,2]b=df.iloc[-1]#本题因为行数不多,也可以写成df.iloc[2](3)按照区块来选取数据查看丁一和王二的水费和房租情况(4)iloc函数同时选择行和列查看王二的电费情况a=df.iloc[1]['电费]#或者写成a=df.iloc[1]['电费']](5)iloc函数和loc函数的主要区别简介iloc函数和loc函数的主要区别iloc是根据数字进行索引,而loc是根据名称进行索引3.pandas基础操作2-表头筛选请读取该Excel表格(信息表-单页.xlsx),并将表头设置为第二行内容,且正式内容从第三行开始。BC12成本价(元/个)销售价(元/个)34行李箱567成本价(元/个)销售价(元/个)行李箱答:(读取Excel1分,设置表头2分,从第三行开始提取数据2分)df4.pandas基础操作3-按特定条件筛选(4分)(1)筛选如下表格中电费列大于20的内容df=pd.DataFrame([[张三’,20,30],[李四’,50,60],[张三’,80,90]],columns=[’姓名’,’电费’,’房租’])df (1)运算(2)筛选如下表格中电费列大于20且房租列小于85的内容In[45]:In[45]:importpandasadf=pd.DataFrame([[张三’,20,30],【李四’,50,60],[张三’,80,90]),columns=[’姓名’,’电费’,’房租’])dfexecutedin11ms.finished20:54: 答:(每小问2分)电费','房租'])电费','房租'])a=df[(df['电费]>20)&(df['房租]<85)]#需要加括号5.pandas基础操作4-数据运算、排序与删除(6分)df=pd.DataFrame([['张三’,20,30],[李四’,50,60],【赵五’,80,90]),columns=[’姓名’,’电费’,’房租’])df姓名电费房租(2)排序df=pd.DataFrame([['张三’,20,30],[李四’,50,60],[赵五’,80,90]],columns=[’姓名’,’电费’,'房租’])df 姓名电费房租(3)删除df=pd.DataFrame([['张三’,20,30],[李四’,50,60],[赵五’,80,90]],columns=[’姓名’,’电费’,’房租’])dfexecutedin11msfnished09-41-432020-08-29姓名电费房租答:(每小问2分)df['电费+房租']=df['电费]+df['房租]6.数据表拼接(6分)将下面3个Excel工作簿(信息表-技术部.xlsx;信息表-财务部.xlsx;信息表-行信息表-技术部.xlsx答:(数据读取2分,数据拼接3分,数据导出1分)df_all=df_all.append(df1).append(df2).append(df3)#也可以拆成3行写A:plt.plot()B:plt.scatter()选择A。其余选项分别为柱状图、散点图、直方图。A:figureB:linestyleC:binscolor:线条颜色marker:数据标记的形状,默认是没有标记选择D。使用twinx设置双坐标轴A.plt.rcParams['figure.figsize']=(800C.plt.rcParams['figure.fig选择B。设置像素时括号为先长后宽,100像素=1A.plt.rcParams['axes.unicode_minus']=FB.plt.rcParams['font.s选择B。使用plt.rcParams['font.sans-serif]进行中文字体设置。C.均线选择ABC。mplfinance没有下一日预测的功能。1.Matplotlib不能显示负号。错误。可以显示,代码是plt.rcParams['axes.unicode_minus']=False1.利用给出的数据(源代码文件中获取),参照4.3.2小节的方法绘制白酒行业该年的净利润率同业比较图。要求:数值升序显示,标签位于图形左上角。得到的结果参考下图4-24:plt.rcParams['axes.uniplt.bar(data['name'],data[2.利用贵州茅台和五粮液从2010年至今(最新)的销售净利率数据,绘制双坐标轴折线图比较趋势。得到的结果参考下图4-25:data=pd.read_excel('第四章第plt.legend(loc='upperleft')#该图图例设置在左上角plt.twinx()#设置双坐标轴plt.legend(loc='upperright')#改图图例设置在右上角3.参照4.3.1小节的方法,绘制贵州茅台2021年3月1日至9月30日半年间的股价K线图。得到的结果参考下图4-26:#1、获取行情信息codename=df0.loc[0]['ts_cdata=df[['trade_date','open','close','high','low','vol'data=data.rename(columns={'trade_date':Date','open':'Open','close':''high':'High','low':'Low','data.set_index('Date',indata.index=pd.Datetimelndex(data=data.sort_index(ascending=True)#2、绘图my_color=mpf.make_marketcolors(up=my_style=mpf.make_mpmpf.plot(data,type='candle',mav=(5,10,20),volume=True,sMar011.想要获取存货的上一期数据,可以使用哪种方法(C)选择C。-1代表上一期2.分析时如何保留小数(A)选择A。详情见第一章。3.除了自己运算,tushare哪个参数可以输出财务指标(B)选择B。使用indicator函数获取财务指标,其余接口含义详见第三章。1.使用Python进行静态分析可以分析哪些内容(ABCD)A.盈利能力B.运营能力D.成长能力选择ABCD。python静态分析通常为运营、盈利、偿债、成长四部分。1.参照本章的内容,获取贵州茅台(或读者自己感兴趣的其他公司)2015-2020年的相关数据,从上述四个方面进行财务分析。pro=_api('75fe6c69bb10c996a556a402dde9#盈利能力df_2014=pro.balancesheet(ts_code='600519.SH',period='20asset_2014=df_2014['total_hldr_eqy_exc_data['股东权益(上期余额)'=asset0data['ROE']=round(data['净利润(不含少数股东损益)]/(data['股东权益合计(不含少数#运营能力data[营业利润率]=round((data['营业利润])/data[营业收入],4)data['净利润率]=round(data['净利润(含少数股东损益)']/data[营业收入],4)df_2014=pro.balancesheet(ts_code='600519.SH',period='asset_2014=df_2014['total_hldr_eqy_exc_mdata['股东权益(上期余额)']=asset0data['ROE']=round(data['净利润(不含少数股东损益)']/(data[股东权益合计(不含少数#偿债能力#成长能力#1、现金比率:现金比率=(流动资产合计-存货-预付款项-应收账款)/流动负债合计)data=pro.balancesheet(ts_code='600518.SH',start_date='20150101')#2、净资产增长率=(期末净资产-期初净资产)/期初净资产)df_2014=pro.balancesheet(ts_code='600518.SH',pertheemi_14=df_2014['total_hldr_eqy_exc_min_int'theemi0=data['total_hldr_eqy_exc_min_int][1:].theemi0.append(thee#3、固定资产增长率=营业收入/[(期初净资产+期末净资产)/2]data1=pro.balancesheet(ts_code='600518.SH',startdf_ic=pro.income(ts_code='600518.SH',start_dattheemi_14=df_2014['total_hldr_eqy_exc_min_inttheemi0=df['total_hldr_eqy_exc_min_int'][1:].theemi0.append(theedf[固定资产增长率]=round((df['revenue']/(df['期初净资产]+data[固定资产增长率']=df[['固定资产增长率]]2.除了本章提到的指标之外,读者可以再构造几个其他指标(现金比率(计算公式:现金比率=(流动资产合计-存货-预付款项-应收账款)/流动负债合计)、净资产增长率(计算公式:净资产增长率=(期末净资产-期初净资产)/期初净资产)、固定资产周转率(计算公式:固定资产周转率=营业收入/[(期初净资产+期末净资产)/2])),参照已有指标的计算方法,利用Python进行指标计算(而不是直接利用财务指标接#现金比率#净资产增长率#计算净资产#获取2014年的净资产数据df_2014=pro.balancesheet(ts_code='600519.SH',period='20#把2014年~2018年的资产、作为新列表,并把列表加入表格#计算营业利润增长率#总资产周转率#获取2014年的固定资产数据df_2014=pro.balancesheet(ts_code='600519.SH',period=#把2014年~2018年的固定资产作为新列表,并把列表加入表格#计算固定资产周转率data[固定资产周转率]=round(data['营业收入]/(data[固定资产]+data['固定资产(上3.根据第2题的作答,适当改写获取多家公司数据的代码,加入你自己写好的指标计算公式,并利用该函数调取贵州茅台、五粮液、泸州老窖(或者读者感兴趣的其他上市公司)2015-2020年的财务数据。#定义获取三张报表的函数defaccess_data(comps,co#定义列重命名函数,把列名自动改为中文名data=data.rename(columns=re_dic#各新建一个空DataFramedf_income=pd.DataFramedf_balance0=pro.balancesheet(ts_code=codes[i],period=str(yedf_income0=pro.income(ts_code=codes[i],period=str(year)df_cash0=pro.cashflow(ts_code=codes[i],period=str(year)#拼接各年份报表#更改索引名称#保存为表格writer=pd.ExcelWriter(comps[i]+'xlsx')#定义财务比率表生成函数#读取报表数据#报表拼接#把空值填充为0,防止计算出错#把相关数据的上期余额加入新表,包括股东权益、存货、资产总计、应收账款、营业收入、营业利润、负债合计、净利润(不含少数股东损益)#去除2014年数据,只取前五行数据保存#计算各项指标#盈利能力含少数股东权益)]+data('股东权益合计(不含少数股东权益)(上期)')/2),4)#营运能力计(上期)7)/2),4)data['应收账款周转率]=round(data[营业收入]/(data['应收账款]+data[应收账款(上期)')/2),4)data[固定资产周转率]=round(data['营业收入]/(data[固定资产]+data[固定资data[流动比率]=round(data['流动资产合计']/data['流动负债合计'],4)data['速动比率]=round(data['流动资产合计']-data['存货]-data['预付款项])/data[现金比率]=round(data['流动资产合计']-data['存货]-data[预付款项]-data['应收账款])/data['流动负债合计'],4)data['利息保障倍数']=round(data'息税前利润)/data[减:财务费用],4)营业收入(上期)'],4)data[营业利润增长率]=round((data['营业利润]-data['营业利润(上期)7)/data['营业利润(上期)'],4)data['净资产(上期)]=data['资产总计(上期)]-data['负债合计(上期)']data['净资产增长率]=round((data['净资产]-data['净资产(上期)'])/data['净资产(上期)],4)data['净利润增长率]=round((data['净利润(不含少数股东损益)']-data['净利润(不含少数股东损益)(上期)')/data['净利润(不含少数股东损益)(上期)'],4)#取出财务比率df_ratio=df_ratio.T#转置#因为上一行代码转置之后,第一行是0/1/2/3……,我们希望把第二行的报告期作为表头,并从第二行开始取数lambdax:int(x))#重新命名表头,并且通过apply+lambda配合int取整函数将日期变成整数格式(原本保存成了小数格式)#把财务比率保存为现有表格中的sheetwriter=pd.ExcelWriter(comp+'.xlsx',mode="a",engine="oreturndf_ratio#这行其实也可以不写,主要就是为了查看下获取的比率结果#批量需要获取数据的公司名称、股票代码、年份codes=['600519.SH','000858.SZ','000568.SZ']years=[2020,2019,2018,2017,2016,2015]#调用函数生成相关Excel文件1.以下哪个不属于趋势分析中的盈利能力分析()A:毛利率B:存货周转率A:流动比率B:毛利率C:存货周转率D:ROE流动比率过大,可能是因为企业存在货币资金闲置、应收账3.哪一项不属于常见的趋势分析(C)A:盈利能力B:运营能力C:创新能力本题选c。常见趋势分析包括运营、盈利、成长、偿债。A.营收增长率B.流动比率C.营业利润增长率D.总资产周转率错误。应该根据企业所在的行业特点以及企业自身的经营目标1.参照6.5节综合评分的流程,自定义各指标权重(注意权重之和为1),加总后看看总分有何变化,结合权重分布思考为何会有这种变化?#习题1:需要加上以下代码:#权重分配仅供参考,无标准答案2.沿用第1题的答案,尝试对白酒行业所有上市公司进行批量趋势打分(获取白酒行业所有上市公司代码的方法可以提前学习下一章开头的内容),并按照最终分数降序排列。#首先需要利用上一章的函数获取每个公司的财务数据bj_com=com_data[com_data['industry']=='白酒]bj_list=bj_com['ts_code'].to#批量需要获取数据的公司名称、股票代码、年份years=[2020,2019,2018,2#调用函数生成相关Excel文件access_data(comps,coelifdata.iloc[j,ij>data.iloc[j+1,ij]:#分数标准化为100分score_sheet['评分]=scoresscore_sheet['权重']=[0.05,0.05,0.05,0.1,0.05,0.05,0.1,0.05,0.1,0.05,0.1,0.1,trend_score+=round(score_sheet.loc[i,'评分'*score_sheet.loc[i,'权重],2)result=result.T.sort_valA:平均ROEB:上期ROEC:全面摊薄ROED:加权平均ROE本题选c。公式为:报告期归母净利润/报告期期末归C:速动比率反映偿债能力D:净利润增长率反映成长能力3.进行同业比较时,常用的python库包括(A)A:pandasB:Scikit-learnC:NLP1.进行同业比较时,可视化主要选取什么方法(AC)A:同业直观比较B:同业潜在1.参照上述指标的分析思路,同样针对白酒行业,分析2020年各公司利息保障倍数的表现(进行可视化呈现)。table=table.T.sort_values(0,ascending=False).Tplt.figure(figsize=(10,6))#设置下图片大小,不然有点挤plt.bar(table.columns,table.loc[0],label='利息保障倍数plt.legend(loc='upperleft')#设置图例位置为左上角plt.xticks(range(len(table.columns)),table.cdes_table['贵州茅台]=table['贵plt.bar(des_table.columns[1:],des_table.plt.legend(loc='upperleft')#设置图例位置为左上角2.参照7.5小节的评分过程,针对特钢(特种钢行业各公司代码已经在源代码文件夹中给出,文件名称为:“补充材料:特钢行业.xlsx”)行业进行同业趋势打分,时间选取2015年-2020年,并将结果用降序方式进行可视化呈现。2.参照7.5小节的评分过程,针对特钢(特种钢行业各公司代码已经在源代码文件夹中2015年-2020年,并将结果用降序方式进行可视化呈现。A:盈利能力B:发展能力C:偿债能力D:运营能力利润B:期末存货及存货等价物余额C:销售商品、提供劳务收到现金/营业收入D:1.期末现金及现金等价物余额指标主要用到的A:短期借款B:应收账款C:应付债券错误。如果一家企业的经营活动、投资活动、筹资活动的现金正在融入资金,但并没有展开对外投资。这种情况下参照8.6小节的思路和代码,同样针对特钢行业(公司代码文件已在源代码文件夹中给出),围绕现金流的五个指标展开行业分析,看看与你之前对这个行业的理解是否一致?#重复部分不再给出,只需更改几个地方即可#首先更改年份years=['20161231','20171231','20181231','2019#其次更改公司代码df1=df1.append(pro.cashflow(ts_code='600399.S#另外注意可视化时更改公司名称.set_global_opts(title_opts=opts.TitleOpts(title="抚顺特钢",subtitle="经营活动现金流量净额与净利润对比")))#现金流肖像输出结果部分也需要注意修改年份你可能会发现利润表和资产负债表指标表现突出的公司可能在现金流量表指标上表现并不好,或者颠倒过来。这是因为资产负债表体现的是权责发生制原则,也是现行会计准则的记账基础,而现金流量表体现的是收付实现制思想;这二者关注的重点不一样,前者关注权利义务视角下公司的这二者在进行财务分析时互为补充,缺一不可,所以现金流量表的作用是不可替代的。第九章杜邦分析A:股东B:债权人C:两者均考虑D:以上选项均错误本题选c。投资回报率是十分全面的指标之一,充分考虑股东和债权人的利益。本题选c。通常使用归母净利润计算roe.本题选b。三种赚钱模式为:高净利率、高杠杆率、高周转率。1.以下属于ROE的常见计算方法的是(ABCD)A.(全面)摊薄ROEB.平均ROEC.1.参照本章内容,结合2020年数据,对深交所所有上市公司从杜邦分析法的角度进行#读取重构后的资产负债表df_balance=pd.read_excel(comps[i]+'_资产负债表重#获取利润表数据df_income=pd.DataFrame()rename_col(pro.income(ts_code=codes[i],period=str(year)+'123df_income=df_income.append(dfdf_income['ebit']=df_income['ebit']/10000#单位改为万元df_income=df_income.set_index(["报告期"])#把年份作为索引#拼接两张表#计算ROIC]+df.loc['股东权益合计(含少数股东权益)])df_roic=pd.DataFrame(roic).rename(columns#保存为表格df_roic.T.to_excel(comps[i]+'_2.简述ROE和ROIC分析方法的主要区(1)ROE(净资产收益率),是净资产的投资回报率,ROE=归属于股东的利润/股(2)ROIC(投入资本回报率),是负债与净资产的总和的投资回报率,ROIC=企业息前税后利润/(股东投入资金+债权人投入资金),ROIC衡量的是股东与债权人投入的总资本所创造的利润。相比于ROE,ROIC剔除了非经常损益以避免其影响,并还原了杠杆前经营性资产(剔除了超额现金等)的获利能力,更加能反映真实的项目盈1.按照趋势分析和同业分析对公司评价,我们可以对这两个维度赋予的不同权重是(D)A:趋势分析占40%,同业分析占60%B:趋势分析占50%,同业分析占50%C:趋势分析占60%,同业分析占40%D:以上均可2.评分体系中,现金流量分析常用的指标为(D)A:存货周转率B:总资产周转率C:速动比率本题选d。其余指标为静态分析常用的指标。3.三张表中造假和粉饰的空间较小的是(C)A:资产负债表B:利润表C:现金流量表本题选c。三张表中,资产负债表、利润表粉饰空间小于现金流量表。金流量表D.成长能力1.参照本章分析思路,对特钢行业(行业公司代码已在源代码文件夹中给出)进行综合评分,同样采用2019和2020两个时点进行评分,看看结果与现实是否一致?#获取同行业股票代码com_data=pro.stock_basic(exchange=",list_status='fields='ts_code,symbol,name,area,industry,list_#调用函数,生成财务比率表access_data(bj_name,bj_c#现金流量表#另外不要忘了提取财务指标那一行代码加上这四个指标:#趋势评分#读取财务比率表数据df_ratio=pd.read_e#进行评分ifnp.isinf(data.iloc[j,i])==True:elifdata.iloc[j,i]>data.#分数标准化为100分score_sheet_trend[cotrend_scores=round(score_sheet_tr#同业评分#读取财务比率表数据meanvalue=df_ratio.T.ratio_ind=ratio_ind.append(standard=ratio_ind.describelifratio_ind.iloc[i,j]>stanelifstandard.loc['50%'][j]<ratio_ind.iloc[i,j]<=standard.loc['75%'][j]:elifstandard.loc['25%'][j]<ratio_ind.iloc[i,j]<=standard.loc['50%'][j]:score_sheet[bj_name[ity_score=round(score_sheetscore_sheet_ty['同业评分'=t业得分)')#2020年同上,更改年份years=[2020,2019,2018,22.改变同业和趋势维度的权重(注意权重和为1,比如改为同业0.4、趋势0.6),再运行代码,观察结果与第一问的区别,思考这种带来这种区别的原因,哪一种更符合现实情况,这告诉了你什么?#其他代码相同,更改如下代码:第十一章线性回归模型+财务会计案例实战1.线性回归模型系数的求解数学方法为?A.最小二乘法B.泰勒展开式C.二阶梯度法D.牛顿演绎法本题选A。通过对残差平方和进行求导,然后令其导数为0便可以求得一元线性回归模型的系数a和截距b,这个便是一元线性回归的数学原理,学术上称其为最小二乘法2.线性回归模型可以支持哪个非线性模型?A.一元二次B.一元四次本题选a。对于一元线性回归模型而言,其实它还有一个进阶版本,叫作一元多次线3.下面哪个不是用来评估线性回归模型的模型优劣?本题选c。模型搭建完成后,还需要对模型进行评估,这里主要以三个值作为评判标准:R-squared(也即统计学中常说的R^R^2)、P值。其中R-squared和Adj.R-squared用来衡量线性拟合的拟合程度,PC.预测变量的数量本题选a。一元线性是说一个解释变量对被解释变量的影响.多元线性则是多个解释变5.线性回归模型可以预测下面哪些案例?A.客户价值预测模型B.房价预测模型C.收入预测模型D.以上都是本题选d。第十二章决策树模型+财务舞弊模型搭建1.决策树模型主要用来做?B.分类C.分类和回归D.分类、回归、聚类分群本题选c。决策树模型常常用来解决分类和回归问题。2.下面哪个是决策树模型的节点分裂依据?A.基尼系数B.信息熵C.基尼系数、信息熵计算一个系统中的失序现象,也即系统的混乱程度。基尼系高,建立决策树模型的目的就是降低系统的混乱程度,从而到达合适的数据分类效果。信息熵的作用和基尼系数是基本一致的,都是用来衡量系统的本题选a。决策树模型使用max_depth代表深度。5.GridSearch网格搜索主要用于?A.交叉验证B.参数调优C.模型评估D.模型选择本题选b。网格搜索(GridSearch)用于选取模型的最优超参数1.参照12.1.3小节提到的回归决策树代码,利用本书源代码提供的“客户价值数据表.xlsx”,划分训练集和测试集,搭建相应的回归决策树模型,并根据上一章线性回归模型相关知识点搭建回归模型。并比较这2个模型的R-Square值。Y=df['客户价值”X_new=MinMaxScaler().fit_transfX2=sm.add_constant(X_Y=df[客户价值]y_pred=model.predict(2.对上一题搭建的回归决策树模型进行参数调优(友情提示,回归模型在参数调优的#前部代码无改变,省略#指定决策树分类器中各个参数的范围parameters={'max_dep'min_samples_split':[5,#构建决策树分类器model=DecisionTreeClassifier()#因为要进行参数调优,所以不需要传入参数了#网格搜索#前部代码无改变,省略#指定决策树分类器中各个参数的范围parameters={'max_depth':[5,7,9,11,13'min_samples_split':[5#构建决策树分类器model=DecisionTreeClassifier()#因为要进行参数调优,所以不需要传入参#网格搜索grid_search=GridSearchCV(model,parameters,scoring='grid_search.fit(x_smote_resampled,y_smote第十三章集成机器学习模型+财务舞弊预测1.GBDT模型的核心是?A.拟合残差B.加大优质模型权重C.调整错误样本的权重D.以上都是本题选a。GBDT(GradientBoostingDecisionTree)梯度提升树算法也是非常实用的一种Boosting算法。它与AdaBoost算法的区别在于AdaBoost算法根据分类效果调整权重不断迭代最终生成强学习器,而GBDT算法则将损失函数的负梯度作为残差的近似值,不断使用残差迭代和拟合回归树最终生成强学习器。2.GBDT模型算法推演过程中的残差是怎么定义的?A.实际值-预测值B.预测
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年心理测试与心理评估考试模拟题
- 2026年企业内训销售类产品销售技巧有效沟通方法模拟题及答案
- 2026年大学英语水平测试试题集
- 2026年投资策略与风险管理专业考试题
- 2026年医学基础知识生物化学模拟试题
- 2026年文学作品鉴赏与文化素养测试题
- 2026年背景板租赁合同三篇
- 2026年古代文学与文化背景知识题
- 2026年律师资格考试实操题法律文书写作与案例分析
- 2026年环境工程污水处理与治理专业技能测试题
- 2026届山东省济南市高三上学期第一次模拟考试物理试题(原卷+解析)
- 洗浴中心服务规范与流程(标准版)
- 北京市怀柔区2026年国有企业管培生公开招聘21人考试题库必考题
- 2026年陕西财经职业技术学院单招职业技能测试题库参考答案详解
- 2026年区块链基础培训课件与可信数据应用场景指南
- 雨课堂学堂在线学堂云《课程与教学论( 华师)》单元测试考核答案
- 2025年豆制品千张销量及餐桌烹饪调研汇报
- 不良事件上报流程及处理
- 为老年人更换纸尿裤
- DB64-T 1991-2024 地质灾害监测设施建设技术规范
- 2025年保安员证考试题库及答案
评论
0/150
提交评论