Series 是pandas两大数据结构中(DataFrame,Series)的一种。使用pandas 前需要将pandas 模块引入,因为Series和DataFrame用的次数非常多,所以将其引入本地命名空间中会更方便。

  1.  
    from pandas import Series, DataFrame
  2.  
    import pandas as pd

因此,一般在代码中看到pd.,都指的是pandas。

1.创建Series

Series的定义:Series是一种类似于一维数组的对象,它由一组数据(各种NumPy数据类型)以及一组与之相关的数据标签(即索引)组成。

Series对象本质上是一个NumPy的数组,因此NumPy的数组处理函数可以直接对Series进行处理。但是Series除了可以使用位置作为下标存取元素之外,还可以使用标签下标存取元素,这一点和字典相似。每个Series对象实际上都由两个数组组成:

index: 它是从NumPy数组继承的Index对象,保存标签信息。
values: 保存值的NumPy数组。

注意三点:

1. Series是一种类似于一维数组(数组:ndarray)的对象

2. 它的数据类型没有限制(各种NumPy数据类型)

3. 它有索引,把索引当做数据的标签(key)看待,这样就类似字典了(只是类似,实质上市数组)

4.Series同时具有数组和字典的功能,因此它也支持一些字典的方法

创建数组,例如:

  1.  
    In [1]:arr=[1,2,3,4] #创建数组
  2.  
     
  3.  
    In [2]:arr
  4.  
    Out[2]: [1, 2, 3, 4]

创建Series:

  1.  
    series_1=Series(arr)
  2.  
    series_1
  3.  
    Out[146]: 
  4.  
    0    1
  5.  
    1    2
  6.  
    2    3
  7.  
    3    4
  8.  
    dtype: int64
  9.  
    series_2=Series([1,2,3,4])
  10.  
    series_2
  11.  
    Out[148]: 
  12.  
    0    1
  13.  
    1    2
  14.  
    2    3
  15.  
    3    4
  16.  
    dtype: int64

创建包含多种数据类型的Series:

  1.  
    series_3=Series([1,2,'3',4,'a']) <span style="font-family: Arial, Helvetica, sans-serif;">#包含数字和字符串</span>
  2.  
    series_3
  3.  
    Out[150]: 
  4.  
    0    1
  5.  
    1    2
  6.  
    2    3
  7.  
    3    4
  8.  
    4    a
  9.  
    dtype: object #类型变成了字符串

2.Series索引

Series创建后会自动生成索引,默认从0开始

可以指定和修改索引

  1.  
    In [154]: series_4.index=['a','b','c']
  2.  
     
  3.  
    In [155]: series_4
  4.  
    Out[155]:
  5.  
    a 1
  6.  
    b 2
  7.  
    c 3

修改索引除了这里的直接修改还有一个reindex()方法。

3.Series增删改查

Series创建后可以对数据进行增删改查

3.1 增:

Series的add()方法是加法计算不是增加Series元素用的。

使用append连接其他Series

3.2删:

  1.  
    In [162]: series_4.drop('a')
  2.  
    Out[162]:
  3.  
    b 2
  4.  
    c 3
  5.  
    dtype: int64

3.3 改:

  1.  
    In [170]: series_4['a']=4
  2.  
     
  3.  
    In [171]: series_4
  4.  
    Out[171]:
  5.  
    a 4
  6.  
    b 2
  7.  
    c 3
  8.  
    dtype: int64

3.4 查:

通过索引查单值

  1.  
    In [172]: series_4['a']
  2.  
    Out[172]: 4

通过索引序列查多值:

  1.  
    series_4[['a','b']]
  2.  
    Out[174]:
  3.  
    a 4
  4.  
    b 2
  5.  
    dtype: int64

通过布尔类型索引筛选:

  1.  
    In [175]: series_4[series_4>2]
  2.  
    Out[175]:
  3.  
    a 4
  4.  
    c 3
  5.  
    dtype: int64

通过位置切片和标签切片查询数据:

  1.  
    series_4
  2.  
    Out[194]:
  3.  
    a 4
  4.  
    b 2
  5.  
    c 3
  6.  
    dtype: int64
  7.  
     
  8.  
    series_4[:2]
  9.  
    Out[195]:
  10.  
    a 4
  11.  
    b 2
  12.  
    dtype: int64
  13.  
     
  14.  
    series_4['a':'c']
  15.  
    Out[196]:
  16.  
    a 4
  17.  
    b 2
  18.  
    c 3
  19.  
    dtype: int64

4.通过字典创建Series

  1.  
    series_5=Series({'a':1,'b':2,'c':3})
  2.  
     
  3.  
    series_5
  4.  
    Out[201]:
  5.  
    a 1
  6.  
    b 2
  7.  
    c 3
  8.  
    dtype: int64

Series 入门(创建和增删改查)的更多相关文章

  1. Android(java)学习笔记245:ContentProvider使用(银行数据库创建和增删改查的案例)

    1. Android的四大组件: (1)Activity  用户交互的UI界面 (2)Service  后台运行的服务 (3)BroadcastReceiver 广播接收者 (4)ContentPro ...

  2. Android(java)学习笔记189:ContentProvider使用(银行数据库创建和增删改查的案例)

    1. Android的四大组件: (1)Activity  用户交互的UI界面 (2)Service  后台运行的服务 (3)BroadcastReceiver 广播接收者 (4)ContentPro ...

  3. Hibernate入门案例及增删改查

    一.Hibernate入门案例剖析: ①创建实体类Student 并重写toString方法 public class Student { private Integer sid; private I ...

  4. java springboot整合zookeeper入门教程(增删改查)

    java springboot整合zookeeper增删改查入门教程 zookeeper的安装与集群搭建参考:https://www.cnblogs.com/zwcry/p/10272506.html ...

  5. Oracle学习总结_day01_day02_表的创建_增删改查_约束

    本文为博主辛苦总结,希望自己以后返回来看的时候理解更深刻,也希望可以起到帮助初学者的作用. 转载请注明 出自 : luogg的博客园 谢谢配合! 更新: SELECT * FROM (SELECT R ...

  6. yii2-basic后台管理功能开发之二:创建CRUD增删改查

    昨天实现了后台模板的嵌套,今天我们可以试着创建CRUD模型啦 刚开始的应该都是“套用”,不再打算细说,只把关键的地方指出来. CRUD即数据库增删改查操作.可以理解为yii2为我们做了一个组件,来实现 ...

  7. MVC 入门 自动生成 增删改查所有功能

    MVC现在版本已经是5了   EF现在最新的应该是6.0.2了 开发工具是 Visual Studio2013 数据库是 SQL Server 2012 这些需要.NET Framework4.5 的 ...

  8. MyBatis入门案例、增删改查

    一.MyBatis入门案例: ①:引入jar包 ②:创建实体类 Dept,并进行封装 ③ 在Src下创建大配置mybatis-config.xml <?xml version="1.0 ...

  9. mysql-3 数据表的创建、增删改查

    1.创建数据表 通用语法:CREATE TABLE table_name (column_name column_type); CREATE TABLE IF NOT EXISTS `csj_tbl` ...

随机推荐

  1. macos 下安装virtualenv,virtualenvwrapper,然后在pycharm中正常配置方法日志

    1.安装virtualenv或virtualenvwrapper pip install virtualenv pip install virtualenvwraper 注意pip的版本号(查看 pi ...

  2. Jetbrains 2018 等系列软件激活破解除去黄色警告框方法(含多个平台)

    现在以IDEA 2018软件在windows为例进行讲解破解方法,其它软件及其在不同平台的破解方法原理 大同小异,有需要的有兴趣的可以尝试一下. 最近更新了Intellij IDEA到2018.1.5 ...

  3. 条件随机场之CRF++源码详解-预测

    这篇文章主要讲解CRF++实现预测的过程,预测的算法以及代码实现相对来说比较简单,所以这篇文章理解起来也会比上一篇条件随机场训练的内容要容易. 预测 上一篇条件随机场训练的源码详解中,有一个地方并没有 ...

  4. jax-rs示例

    compile 'org.glassfish.jersey.core:jersey-client:2.9.1' @Path("/{appId}/{env}/downloadSDK" ...

  5. Window环境下,PHP调用Python脚本

    参考 php调用python脚本*** php 调用 python脚本的方法 解决办法:php提供了许多调用其他脚本或程序的方法,比如exec/system/popen/proc_open/passt ...

  6. Quartz配置

    1. Quartz主要配置 属性名称 是否必选 类型 默认值 说明 org.quartz.scheduler.instanceName 否 String QuartzScheduler Schedul ...

  7. adb monkey测试 命令

    adb shell monkey -p cn.com.linktrust.als.ipad 3500 LOWED_PACKAGE [-p ALLOWED_PACKAGE] ...] [-c MAIN_ ...

  8. php 解析HTTP协议六种请求方法,get,head,put,delete,post有什么区别

    GET: 请求指定的页面信息,并返回实体主体.HEAD: 只请求页面的首部.POST: 请求服务器接受所指定的文档作为对所标识的URI的新的从属实体.PUT: 从客户端向服务器传送的数据取代指定的文档 ...

  9. linux最大进程数、最大打开文件数

    ulimit 是一种 linux 系统的内键功能,它具有一套参数集,用于为由它生成的 shell 进程及其子进程的资源使用设置限制.本文将在后面的章节中详细说明 ulimit 的功能,使用以及它的影响 ...

  10. html5中页面拨打电话的方式

    <a href="tel:18688888888">拨号</a> <a href="sms:18688888888">发短信 ...