版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Python与财经大数据分析基础第1章——数据创建
CONTENTS目录1.1数据分析模块介绍1.2DataFrame简介1.3DataFrame数据创建1.4读取本地存储的数据1.5实操练习题1.1数据分析模块介绍1.1数据分析模块介绍数据,是一切分析的基础,科学地创建、整理数据,是得到可靠分析结果的重要前提。为了更好地进行数据分析,我们首先需要构建自己的数据集或数据库。在数据创建时,我们可以构建虚拟数据,也可以读取现有数据公司提供的数据,也可以利用网络爬虫爬取网上一些特色数据。通过Python的数据创建功能,可以实现数据的存储,方便后续的调用、清洗、运行、计算和分析。1.1数据分析模块介绍由于爬虫技术在后续章节会有介绍,所以本章主要介绍通过DataFrame自行创建,或通过读取结构化数据创建两种方式。1.2DataFrame简介1.2DataFrame简介在Python中,DataFrame是一种表格型数据结构,类似Excel,是Pandas中非常重要的结构化数据容器。通过DataFrame,数据分析过程中的繁琐操作在很大程度上简化了。DataFrame既有行索引,也有列索引,是二维数据结构,即数据以行和列的表格方式排列。DataFrame也被看做是一系列Series组成的字典。如图所示,DataFrame由index、columns及data构成。1.3DataFrame数据创建1.3DataFrame数据创建在进行数据创建时,可以借助Pandas模块中的DataFrame()函数。该函数的具体语法如下所示:1.3DataFrame数据创建(1)通过列表(list)创建当数据为列表(list)类型时,为方便后期分析与运算,通常会将列表(list)转变为DataFrame进行操作,同时可以定义index和columns的值。当由多个列表中创建DataFrame时,需要使用zip()函数。zip()函数返回一个zip类型的对象,将多个列表的相同位置的元素配对在一起,每个列表形成DataFrame不同的列。1.3DataFrame数据创建(2)通过数组(array)创建我们可以通过Pandas.DataFrame()函数将生成的数组转换成一个标准的DataFrame。为了更方便读取数据,我们可以分别定义index和columns的值。1.3DataFrame数据创建(3)通过字典(dict)创建作为一种可变容器模型,字典(Dictionary)可存储任意类型对象。当录入数据为字典(dict)类型时,通过Pandas.DataFrame()函数,可以很方便的将字典转变为DataFrame。其中,字典的Key对应DataFrame中column值,字典中每一对数据会形成一个Series,这些Series汇总到一起就是DataFrame中的columns。此外,在使用Pandas.DataFrame()函数对字典数据进行转换时,可以单独定义index参数。1.3DataFrame数据创建(4)通过序列Series创建 Series是Pandas库中一种基本的数据结构,属于一维数据形式,可以理解为n行2列的简单数据表格,第一列是索引(index),第二列是值(values)。作为二维数据结构的DataFrame可以拆分为一系列Series,同时一系列Series可以组合成DataFrame。基于此,DataFrame可以通过Series来创建。其中,index为Series的标签,columns对应各个Series。当遇到Series长度不同的情况时,缺失数据会显示为NaN。相比于用list创建DataFrame,用Series创建可以实现自动对齐。1.3DataFrame数据创建(5)时间序列数据创建有时候我们需要构建一个时间序列,模拟一些数据。Pandas.date_range()函数为我们创建时间序列提供了便利,通过该函数,我们很方便的可以生成一个固定频率的时间序列。然后,再结合其他数据,通过pandas.DataFrame()函数创建一个虚拟时间序列数据。1.3DataFrame数据创建Pandas.date_range()函数的具体语法如下所示:1.4读取本地存储的数据1.4读取本地存储的数据对于数据分析而言,获取和利用第三方数据是比较有效的方式。目前,市场上有很多专注于数据生产的第三方公司,如国泰安(CSMAR)和万得资讯(Wind)等。这些公司专注于数据源的工作,提供数据产品给使用者。这些数据大部分是结构化数据。例如,上市公司年报信息、重要的公司治理数据、环境数据、宏微观经济数据、重大事件数据和市场交易数据等等。通过对这些结构化数据的读取和处理,Python可以高效的辅助我们进行数据分析、可视化或数据挖掘。本小节将从单个文件读取与批量文件读取两个角度,分别介绍csv文件、txt文件与Excel文件的读取方法。1.4读取本地存储的数据(1)单个文件读取A.读取文本文件在现有第三方数据库中,很多数据被存储在文本文件(csv文件、txt文件)中。这是因为文本文件可以储存较大样本量的数据,与其他存储形式相比能够节省大量的储存空间。Pandas.read_csv()是专门读取csv文件、txt文件的函数。该函数的具体语法如下所示:1.4读取本地存储的数据1.4读取本地存储的数据B.读取表格文件现实中,很多财经数据会以Excel的形式存储。在Python中,可以通过Pandas.read_excel()函数导入已有Excel文件。该函数的具体语法如下所示:1.4读取本地存储的数据1.4读取本地存储的数据(2)批量文件读取在对资本市场进行分析的过程中,往往需要依靠较长时间跨度的数据资料作为支撑。由于单个csv和Excel文件储存的数据有限,而资本市场交易数据量又很大,在数据分析过程中,我们经常遇到的是,一个大的数据文件被分割成若干文件,在读取的时候需要对这些文件进行批处理,形成一个整体的文件。1.4读取本地存储的数据首先,利用for循环,获取所需读取全部文件名称的列表1.4读取本地存储的数据在获得文件名称的列表后,可以根据文件名称和文件路径构建文件的绝对路径,再按照文件绝对路径对每个文件进行数据读取,具体操作中有以下两种方法:1.4读取本地存储的数据方法一:生成一个空DataFrame,通过read_csv()(或read_excel)和append()函数对所有数据进行读取,存入DataFrame中。1.4读取本地存储的数据方法二:
生成一个空list,通过read_csv()(或read_excel)和append()函数对所有数据进行读取,存入list中,通过concat()函数整合数据,存入DataFrame中。1.4读取本地存储的数据append()函数与concat()函数常用于数据合并,两种方法进行数据批量读取的结果完全一致,但第二种方式只进行一次DateFrame合并,因此运行速度相对较快。1.5实操练习题1.5实操练习题从CSMAR数据库中下载Excel2003格式的1990-2022年资产负债表、利润表、现金流量表所有科目的数据,对这些文件进行批量读取,分别形成资产负债表、利润表、现金流量表数据。Python与财经大数据分析基础第2章——数据查看
CONTENTS目录2.1DataFrame数据属性2.2DataFrame数据查看2.3实操练习题2.1DataFrame数据属性2.1DataFrame数据属性在进行数据分析过程中,我们首先需要对数据有个大致了解,例如数据的基本属性、基本分布和描述性统计特征。本部分主要结合DataFrame数据结构特征,详细介绍数据查看中的一些基本函数。2.1DataFrame数据属性(1)DataFrame的基本属性index、columns和values是DataFrame数据的三大基本属性,分别指代DataFrame中的行索引、列索引和数据值。index属性储存DataFrame的行名和数据类型等信息。columns属性储存DataFrame的列名和数据类型等信息。Values可以以每行为一个数组的形式储存全部values二维数组。
Data
IndexColumnsAxis=1
Axis=0
2.1DataFrame数据属性(2)DataFrame结构属性在数据分析过程中,了解数据的大小和基本结构等是后续数据分析的重要基础。例如,在数据迭代过程中,可能会需要数据的观测数、行数或列数等。查看数据涉及到的函数包括shape()函数和size()函数。
shape()函数shape()函数可输出数组或矩阵的维度,输出结果以元组的形式表示DataFrame的行、列数,即(行,列)。再通过元组的数据提取,例如shape[0]和shape[1]分别可以获得行和列的长度,很方便的实现行数和列数统计。
size()函数size()函数用来统计矩阵元素的个数。在处理成批的数据时,可以通过size()函数查看基础数据中的元素数,进行初步的分析。2.1DataFrame数据属性(3)DataFrame序列提取在对DataFrame的数据处理中,时常需要提取序列(Series)并转换为序列、数组等多种形式,以实现数据降维。通过逐步降维再返回原数据,是迭代和数据计算中的常用办法。2.2DataFrame数据查看2.2DataFrame数据查看(1)数据基本信息在DataFrame数据中,通过info()函数可显示数据的基本信息,如查看数据类型和内存信息等,包括数据的索引、列数、列名、数据量、数据类型、缺失值、内存等。该函数的具体语法如下所示:2.2DataFrame数据查看2.2DataFrame数据查看(2)数据基本描述描述性统计是数据分析的重要工具,也是快速查看数据分布和数据特征的方法。通过describe()函数可以对数据的数量、均值、标准差、最小值、四分位取值等基本信息进行描述性统计。该函数的具体语法如下所示:2.2DataFrame数据查看(2)数据基本描述describe()函数的输出的统计变量如下:2.2DataFrame数据查看(3)读取数据前/后几行
在常用的数据处理中,可以通过head/tail函数来提取数据对象的前/后几行。此操作可以用于数据预览和查看分布,用以判断数据是否有误。这对于快速测试对象中的数据类型是否正确非常有用。head/tail函数的具体语法如下所示:2.2DataFrame数据查看(4)数据分位数分位数是将一个随机变量的概率分布范围分为几个等份的数值点,按照数据从小到大分为若干等份,并以此来分析其数据变量的趋势,常用的有中位数、四分位数、百分位数等。通过quantile()函数可以获取数据更细致的位置信息,从而判断是否存在极端值情况。具体语法如下所示:2.2DataFrame数据查看2.2DataFrame数据查看(5)数据抽样
使用Python进行数据分析处理时,时常需要进行随机抽样。df.sample()函数可用于从DataFrame中随机取样。具体语法如下所示:2.2DataFrame数据查看2.2DataFrame数据查看(6)数据唯一值
unique()函数和nunique()函数可对数据的唯一值进行统计。unique()函数可以查看序列(Series)的所有不同值,返回的数据类型为array;nunique
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年度生态环境保护责任担保合同
- 安全用电施工协议书模板6
- 2024年度船舶租赁合同:航务管理与运营
- 2024年度企业信息系统集成服务合同
- 2024年度社交电商平台商家入驻合同:平台与商家之间的经营规范和费用结算3篇
- 2024年度电影项目评估与审计合同
- 《对数函数课时》课件
- 2024年度体育用品销售区域运营合同
- 2024年度国际汽车销售与维修服务合同2篇
- 2024年度新能源车辆销售与维修服务合同3篇
- 怀感恩与爱同行 主题班会课件
- 北京能源集团有限责任公司招聘笔试题库2024
- 牛津译林版英语2024七年级上册全册单元知识清单(默写版)
- 2024年广东省高中学业水平合格考语文试卷真题(含答案详解)
- S7-1500 PLC应用技术 习题及答案
- 危险化学品装卸作业安全技术操作规程
- 生物体的结构层次大单元教学设计人教版生物七年级上册
- 浅谈智能化工程总包管理及智能化工程深化设计
- 河南省科技成果鉴定、奖励申报技术资料编写的要求与技巧
- 防火门安装施工方案
- 糖尿病中医防治指南(修订版)及其临床应用
评论
0/150
提交评论