【4】数据分析基础(pandas中的series 1)

学习目标2

pandas模块的学习。

pandas是一个基于NumPy的模块,它的功能在于数据的筛选清洗和处理,与NumPy模块相比,pandas模块更擅长处理二维数据。

pandas模块主要有Series和DataFrame两种数据结构。

接下来,我们先学习Series的相关知识:

  1. Series的概念

  2. 构造一个Series

  3. 访问Series数据

  4. Series的常用属性

安装与导入pandas

安装pandas

在使用pandas前,我们需要先安装pandas。
在终端中输入代码:++pip install pandas++ 即可。
如果在自己电脑上安装不上或安装缓慢,可在命令后添加如下配置进行加速:
pip install pandas -i https://pypi.tuna.tsinghua.edu.cn/simple/

示例:

导入pandas

|-------------------------------------------------------------------------------------|
| 在使用pandas模块最开始,由于pandas不是Python的内置模块,我们需要在代码的开头,将pandas模块导入。 为了让其方便调用,我们通常会将其简写成pd。 |
| |

导入了pandas模块,我们就可以进行数据集的操作啦。接下来, 我们先学习Series的概念和创建。

Series

|--------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------|
| 定义 Series,中文叫做序列,pandas模块的一种数据类型。 是一个一维的、带索引(index)的数组对象。 目前可以先不关注代码的部分,只关注Series。 隐喻 Series,就像排行榜,可以通过有次序的名次,找到对应的玩家名字。 | |

|---------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------|
| 右侧是一个print出来的Series,它由3部分构成。 左侧是索引(index),右侧是值(values),下面是值(values)的数据类型。 一个索引对应一个值。索引和值之间,有空格隔开。 | |

|-----------------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------|
| Series和字典,有一定的相似之处。 一个字典中,通过键(key),可以访问所对应的值(value)。 Series也是如此,一个Series的索引(index)在左边,值(values)在右边,可以通过左边的索引index访问到右边对应的值values。 | |

|--------------------------------------------------------------|----------------------------------------------------------------------------|
| 和字典不同的是: Series中的数据是有顺序的。 除了直接通过index访问外,还能通过0,1,2这样的位置进行访问。 | |

Series的index是可以定义的。

如果没有定义index,index就会默认从0开始生成。

|--------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------|
| Series的值(values)可以是多种数据类型:字符串、整型、浮点型、布尔型。 一个Series在print输出时,值的数据类型会在底部,用dtype标示出来。 需要注意的是,一个Series里的所有值,数据类型都是一样的。 | |

|----------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| 代码的作用 这几行代码,构造了一个Series。 第1行,导入pandas模块。 第3行和第4行,定义了两个列表。 第6行,使用pd.Series()构造函数,创建了一个Series,并赋值给了变量info。 第8行,输出info。 | import pandas as pd GDP = [80855, 77388, 68024, 47251, 40471] city = ['GD','JS','SD','ZJ','HN'] info = pd.Series(GDP,index = city) print(info) |

代码的具体解释:

|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| pd.Series( ) 通过调用pandas模块里的Series()函数,可以构造一个Series。 | import pandas as pd GDP = [80855, 77388, 68024, 47251, 40471] city = ['GD','JS','SD','ZJ','HN'] info = pd.Series(GDP,index = city) print(info) |
| 第一个常用参数:data pd.Series()中,参数data表示需要传入的数据,可以是列表,常量,数组等。 示例中,GDP是一个列表,传入了pd.Series()函数中,列表中的元素会成为Series中的值(values)。 注意: 如果不传入数据,会生成一个空的Series。 | import pandas as pd GDP = [80855, 77388, 68024, 47251, 40471] city = ['GD','JS','SD','ZJ','HN'] info = pd.Series(GDP,index = city) print(info) |
| 第二个常用参数:index 参数index用于定义Series的索引(index)。 只需要将另一个列表赋值给参数index。 示例中,我们将定义的列表city赋值给参数index。 city中的值,会成为Series的index。 若不传入参数index,那么生成的Series的索引(index)就会默认从0开始生成。 需要注意: 作为index的列表,和作为值的列表,元素个数需要一致,否则会报错。 | import pandas as pd GDP = [80855, 77388, 68024, 47251, 40471] city = ['GD','JS','SD','ZJ','HN'] info = pd.Series(GDP,index = city) print(info) |
| 赋值的变量 将pd.Series()函数创建的Series,赋值给了info这个变量。 将info输出可以看到,它是一个Series对象。 值(values)是由列表GDP的值组成; 索引(index)是由列表city的值组成; 值(values)的数据类型是整型。 | import pandas as pd GDP = [80855, 77388, 68024, 47251, 40471] city = ['GD','JS','SD','ZJ','HN'] info = pd.Series(GDP,index = city) print(info) |

总结:

|------------------------------------------------------------------------------------------------------------------|
| 1. 传入列表 导入pandas模块后,我们定义了两个列表GDP和rank。 我们尝试用Series构造函数,传入列表GDP作为Series的值,传入列表rank作为Series的index,赋值给变量info,并将其输出。 |
| |
| |

|--------------------------------------------------------------------------------------------------------------------------------------------------|
| 2. 传入数组 对于pd.Series(data,index),对参数data传入列表是最为常见的。 其实,参数data还可以传入数组。 我们尝试用Series构造函数,传入一维数组GDP作为Series的值,传入列表rank作为Series的index,赋值给变量info,并将其输出。 |
| |
| |

|--------------------------------------------------------------------------------------------------------|
| 3. 传入常量 pd.Series(data,index)的参数data若是常量,则必须提供索引。 此时常量才能按照索引(index)的数量进行重复,并与其一一对应。 通过常量构造series的代码如下: |
| |
| |

总结:

|--------------------------------------------------------------------------------------------------------------------------------------------------|
| Series构造函数 |
| 调用pandas模块里的Series函数,用于构造一个Series。 传入一个列表作为必选参数,列表中的元素,会成为Series中的值(values)。 传入一个列表作为可选参数,列表中的元素,会成为Series中的索引(index)。如果不传入可选参数,index就会默认从0开始生成。 |
| |

前面,我们了解了Series这种数据结构,学习了如何创建一个Series。

接下来,我们学习访问Series的数据的两种方式

相关推荐
繁华落尽,寻一世真情2 小时前
【声音场景分类--论文阅读】
论文阅读·分类·数据挖掘
小小的guo3 小时前
近红外数据预处理和简单分析matlab
笔记·matlab·数据分析
liruiqiang056 小时前
机器学习 - 如何理解函数集合中的准确性、召回率、F1分数呢?
人工智能·机器学习·数据挖掘
乙真仙人7 小时前
重新定义数据分析:LLM如何让人专注真正的思考
大数据·人工智能·信息可视化·数据挖掘·数据分析
Echo bigdata7 小时前
系统认识数据分析
数据挖掘·数据分析
Bioinfo Guy9 小时前
NHANES数据挖掘|特征变量对死亡率预测的研究设计与分析
人工智能·数据挖掘
liuweidong080211 小时前
【Pandas】pandas Series rtruediv
前端·javascript·pandas
Amd7941 天前
深度剖析 GROUP BY 和 HAVING 子句:优化 SQL 查询的利器
sql·性能优化·数据分析·group by·聚合函数·数据分组·having
羊小猪~~1 天前
EDA数据分析结合深度学习---基于EDA数据分析和MLP模型的天气预测(tensorflow实现)
pytorch·python·深度学习·机器学习·数据挖掘·数据分析·tensorflow
长弓同学1 天前
python语义分析实战--基于LDA主题建模、TextBlob情感分析的评论数据分析及可视化(附代码)
开发语言·人工智能·python·数据挖掘·数据分析