Pandas数据分析

目录

一、前期准备

二、Pandas数据分析

1.Series对象

(1)定义和创建

1' 创建Series对象

2' Index对象的常见操作

ndim:

shape:

size:

2. 数据访问 

(1) keys()

(2)  items()

​编辑

(3)用位置索引访问数据

 3.常用方法

(1)Series对象的排序方法

1' sort_index():

2' sort_ values():

 3' rank():

3.DataFrame对象

(1)定义和创建

 (2)数据访问

 (3)常见操作 

1' 使用Pandas读取两个表格数据,并将其根据姓名进行合并

 2' 实现按总分 或 语文、数学、英语单科从高到低排序功能

  3' 打印所有存在不及格科目(单科<60分)的学生记录


一、前期准备

检测电脑中是否含有 numpy 和 pandas 这两个第三方库:

命令行:pip show numpy

      以及 pip show pandas

若含有,出现下图画面:

若不含有:

具体安装方法如下:

命令行安装:pip install numpy

             或者 pip install pandas

想要更具体的了解可看 Excel_wordcloud操作(词云库)这篇博客

注意:Anaconda与IDLE是两个通道

当jupyter notebook下载了NumPy这个第三方库,IDLE中可能仍需要下载:

具体哪种情况下还需要下载:可见上一篇博客

下图为正在下载时的图片,可供参考:

二、Pandas数据分析

pandas 是一种基于 NumPy 的开源数据分析工具包,提供了高性能、简单易用的数据结构和数据分析函数。

1.Series对象

(1)定义和创建

Series对象是一种带有标签数据的一维数组,标签在Pandas中有对应的数据类型 Index ,Series类似于一维数组与字典的结合。

1' 创建Series对象

首先,导入第三方库:

import pandas as pd       导入数据分析第三方库pandas 别名为pd

import numpy as np        导入科学计算第三方库numpy 别名为np

然后,创建Series对象

1)

默认标签index为0,1,2,...,也可以自己定义

索引大小必须和列表大小一致

效果为:

2)

将字符串转换成列表

index = list( ' abcde ' )

效果为:

3)

用字典创建Series对象

默认索引为字典的键,指定索引时,会以索引为键获取值,没有值时,默认为 NaN;通过标量创

建 Series,会重复填充标量到每个索引上。

效果为:

 

Series 有两个关键的属性,分别是 values 和 index

values 属性获取具体值,类型为一维 ndarray

index 属性获取相应素引,类型为 Index

效果为:

 

 

效果为:

 

2' Index对象的常见操作
ndim:

ndarray 对象的维度

shape:

代表数组形状,返回一个元组,表示数组各个维度的长度,元组的长度为数组的维
度(与ndim相同),元组的每个元素的值代表了数组每个维度的长度

该数组的形状为1行4列  

' , ' :表明返回的是元组 ,数组的形状为一维 ,该维度的长度为4

size:

ndarray 中元素的个数,相当于各个维度长度的乘积

2. 数据访问 

宇典中的键不允许重复,但 Series 的索引允许有重复值。以索引为键,可访问对应的

值,如果值有多个,则结果为 Series 类型。

调用字典的一些常见方法,如keys()、items()等

(1) keys()

用字典的形式keys()方法访问对象 

效果为:

(2)  items()

用键值对 items()方法访问对象 

效果为:

(3)用位置索引访问数据

 3.常用方法

(1)Series对象的排序方法
1' sort_index():

对Series 按照索引排序,生成一个新的 Series 对象 ( 对对象标签排序 )

效果为:

 

 


2' sort_ values():

对 Series 按照值排序,生成一个新的 Series 对象

对对象值排序,但不改变原对象的顺序

效果为:

 3' rank():

对值进行排名,从1开始,对于相同的值默认采用原地排序(对对象值排名

效果为:

 

3.DataFrame对象

DataFrame可以看作是一种既有行索引,又有列索引的二维数组,类似于Excel表或关系型数据库中的二维表,是Pandas中最常用的基本结构。

(1)定义和创建

 DataFrame 可通过一维ndarray、list、dict、Series的字典或列表、二维ndarray、单个Series、一维数组及其他的 DataFrame 等创建。

效果为:

 

创建 DataFrame 时,可通过 index 和 columns 参数指定行索引和列索引,若没有指定索引,则默认索引为从 0开始的连续数字

为 DataFrame 对象指定索引

效果为:

 

 注:

消掉固有格式 

效果为:

 扩展:

 (2)数据访问

1'

输出的内容会进行覆盖

2'

 效果为:

(1)以列索引为关键字,获取某一列数据。例如d_1[列索引],结果为 Series对象。

效果为:

 

 (2)还可进一步获取某个数据,例如 d_1[列索引][行索引],这里需要使用两个中括号,不能合并。

效果为:

 

(3)访问多列

效果为:

 

(4) 根据属性索引(属性后面没有括号)

如果列索引为字符申,则可以列名为属性名,获取某一列数据。

效果为:

 

(5)DataFrame 也存在隐式索引和显式索引

显式索引主要是根据对应的标签访问数据,而隐式索引主要是根据位置序号访问数据。

DataFrame 也支持索引器访问数据,其中1oc[行索引,列索引]通过显式索引访问数据,iloc[行索

引,列索引]通过隐式索引访问数据。 

 输出内容会进行覆盖!!!!!!!

最终效果为:

 (3)常见操作 
1' 使用Pandas读取两个表格数据,并将其根据姓名进行合并

skiprows:跳过多少行

合并:

方法一:merge()方法

根据相同的列表合并数据  

效果为:

 方法二:用join()方法合并

   

set_index() :设置索引列,可以用一个已有列名作为索引,返回新的对象

效果为:

 2' 实现按总分 或 语文、数学、英语单科从高到低排序功能

sort_values(by):根据值进行排序,可以指定一列或多列,返回新的对象,默认由低到高

由高到低:ascending = False

效果为:

  3' 打印所有存在不及格科目(单科<60分)的学生记录

1)对列表索引 

效果为:

 

2)对属性索引 

 

效果为:

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值