【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的数据的两种方式

相关推荐
Raas1009 小时前
MAI Gateway(魔芋企业级AI网关)对比分析:AI网关和API网关区别?企业级能力差距一览
大数据·人工智能·数据挖掘·mai gateway·企业级产品
SelectDB13 小时前
Apache Doris 5.0 年度版本前瞻(一):构建统一的多模湖仓实时分析平台
大数据·数据库·数据分析
橙时数据 FineInsight14 小时前
AI 能回答数据问题,但能解释业务原因吗?
大数据·人工智能·数据分析·指标平台·fineinsight
SelectDB技术团队14 小时前
实时主键更新选型:Doris MOW vs StarRocks 主键模型原理解析
数据分析·实时数仓·数据更新·主键模型·实时更新·写入更新·olap 引擎
知识分享小能手15 小时前
深度学习学习教程,从入门到精通,概率与信息论 — 知识点详解(3)
人工智能·深度学习·学习·数据挖掘·概率论
leoZ23116 小时前
第 2 篇:搭建地基——Vue3 + Vite + Tailwind v4 + shadcn-vue
前端·javascript·vue.js·人工智能·目标检测·数据挖掘·语音识别
数脉16 小时前
从 0 设计一个列级数据血缘模型:我们踩过的坑与最终方案
数据分析
Patrick在香港18 小时前
把 Claude 塞进 pandas 管道:7 条脏地址实测,5 条自动清洗、2 条被闸门拦下
python·pandas·etl·claude·数据清洗
Mr数据杨19 小时前
电子游戏日本市场销量预测实战 从 Kaggle 回归赛题到区域销售判断
人工智能·数据分析·kaggle竞赛
BioRunYiXue19 小时前
科研干货 | IC50全面解读:概念解析、实验设计与数据分析要点
java·开发语言·javascript·人工智能·算法·数据挖掘·数据分析