版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Python在财务中的应用字符串类型及其操作清洗财务报表数据字符串类型及其操作案例导入[图片][图片]案例导入[图片]案例导入数据清洗一般情况下,当数据量比较小的时候,我们可以和周会计一样,通过观察数据发现原生数据存在的问题。但是当数据量比较大的时候,在数据清洗之前就需要了解这些数据包含了哪些内容,来发现数据存在的问题。可以通过head或者是tail函数去了解数据的基本构成以及它的行列的具体意义。可以通过统计表格当中非空数据的数量来了解判断空值的原因以及是否需要处理。通过DESCRIBE函数可以生成数据描述性的统计结果,然后了解数据的计数结果、最大值、最小值等信息。数据清洗表任务二
数据清洗任务实施导入pandas库、numpy库,准备代码环境读取股票代码文件将资产负债表、利润表和现金流量表中的——替换为NANfor循环读取小家电行业每家公司的资产负债表、利润表和现金流量表将报表中除了项目名称意外的其他列转成为浮点数在所有报表中替换为NaN的数据填充为0存储为清洗完成的报表数据任务实施流程任务实施导入pandas库、numpy库,准备代码环境将资产负债表、利润表和现金流量表中的——替换为NAN在所有报表中替换为NaN的数据填充为0读取股票代码文件for循环读取小家电行业每家公司的资产负债表、利润表和现金流量表将报表中除了项目名称意外的其他列转成为浮点数246135存储为清洗完成的报表数据7任务二数据清洗任务实施涉及知识点数据清洗本任务涉及知识点DataFrame数据类型的基本操作以及函数数据筛选和查询数据清洗案例导入数据清洗的学习不仅仅是几个函数几个处理方法的学习,更需要强调的是同学们在数据清洗过程中培养稳健审慎,不急功近利的素养。中华优秀传统文化强调“欲速则不达,见小利则大事不成”,视“稳健审慎”为君子之品、成事之道,这是在长期实践中积淀的经营智慧和生存法则。在数据清洗过程中要以数据高质量分析为目标,对缺失值、重复值等的处理要保持审慎的态度,不能盲目删除,简化处理。素养小课堂清洗财务报表数据DataFrame基本操作及函数字符串类型及其操作提纲OUTLINEDataFrame基本操作DataFrame基本函数DataFrame基本操作根据上表数据创建DataFrame,并完成以下操作:(1)增加新列数据,期末余额(2)删除“科目编码”列(3)转置DataFrameDataFrame的基本操作主要包括增、删、改、查等语法规则如图:表DataFrame基本操作DataFrame基本操作在DataFrame的删除操作中需要注意使用del加变量名索引某列,即可删除被索引的列数据;如果要删除整个DataFrame,直接使用del加DataFrame名称即可,删除整个DataFrame之后,再读取数据,程序会报错。DataFrame基本函数表DataFrame的操作函数有许多,以下简单介绍几个基本函数:基本函数描述rename()修改行索引/列名insert()插入列drop()删除行列head()返回DataFrame前n行tail()返回DataFrame后n行DataFrame基本函数第一rename()和drop()函数均需要设置参数inplace=True才会对原数据修改,默认为False,返回新的DataFrame;第三Insert()函数指将列插入特定位置,插入的值可选(int、Series、数组),allow_duplicates参数表示是否允许列名重复,默认False,如果列名已经存在则报错,设置为True表示允许列名重复。第二drop()函数删除数据时,默认是删除行,如果删除列,需要设置axis=1,否则程序会报错;对于这些函数有以下几点需要注意:小结与反思一二三灵活地运用操作和函数解决实际问题掌握DataFrame的基本函数掌握DataFrame的基本操作本节重难点小结与反思
课后思考:同学们根据本节所学内容,思考一下如果是Series数据,它的操作和DataFrame数据是不是一样的呢?数据筛选与查询DataFrame索引使用[],直接索引语法:df[]直接索引根据选择的数据不同又可以分为以下几种:直接筛选表选择单列数据:df['列'];
选择多列数据:df[['列1','列2']],通过列名组成的列表选择多列数据;选择多行数据:df[1:3],按位置选取连续的行(切片),前闭后开。数据筛选与查询布尔索引(带条件判断的索引):根据布尔条件选择对应的行。根据选择条件数量可分为以下两种:1.单列布尔选择:df[(df['列']==条件)],选取某列满足一定条件的行;2.多列布尔选择:df[(df['列1']==条件)&(df['列2']>条件)],选取多列满足一定条件的行。条件筛选小结与反思本节重难点二条件筛选只能筛选符合条件的行,无法实现筛选符合条件的列。单列布尔选择和多列布尔选择都是对列设置筛选条件。条件均需要放在小括号中,多条件筛选时,用&、|、~操作符表示和与非,不能使用and、or、not关键词。三布尔选择的结果还是DataFrame,所以对于结果可以进行切片、索引器等访问。一直接筛选的三种方式中,只有单列、多列和多行,并没有办法实现切片的操作,也就是筛选行和列的操作,用直接筛选无法实现。小结与反思
课后思考:同学们请思考一下,既然直接索引无法实现单行或者切片的操作,那又有什么办法解决行索引呢?数据清洗重复值处理表duplicated()函数常用参数常用参数描述subset根据特定列识别重复项,默认使用所有列keep确定要标记的重复项,可选'first'、'last'、False,默认为'first',表示标记除第一次出现的重复项,'last'表示标记除最后一次出现的重复项,False表示标记所有重复项数据清洗重复值有可能会影响数据分析结果,特别是存在大量重复时,需要查找重复原因。一般情况下,如果确定重复值是冗余,最直接的做法就是删除重复值。删除重复值可以通过drop_duplicates()函数实现。重复值处理drop_duplicates()函数:返回删除重复行的DataFrame语法如下DataFrame.drop_duplicates(subset=None,keep='first',inplace=False,ignore_index=False)数据清洗重复值处理表drop_duplicates()函数常用参数:常用参数描述subset根据特定列识别重复项,默认使用所有列keep确定要保留的重复项,可选'first'、'last'、False,默认为'first',表示保留第一次出现的重复项,'last'表示保留最后一次出现的重复项,False表示删除所有重复项inplace默认为False,True表示直接在原数据上删除ignore_index重建索引,默认为False小结与反思本节重难点一掌握duplicated()函数二掌握drop_duplicates()函数小结与反思
课后思考:重复值会增加某些数据对整个数据集的权重,影响最后的数据分析结果。但需要注意的是在删除重复值时,需要了解重复位出现的原因。实际业务中,确实有很多出现重复数据的情况,比如同名销售人员月销售业绩相同等。因此,在处理重复数据前,需要先判断出现重复数据是人为失误还是客观存在,以防误删数据。清洗财务报表数据数据筛选与查询(二)字符串类型及其操作提纲OUTLINEloc索引器iloc索引器数据筛选与查询根据上表数据创建DataFrame,并完成以下操作:(1)选取第一行数据;(2)选取第一行和第三行数据;(3)选取第一行、第三行,列名为”期初余额”、”期末余额”的数据;(4)选取期初余额大于10000,本期发生额大于25000;(5)选取第一至第三行,”会计科目”至”期末余额”列。自定义索引012345012原始索引原始索引自定义索引数据筛选与查询通过对直接筛选和条件筛选的学习,我们知道,直接筛选只有单列、多列和多行,并没有办法实现切片的操作,也就是筛选行和列的操作,用直接筛选无法实现。那用什么方法可以实现行筛选呢?数据筛选与查询索引器筛选,是使用索引器筛选数据,根据使用的索引不同又可以分为loc索引器和iloc索引器。'在Pandas的两种数据结构中,原始索引(位置信息)和自定义索引(标签信息)是并存的。012345012原始索引原始索引自定义索引自定义索引字符串定义及其运算字符串常用函数字符串格式化数据筛选与查询loc索引器选择单行/多行数据:df.loc['行']、df.loc[['行1','行2']];选择多行多列数据:df.loc[['行1','行2'],['列1','列2']],通过两个列表选取行列组合;loc布尔选择:df.loc[(df['列']>条件)],选取单列(多列)满足一定条件的行;loc切片(选择连续的多行多列):df.loc['行1':'行2','列1':'列2'],通过切片选取连续的行列组合。常见形式有如下几种:loc索引器内既能使用自定义索引,也可以使用原始索引。根据行索引和列索引进行选取,先行后列,也可以只选取行索引。数据筛选与查询loc索引使用自定义索引的切片范围为闭区间,即始末数据都包含。loc索引器不能直接选取列,必须先行后列。loc索引器数据筛选与查询iloc索引器与loc索引器的使用几乎相同,唯一不同的是,iloc索引器中只能使用原始索引(位置信息),不能使用自定义索引,且iloc索引器切片为前闭后开。iloc索引的使用可以参见任务实施中将资产负债表、利润表和现金流量表出报表项目列都转换为浮点数的代码。通过iloc索引[:,1:]选择所有行,和第二列开始的所有列。iloc索引器一二三小结与反思本节重难点索引器索引都必须是先行后列,不能直接选取列。不连续的行列筛选时,行和列分别写在[]中,中间用逗号隔开,连续的多行多列筛选时,行和列不需要单独用[]分开,行列写在一个[]中。直接筛选的布尔选择和索引器的布尔选择使用方法相同,条件写在小括号中。小结与反思本节重难点四五索引器索引中loc索引使用的是自定义索引,如果没有自定义索引时,使用原始索引。而iloc索引只能使用原始索引。loc索引切片范围为闭区间,iloc索引器切片为前闭后开。小结与反思
课后思考:请同学们课后对pandas数据筛选的三种方式,直接筛选、条件筛选和索引器筛选进行对比总结,加深对三种方式的理解和使用。清洗财务报表数据数据清洗(二)字符串类型及其操作提纲OUTLINE重复值处理缺失值处理其他异常处理数据清洗缺失值处理表数据清洗缺失值处理缺失值是指现有数据集中某个或某些属性的值是不完整的。在数据分析中,数据缺失经常发生,有可能是数据没有采集成功,也可能是传输、存储出现故障等造成的。数据清洗缺失值处理对缺失值进行处理先检验是否存在缺失值dropna()和fillna()函数isnull()和notnull()函数数据清洗缺失值处理数据量很小时,可以用肉眼快速识别;但当数据量很大时,无法进行快速准确定位,需要依靠程序处理。'Pandas检测缺失值主要有两个函数,分别是isnull()和notnull(),即“是缺失值”和“不是缺失值”,默认会返回布尔值True或False用于判断数据清洗缺失值处理表isna()函数常用方法方法描述df.isna()查看缺失值位置df.isna().any()判断某一列是否有缺失值df.isna().sum()统计每列缺失值数量df.isna().sum().sum()统计DataFrame中缺失值合计数Series.value_counts()统计Series中不同元素出现的次数,在DataFrame中使用时,需要指定对哪一列或行使用数据清洗同学们想一想查找到的缺失值该如何处理呢?通常查找出缺失值之后,应根据数据分析需求,采用以下方式对缺失值进行处理。缺失值处理删除数据,根据缺失比例删除行、列。使用默认值填充,可用空字符串或数值0替换。使用估算值填充,采用中位数、平均数、众数等替换。数据清洗Pandas主要提供两个函数dropna()和fillna(),对缺失值进行处理。dropna()函数,用于删除缺失的值。缺失值处理表语法格式如图所示
数据清洗缺失值处理表dropna()函数参数如下:常用参数描述axis默认axis=0,表示删除包含缺失值的行,axis=1,表示删除包含缺失值的列how默认how='any',表示删除含有缺失值的所有行或列,how='all',表示删除全为缺失值的行或列threshint,保留含有int个非空值的行、列subset对特定列进行缺失值删除inplace默认为False,True表示直接在原数据上更改数据清洗比如对于上例中查找到的缺失值,如果经过分析,确定直接删除,那可以编写代码balancesheet3=balancesheet2.dropna()。缺失值处理数据清洗fillna()函数:使用指定的方法填充NA/NaN值。语法格式如图所示:缺失值处理数据清洗缺失值处理表fillna()函数参数如下:常用参数描述value用于填充的值:数值、字符串、变量、字典、series、Dat
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- T/AI 120-2022地面数字电视演进系统接收器射频性能测量方法
- 临床神经外科护理精粹
- 电池储能可行性研究报告
- 柔性光电传感器项目可行性研究报告
- 外贸基础及函电 1
- 临床护理技术课件第3章妇产科护理技术
- 中债收益率曲线与估值完善探讨
- 中小企业融资及风险管理
- 义务消防员安全培训材
- 产品客户企业服务销售指导
- 人教版小学数学六年级上册《百分数》单元作业设计
- IE方法实戢精解
- 唐诗宋词鉴赏(第二版)PPT完整全套教学课件
- 第一章园艺产品的品质
- 基于PLC的锅炉温度控制系统设计
- 当前宗教形势与宗教政策法规
- 换电重卡行业深度报告
- LY/T 2010-2012自然保护区生态旅游设施建设通则
- GB/T 32301-2015航天器包装、运输通用要求
- 2014年高考全国卷1新课标1语文试卷及答案Word
- 《噪声污染及控制》课件
评论
0/150
提交评论