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. P2789 直线交点数

    P2789 直线交点数分成两种情况,一种是平行直线,一种是自由直线,在自由直线中可以存在平行直线,但是不能和第一组的直线平行.自由直线和平行直线的交点是i*(n-i). #include<ios ...

  2. bzoj3693: 圆桌会议 二分图 hall定理

    目录 题目链接 题解 代码 题目链接 bzoj3693: 圆桌会议 题解 对与每个人构建二分,问题化为时候有一个匹配取了所有的人 Hall定理--对于任意的二分图G,G的两个部分为X={x1,x2,- ...

  3. 喵哈哈村的魔法考试 Round #18 (Div.2) 题解

    喵哈哈村的古怪石碑(一) 题解:暴力check一下是等比数列还是等差数列,然后输出答案即可.注意如果数据范围是1e9的话,就要快速幂了. 代码: #include <cstdio> #in ...

  4. scrollView 刷新显示在中间的问题

    scrollView问题 打开activity之后 屏幕初始位置不是顶部 而是在中间 也就是scroll滚动条不在上面 而是在中间 楼主你好,我大概是和你遇见了同样的问题,你可以灵活处理一下,不要去管 ...

  5. float:浮点型double:双精度实型decimal:数字型单精度浮点数(Single)双精度浮点数(double)

        单精度浮点数(Single) 双精度浮点数(double)       Decimal为SQL Server.MySql等数据库的一种数据类型,不属于浮点数类型,可以在定义时划定整数部分以及小 ...

  6. Cassandra的数据模型的理解

           Cassandra属于NoSQL数据库,NoSQL和传统关系型数据库不同,NOSQL偏好数据冗余,因为NoSQL一般无法做表关联查询. (1) keySpace 基本上可以将Keyspa ...

  7. ThinkPhp 使用PhpExcel导出导入多语言文件

    在ThinkPHP 里已经实现了多语言功能,只要在指定的目录下创建对应的语言文件并填充内容,即可实现多语言功能 而多语言的翻译却是一个很麻烦的事情,因为客户特定的行业问题导致我们翻译可能是不准确的 于 ...

  8. Web 安全 之 OpenSSL

    什么是OpenSSL协议? SSL(Secure SocketLayer,安全套接层)协议是使用最为普遍网站加密技术,用以保障在Internet上数据传输之安全,利用数据加密(Encryption)技 ...

  9. 在Centos6或者7上安装Kafka最新版

    一.官网 http://kafka.apache.org/downloads.html 二.Kafka简介 Kafka是由Apache软件基金会开发的一个开源流处理平台,由Scala和Java编写.K ...

  10. Java 迭代器综述

    一.摘要 迭代器模式是与集合共生共死的.一般来说.我们仅仅要实现一个容器,就须要同一时候提供这个容器的迭代器.使用迭代器的优点是:封装容器的内部实现细节,对于不同的集合,能够提供统一的遍历方式,简化c ...