Pandas Series

Pandas Series基本操作

pandas.Series

Series结构如下:

pandas.Series(data, index, dtype, copy)

构造函数的参数如下-

  • data:数据采用各种形式,例如ndarray,list,常量
  • index:索引值必须是唯一可哈希的,且长度与数据相同。如果未传递索引,则默认np.arrange(n)
  • dtype:dtype用于数据类型。如果为None,则将推断数据类型
  • copy:复制数据。默认为假

可以使用各种输入来创建Series,例如

  • Array
  • Dict
  • 标量值或常数

创建一个空Series

 >>> # 导入pandas依赖包并起别名
>>> import pandas as pd
>>> s = pd.Series()
>>> print(s)
Series([], dtype: float64)

从ndarray创建Series

如果数据是ndarray,则传递的索引必须具有相同的长度。如果没有传递索引,则默认情况下索引将是range(n),其中n是数组长度,即[0,1,2,3…。范围(len(array))-1]。

 # Filename : pandas.py
# author by : www.cainiaojc.com
# 导入pandas依赖包并起别名
import pandas as pd
import numpy as np
data = np.array(['a','b','c','d'])
s = pd.Series(data)
print(s)

运行结果:
 0 a
 1 b
 2 c
 3 d
 dtype: object

从字典创建Series

字典可以作为输入被传递,如果未指定索引,则该字典键都采取了在排序顺序来构建的索引。如果指数通过,在对应于索引标签数据的值将被拉出。

 # Filename : pandas.py
# author by : www.cainiaojc.com
# 导入pandas依赖包并起别名
import pandas as pd
import numpy as np
data = {'a' : 0., 'b' : 1., 'c' : 2.}
s = pd.Series(data)
print(s)
运行结果:
 a 0.0
 b 1.0
 c 2.0
 dtype: float64

字典键用于构造索引。

 # Filename : pandas.py
# author by : www.cainiaojc.com
# 导入pandas依赖包并起别名
import pandas as pd
import numpy as np
data = {

索引顺序保持不变,丢失的元素用NaN(非数字)填充。

从标量创建Series

如果数据是标量值,则必须提供索引。该值将重复以匹配索引的长度

 # Filename : pandas.py
# author by : www.cainiaojc.com
# 导入pandas依赖包并起别名
import pandas as pd
import numpy as np
s = pd.Series(5, index=[0, 1, 2, 3])
print(s)
运行结果:
 0 5
 1 5
 2 5
 3 5
 dtype: int64

从具有位置Series的访问数据

可以像访问ndarray一样访问Series中的数据。
检索第一个元素。众所周知,数组的计数从零开始,这意味着第一个元素存储在第零个位置,依此类推。

 # Filename : pandas.py
# author by : www.cainiaojc.com
# 导入pandas依赖包并起别名
import pandas as pd
s = pd.Series([1,2,3,4,5],index = ['a','b','c','d','e'])
# 检索第一个数据
print s[0]
运行结果:
1

检索Series中的前三个元素。如果在其前面插入,则将从该索引开始的所有项目都将被提取。如果使用两个参数(它们之间带有:),则两个索引之间的项目(不包括停止索引)

 # Filename : pandas.py
# author by : www.cainiaojc.com
# 导入pandas依赖包并起别名
import pandas as pd
s = pd.Series([1,2,3,4,5],index = ['a','b','c','d','e'])
# 检索前3个元素
print s[:3] 运行结果:
a 1
b 2
c 3
dtype: int64

检索最后三个元素。

 # Filename : pandas.py
# author by : www.cainiaojc.com
# 导入pandas依赖包并起别名
s = pd.Series([1,2,3,4,5],index = ['a','b','c','d','e'])
# 检索最后三个元素
print s[-3:]
运行结果:
 c 3
 d 4
 e 5
 dtype: int64

使用标签(索引)检索数据

 Series就像固定大小的字典一样,可以通过索引标签获取和设置值。
使用索引标签值检索单个元素。
 # Filename : pandas.py
# author by : www.cainiaojc.com
# 导入pandas依赖包并起别名
import pandas as pd
s = pd.Series([1,2,3,4,5],index = [
运行结果:
 1
 

如果不包含标签,则会引发异常。

 

Pandas库学习笔记(3)---Pandas Series的更多相关文章

  1. pandas库学习笔记(二)DataFrame入门学习

    Pandas基本介绍——DataFrame入门学习 前篇文章中,小生初步介绍pandas库中的Series结构的创建与运算,今天小生继续“死磕自己”为大家介绍pandas库的另一种最为常见的数据结构D ...

  2. pandas库学习笔记(一)Series入门学习

    Pandas基本介绍: pandas is an open source, BSD-licensed (permissive free software licenses) library provi ...

  3. python的pandas库学习笔记

    导入: import pandas as pd from pandas import Series,DataFrame 1.两个主要数据结构:Series和DataFrame (1)Series是一种 ...

  4. 学习笔记之pandas

    Python Data Analysis Library — pandas: Python Data Analysis Library https://pandas.pydata.org/ panda ...

  5. python之pandas学习笔记-初识pandas

    初识pandas python最擅长的就是数据处理,而pandas则是python用于数据分析的最常用工具之一,所以学python一定要学pandas库的使用. pandas为python提供了高性能 ...

  6. numpy, matplotlib库学习笔记

    Numpy库学习笔记: 1.array()   创建数组或者转化数组 例如,把列表转化为数组 >>>Np.array([1,2,3,4,5]) Array([1,2,3,4,5]) ...

  7. muduo网络库学习笔记(五) 链接器Connector与监听器Acceptor

    目录 muduo网络库学习笔记(五) 链接器Connector与监听器Acceptor Connector 系统函数connect 处理非阻塞connect的步骤: Connetor时序图 Accep ...

  8. muduo网络库学习笔记(四) 通过eventfd实现的事件通知机制

    目录 muduo网络库学习笔记(四) 通过eventfd实现的事件通知机制 eventfd的使用 eventfd系统函数 使用示例 EventLoop对eventfd的封装 工作时序 runInLoo ...

  9. muduo网络库学习笔记(三)TimerQueue定时器队列

    目录 muduo网络库学习笔记(三)TimerQueue定时器队列 Linux中的时间函数 timerfd简单使用介绍 timerfd示例 muduo中对timerfd的封装 TimerQueue的结 ...

  10. C++STL标准库学习笔记(三)multiset

    C++STL标准库学习笔记(三)multiset STL中的平衡二叉树数据结构 前言: 在这个笔记中,我把大多数代码都加了注释,我的一些想法和注解用蓝色字体标记了出来,重点和需要关注的地方用红色字体标 ...

随机推荐

  1. Lakehouse 还是 Warehouse?(1/2)

    Onehouse 创始人/首席执行官 Vinoth Chandar 于 2022 年 3 月在奥斯汀数据委员会发表了这一重要演讲.奥斯汀数据委员会是"世界上最大的独立全栈数据会议" ...

  2. android端http请求重发问题定位过程

    昨天生产系统上报出一个问题:用户做一次扫码交易,出现了两条交易记录.幸好支付渠道对支付码有限制只成功了一笔,没有出现多扣钱的问题.现在我们要排查一下,为什么做一次操作会出现两条交易记录.我们的后台服务 ...

  3. uniapp 富文本图片100%显示

    下面的这个方法是在百度上找的,但是老是报错,一直没找到原因,索性自己就挨个检查了下,发现在过滤之前需要对传过来的值进行检测,是字符串才能让这个方法执行 filters: { formatRichTex ...

  4. 使用eNSP配置灵活QinQ

    参考链接:https://blog.csdn.net/xu119718/article/details/55260519 在"使用eNSP配置端口QinQ"实验中是基于端口划分的用 ...

  5. css做多列瀑布流

    <!DOCTYPE html> <html lang="en"> <head>     <meta charset="UTF-8 ...

  6. css制作骰子

    <!DOCTYPE html> <html lang="en"> <head>     <meta charset="UTF-8 ...

  7. Keil一键添加.c文件和头文件路径脚本--可遍历添加整个文件夹

    最近想移植个LVGL玩玩,发现文件实在是太多了,加的手疼都没搞完,实在不想搞了就去找脚本和工具,基本没找到一个...... 主要是自己也懒得去研究写脚本,偶然搜到了一个博主写的脚本,原博客地址:htt ...

  8. node-sass升级为dart-sass

    卸载node-sass npm uninstall node-sass 安装dart-sass npm install sass sass-loader -D 在选择dart-sass版本的时候建议低 ...

  9. OAuth + Security - 错误收集

    Could not decode JSON for additional information: BaseClientDetails 完整的错误输出如下: 2019-12-03 22:18:37.2 ...

  10. Interceptor拦截器demo

    Interceptor拦截器demo ##接口测试类 @RestController public class TestController { @RequestMapping(value = &qu ...