Python数据分析 Pandas Series对象操作

 更新时间:2022年05月23日 08:43:22   作者:​ tigeriaf   ​  
这篇文章主要介绍了Python数据分析之Pandas Series对象,文章基于python的相关资料展开详细内容介绍,具有一定的参考价值,需要的小伙伴可以参考一下

一、Pandas Series对象

Pandas 是基于 NumPy 设计实现的 Python 数据分析库,Pandas 提供了大量的能让我们高效处理数据的函数和方法,也纳入了很多数据处理的库以及一些数据模型,可以说非常强大。

可以使用以下命令进行安装:

conda install pandas
# 或
pip install pandas

Series数据结构

Pandas 最常用的数据结构主要有两种:Series 和 DataFrame,这篇文章主要介绍一下Series及如何创建Series对象。

Series 是一维数组,由一列索引index和一列值values组成,索引和值是一一对应的,可以存储不同种类的数据类型,字符串、布尔值、数字、Python对象等都可以。

创建Series对象

创建Series对象的格式如下:

s = pd.Series(data, index)

参数data为数据,可以是字典、列表、Numpy的 ndarray 数组等;
参数index为索引,值必须唯一,类似于Python字典的键,可以不传,默认为从0开始递增的整数。

从列表创建:

data = ["a", "b", "c", "d", "e"]
s = pd.Series(data)
s

从字典创建:

当data为字典时,如果没有传入索引的话,会按照字典的键来构造索引,索引对应的值就是字典的键对应的值。

data = {"a": 1, "b": 2, "c": 3}
s = pd.Series(data)
s

结果输出如下:

a    1
b    2
c    3
dtype: int64

从 ndarray 数组创建:

ndarray 为Numpy 的数组类型,在Python数据分析 Numpy 的使用方法的文章已经介绍过。

data = np.array([1, 2, 3, 4])
s = pd.Series(data)
s

我们可以通过创建的Series对象,调用相应的属性和方法来进行数据的处理分析等。下面继续来看Series对象的基本操作

二、Series对象的基本操作

Series 常用属性

  • index:获取索引
  • values:获取数组
  • size:获取元素数量
  • dtype:获取对象的数据类型

获取索引及修改索引

data = ["a", "b", "c", "d"]
s = pd.Series(data)
print(s.index)
s.index = ["A", "B", "C", "D"]
print(s.index)

结果输出如下:

RangeIndex(start=0, stop=4, step=1)
Index(['A', 'B', 'C', 'D'], dtype='object')

指定索引对应元素的获取、修改及删除

Series 通过索引获取、修改及删除对应元素和Python字典的操作有些类似,具体使用方法如下:

# 获取数据
print(s["A"])
# 修改数据
s['A'] = 99
# 删除数据
s = s.drop("B")
s

另外,Series 也支持通过筛选条件获取数据,例如获取能被2整除的数据:

data = np.array([1, 2, 3, 4])
s = pd.Series(data)
s[s%2==0]

Series 切片

Series 切片操作同Python列表的切面也是类似的,如下:

s[0:3] 

表示取第0、1、2个数据。

也可以使用索引值来进行切片,例如获取索引值B-D的值:

s["B":"D"]
复制代码

Series 常用方法

  • head(n):返回前n行数据,默认前5行
  • tail(n):返回后n行数据,默认后5行
  • isnull()&nonull():判断是否为空,返回True和False
  • sort_values():排序,通过传递ascending参数来确定升序or降序,默认为True,表示升序
  • dropna():删除空值

Series 运算

统计信息

可以通过describe()方法获取统计信息,如下:

也可以通过如下方法分别获取:

  • min():获取最小值
  • max():获取最大值
  • mean():获取均值
  • median():获取中位数
  • sum():获取总和
  • count():获取总数
  • ······

四则运算

s+2  # 对每个元素进行+2
s*100  # 对每个元素乘100

也可以调用如下方法进行:加法add()、减法sub()、乘法mul()、除法div()

到此这篇关于Python数据分析之 Pandas Series对象的文章就介绍到这了,更多相关Pandas Series对象内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Django中的ajax请求

    Django中的ajax请求

    今天小编就为大家分享一篇关于Django中的ajax请求,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2018-10-10
  • 基于树莓派的语音对话机器人

    基于树莓派的语音对话机器人

    这篇文章主要为大家详细介绍了基于树莓派的语音对话机器人,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-06-06
  • PyCharm代码提示忽略大小写设置方法

    PyCharm代码提示忽略大小写设置方法

    今天小编就为大家分享一篇PyCharm代码提示忽略大小写设置方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-10-10
  • python原始套接字编程示例分享

    python原始套接字编程示例分享

    在实验中需要自己构造单独的HTTP数据报文,而使用SOCK_STREAM进行发送数据包,需要进行完整的TCP交互。因此想使用原始套接字进行编程,直接构造数据包,并在IP层进行发送,即采用SOCK_RAW进行数据发送。使用SOCK_RAW的优势是,可以对数据包进行完整的修改,可以处理IP层上的所有数据包,对各字段进行修改,而不受UDP和TCP的限制。
    2014-02-02
  • 用Python代码来绘制彭罗斯点阵的教程

    用Python代码来绘制彭罗斯点阵的教程

    这篇文章主要介绍了用Python代码来绘制彭罗斯点阵的教程,核心代码主要就是一行简单的lambda匿名函数,需要的朋友可以参考下
    2015-04-04
  • python网络编程学习笔记(一)

    python网络编程学习笔记(一)

    这篇文章主要介绍了python网络编程基础知识,需要的朋友可以参考下
    2014-06-06
  • django中media媒体路径设置的步骤

    django中media媒体路径设置的步骤

    在本篇文章里小编给大家整理的是关于django media媒体路径设置相关知识点,有兴趣的朋友们可以学习下。
    2019-11-11
  • python实现扫雷游戏的示例

    python实现扫雷游戏的示例

    这篇文章主要介绍了python实现扫雷游戏的示例,帮助大家更好的理解和学习python,感兴趣的朋友可以了解下
    2020-10-10
  • python利用插值法对折线进行平滑曲线处理

    python利用插值法对折线进行平滑曲线处理

    这篇文章主要为大家详细介绍了python利用插值法对折线进行平滑曲线处理,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-12-12
  • python 模拟登陆github的示例

    python 模拟登陆github的示例

    这篇文章主要介绍了python 模拟登陆github的示例代码,帮助大家更好的理解和学习python 爬虫的相关知识,感兴趣的朋友可以了解下
    2020-12-12

最新评论