Pandas统计分析(上)

前言
Pandas是python的核心支持库,它提供了大量能使我们快速便捷地处理数据的函数和方法。文章介绍开始Pandas入门内容,从安装开始,逐步介绍Pandas相关的入门知识,包括两个主要的数据结构,即Series对象和DataFrame对象,也包括如何导入外部数据。

目录

一、Pandas统计分析

1.初识Pandas

1.1Pandas的概述

1.2安装pandas

1.2.1通过PyPI的pip工具安装

1.2.2.通过PyCharm开发环境安装

1.2.3导入Excel数据

2.Series对象

2.1Series

2.2创建一个Series对象

2.3手动设置Series索引

2.4Series的索引

2.4.1.Series位置索引

2.4.2Series标签索引

2.4.3切片索引

2.5获取索引和值

3.DataFrame对象

3.1图解DataFrame对象

3.2创建一个DataFrame对象

3.2.1通过二维数组创建DataFrame

3.2.2通过字典创建DataFrame

3.3DataFrame重要属性和函数

4.导入外部数据

4.1常规导入Excel文件

4.1.1指定索引导入Excel数据

4.1.2导入指定数据

4.2导入.csv文件

4.3导入.txt文本文件

5.数据的抽取

5.1抽取一行数据

5.2抽取多行数据

5.2.1抽取多行数据


一、Pandas统计分析

文章内所用的数据:百度网盘 请输入提取码

提取码:2255

pandas介绍:

  1. Pandas 简单介绍 快速入门!!!

1.初识Pandas

1.1Pandas的概述

Pandas是python的核心支持库,它能提供快速、灵活、明确的数据结构,能够简单、直观、快速地处理各种类型的数据,例如处理SQL或Excel表格类似的数据,还能以其他形式的观测、统计数据,它的功能很多,优势显著,例如可以把python和numpy数据结构里不规则、不同索引的数据轻松地转换为DataFrame对象,还有支持日期范围生成、频率转换、移动窗口统计、移动窗口线性回归、日期位移等时间序列功能,综上所述,Pandas是处理数据的理想工具。

1.2安装pandas

1.2.1通过PyPI的pip工具安装

在系统搜索栏中输入cmd(或win键+R键打开),单机命令符提示窗口,在命令提示符后输入安装指令Pandas可以通过PyPI的pip工具安装命令如下:

1.2.2.通过PyCharm开发环境安装

除了通过pip工具安装以外,还可以通过PyCharm开发环境安装。运行PyCharm开发环境安装。运行PyCharm,选择File➡Settings命令,打开Setting窗口,选择Project Interpreter选项,然后单击+(添加)按钮,如下图。这里要注意,在Project Interpreter选项中应选择当前工程项目使用的python版本。

单击+(添加)按钮,打开 Available Packages 窗口,在搜索文本框中输入需要添加的模块名称如 pandas,然后在列表中选择需要安装的模块,如下图所示。单击 Install Package 按即可实现 Pandas模块的安装。

1.2.3导入Excel数据

Anaconda下载地址:

【示例】导入1月淘宝卖家购买数据

先导入模块,然后编写代码。

(1)运行Jupyter Notebook,创建新的notebook,在代码编辑窗口编写如下代码:

(2)运行并显示结果

2.Series对象

2.1Series

Series是 Python 的 Pandas 库中的一种数据结构,它类似一维数组,由一组数据以及与这组数据关的标签(即索引)组成,或者仅有一组数据没有索引也可以创建一个简单的 Series。Series 可以存整数、浮点数、字符串、Python 对象等多种类型的数据。

2.2创建一个Series对象

创建Series对象主要使用pandas的Series()方法,语法如下:

参数说明:

·data: 表示数据,支持 Python 字典、多维数组、标量值 (即只有大小,没有方向的量。也就是说,只是一个数值,如s=pd.Series(5)。

·index:表示行标签 (索引)。

·返回值:Series 对象。

【示例】在成绩表添加一列“物理”成绩,代码运行结果如下:

上述举例,如果通过 Pandas 模块引入 Series 对象,那么就可以直接在程序中使用 Series 对象了主要代码结果运行如下:

2.3手动设置Series索引

【示例】手动设置索引

下面手动设置索引,将 3.2.1 节添加的“物理”成绩的索引设置为 1、2、3,也可以是“明日同学“高同学”“七月流火”。程序代码及运行结果如下:

2.4Series的索引

2.4.1.Series位置索引

【示例】通过位置索引获取学生物理成绩。

获取第一个学生的物理成绩。程序代码及运行结果如下:

注意:Series不能使用[-1]定位索引

2.4.2Series标签索引

Series 标签索引与位置索引方法类似,用[]表示,里面是索引名称,注意 imdex 的数据类型是字符串,如果需要获取多个标签索引值,用[[]]表示(相当于[]中包含一个列表。

【示例】通过标签索引获取学生物理成绩。

通过标签索引“明日同学”和“七月流火”获取物理成绩,程序代码及运行结果如下:

2.4.3切片索引

用标签索引做切片,包头包尾(即包含索引开始位置的数据,也包含索引结束位置的数据)。

【示例】通过切片获取数据。

通过标签切片索引“明日同学”至“七月流火”获取数据。程序代码及运行结果如下:

【示例】通过位置切片获取数据。

通过位置切片 1~4 获取数据,程序代码及运行结果如下:

2.5获取索引和值

获取 Series 索引和值主要使用 Series 的index 和 values 方法。

【示例】获取物理成绩的索引和值。

下面使用 Series的 index 和values 方法获取物理成绩的索引和值,程序代码及运行结果如下:

3.DataFrame对象

3.1图解DataFrame对象

DataFrame是一个二维表数据结构,由行、列数据成的表格。DataFrame 既有行索引也有列索引,它可以看作是由 Series 对象组成的字典,不过这些 Series 对象共用一个索引,如图所示:

【示例】遍历 DataFrame 数据。

遍历DataFrame数据,输出成绩表的每一列数据,程序代码及运行结果如下:

3.2创建一个DataFrame对象

创建 DataFrame主要使用 Pandas 的 DataFrame0方法,语法如下:

·data:表示数据,可以是ndaay数组、Series 对象、列表、字典等

·index:表示行标签(索引)。

· columns:列标签(索引)。

·dtype:每一列数据的数据类型,其与yhon 数据类型有所不同,如 objet 数据类型对应的是
 Python 的字符型。表3.1为Pandas数据类型与 Python 数据类型的对应表。

3.2.1通过二维数组创建DataFrame

【示例】通过二维数组创建成绩表

通过二维数组创建成绩表包括语文、数学和英语,程序代码及运行结果如下:

3.2.2通过字典创建DataFrame

通过字典创建 DataFrame需要注意:字典中的 aue 值只能是一维数组或单个的简单数据类型如果是数组,要求所有数组长度一致:如果是单个数据,则每行都添加相同数据。

【示例】通过字典创建成绩表。

通过字典创建成绩表,包括语文、数学、英语和班级,程序代码及运行结果如下:

上述代码中,“班级”的 value 值是一个单个数据,所以每一行都添加了相同的数据“高一7班“。

3.3DataFrame重要属性和函数

重要属性

属性描述举例
values查看所有元素的值df.values
dtypes查看所有元素的类型df.dtypes
index查看所有行名、重命名行名df.index
df.index=[1,2,3]
columns产看所有列名,重命名列名df.columns
df.columns=[语,数,外]
T行列数据转换df.T
head查看前N条数据,默认5条df.head0 df.head(10)
tail查看后N条数据,默认5条df.tail0 dftail(10)
shape查看行数和列数shape[0]表示行,shape[I]表示列df.shape[0] df.shape[l]
info查看索引、数据类型和内存信息df.info

重要函数

1.describe:描查看每列的统计汇总信息,DateFrame类型
2.count:返回每一列非空值的个数
3.sum:返回每一列的和,无法计算的返回空值
4.max:返回每列的最大值
5.min:返回每列的最小值


4.导入外部数据

4.1常规导入Excel文件

【示例】导入Excel文件

导入”1月.xlsx“Excel文件,程序代码及结果如下:

使用绝对路径导入文件

4.1.1指定索引导入Excel数据

【示例】指定索引导入Excel数据

如果通过指定行索引导入Excel数据,则需要设置index_col参数。下面将”买家会员名“作为行索引(位于第0列),导入Excel数据,程序代码及结果如下:

4.1.2导入指定数据

一个Excel往往包含多列数据,如果只需要其中几列,可以通过usecols参数指定需要的列,从0开始(表示第1列,以此类推)

【示例】导入第1列数据

下面导入第1列数据(索引为0),程序代码及结果如下:

4.2导入.csv文件

【示例】导入.csv文件,程序代码及结果如下:

4.3导入.txt文本文件

【示例】导入.txt文本文件,程序代码及结果如下:

5.数据的抽取

5.1抽取一行数据

[示例19] 抽取一行考试成绩数据。

抽取一行名为“明日”的考试成绩数据(包括所有列),程序代码及结果如下:

5.2抽取多行数据

5.2.1抽取多行数据

【示例】抽取多行数据

抽取行名为“明日”和“高袁圆”(即第1行和第3行数据)的考试成绩数据,可以使用 loc 属也可以使用 iloc 属性,其输出结果都是一样的,主要代码如下:

df1=df.loc[['明日','高袁圆']]
df1=df.iloc[[0,2]]

运行程序,输出结果:

 

  • 22
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值