pandas两个主要数据结构之一——Series

  • 类似于一维数组,由一组数据和与其相关的一组索引组成
obj = Series([4, 7, -5, 3], index=['d', 'b', 'a', 'c'])
print(obj)
'''
d 4
b 7
a -5
c 3
dtype: int64
'''
  • 可通过索引,选取单个或多个值
tmp = ['a', 'b']
print(obj[tmp])
"""
a -5
b 7
dtype: int64
"""
  • 也可根据布尔型数组进行运算
print(obj[obj > 0])
print(obj*2)
"""
d 4
b 7
c 3
dtype: int64
d 8
b 14
a -10
c 6
dtype: int64
"""
  • 还可以看作是定长的有序字典
data = {'a': 1, 'b': 2, 'c': 3, 'd': -1}
obj2 = Series(data) # 通过字典直接生成Series
print(obj2)
"""
a 1
b 2
c 3
d -1
dtype: int64
""" t = 'a' in obj2 # 判断‘a’是否为obj2索引
print(t)
"""
True
"""
  • 生成Series时,无对应值自动填充为 NaN,且Series对数据会根据索引自动对齐
# 如果 obj2 = Series(data, index = ...) 中,index对应无对应值,则其填充为NaN
index = ['a', 'e', 'b', 'c', 'd'] # 多了一个‘e’,并且位置不同(在生成时会自动对齐)
obj3 = Series(data, index=index)
print(obj3)
"""
a 1.0
e NaN
b 2.0
c 3.0
d -1.0
dtype: float64
""" # 数据是否缺失可用isnull检测
print(obj3.isnull())
"""
a False
e True
b False
c False
d False
dtype: bool
"""
  • Series可进行运算,不过与NaN运算结果始终为NaN
obj4 = Series({'a': 1, 'b': 2, 'd': -1, 'e': 5})
print(obj4)
print(obj3+obj4)
"""
a 1
b 2
d -1
e 5
dtype: int64 # obj4 中无‘c’索引,其默认为NaN
# 运算完后会自动排序
a 2.0
b 4.0
c NaN
d -2.0
e NaN
dtype: float64
"""
  • Series本身及其索引均有一个name属性
obj4.name = 'obj4'
obj4.index.name = 'index'
print(obj4)
"""
index
a 1
b 2
d -1
e 5
Name: obj4, dtype: int64
"""
  • Series索引可通过赋值方式就地修改
obj4.index = [1, 2, 3, 4] # 索引个数要相同,且更改后索引名会清空
print(obj4)
"""
1 1
2 2
3 -1
4 5
Name: obj4, dtype: int64
"""

pandas的数据结构介绍(一)—— Series的更多相关文章

  1. pandas的数据结构之series

    Pandas的数据结构 1.Series Series是一种类似于一维数组的对象,由下面两个部分组成: index:相关的数据索引标签 values:一组数据(ndarray类型) series的创建 ...

  2. Pandas之数据结构

    pandas入门 由于最近公司要求做数据分析,pandas每天必用,只能先跳过numpy的学习,先学习大Pandas库 Pandas是基于Numpy构建的,让以Numpy为中心的应用变得更加简单 pa ...

  3. Python pandas 0.19.1 Intro to Data Structures 数据结构介绍 文档翻译

    官方文档链接http://pandas.pydata.org/pandas-docs/stable/dsintro.html 数据结构介绍 我们将以一个快速的.非全面的pandas的基础数据结构概述来 ...

  4. Python数据分析之pandas基本数据结构:Series、DataFrame

    1引言 本文总结Pandas中两种常用的数据类型: (1)Series是一种一维的带标签数组对象. (2)DataFrame,二维,Series容器 2 Series数组 2.1 Series数组构成 ...

  5. pandas中数据结构-Series

    pandas中数据结构-Series pandas简介 Pandas是一个开源的,BSD许可的Python库,为Python编程语言提供了高性能,易于使用的数据结构和数据分析工具.Python与Pan ...

  6. 读书笔记一、pandas数据结构介绍

    pandas数据结构介绍 主要两种数据结构:Series和DataFrame.   Series   Series是一种类似于一维数组的对象,由一组数据(各种NumPy数据类型)+数据标签(即索引)组 ...

  7. 02. Pandas 1|数据结构Series、Dataframe

    1."一维数组"Series Pandas数据结构Series:基本概念及创建 s.index  . s.values # Series 数据结构 # Series 是带有标签的一 ...

  8. Pandas 0 数据结构Series

    # -*- encoding:utf-8 -*- # Copyright (c) 2015 Shiye Inc. # All rights reserved. # # Author: ldq < ...

  9. Pandas 的数据结构

    Pandas的数据结构 导入pandas: 三剑客 from pandas import Series,DataFrame import pandas as pd import numpy as np ...

随机推荐

  1. Day008 数组的使用

    数组的使用 For-Each循环 数组作方法入参 数组作返回值 用普通for循环遍历 int[] arrays={1,2,3,4,5}; //打印全部的数组元素 for (int i = 0; i & ...

  2. ElasticSearch7.10.0入门学习

    ElasticSearch完成最关键的一个功能就是 大数据搜索 官网:https://www.elastic.co/cn/elasticsearch/ 简介 Elasticsearch 是一个分布式全 ...

  3. upload

    File saveDir=new File("D:/Test/UPLOAD"); if(!saveDir.isDirectory()){ saveDir.mkdirs(); } F ...

  4. druid-spring-boot-starter的配置

    #数据源基本信息 spring: datasource: druid: username: root password: 123456 url: jdbc:mysql://localhost:3306 ...

  5. 【Mybtais】Mybatis 插件 Plugin开发(一)动态代理步步解析

    需求: 对原有系统中的方法进行'拦截',在方法执行的前后添加新的处理逻辑. 分析: 不是办法的办法就是,对原有的每个方法进行修改,添加上新的逻辑:如果需要拦截的方法比较少,选择此方法到是会节省成本.但 ...

  6. Gentoo 后的几个细节的完善

    Gentoo 后的几个细节的完善 目录 Gentoo 后的几个细节的完善 细节一:引导分区与 cdrom 开机正确挂载 细节二:可预见的命名规则的网络接口名称改为传统的 eth0 细节三:为管理员用户 ...

  7. 使用C#实现一个PPT遥控器

    说明 本项目参考了 https://github.com/yangzhongke/PhoneAsPrompter 项目来完成实现,并对其进行了一些修改完善. 完整代码可以到 https://githu ...

  8. vue3.0API详解

    Vue 3.0 于 2020-09-18 发布了,使用了 Typescript 进行了大规模的重构,带来了 Composition API RFC 版本,类似 React Hook 一样的写 Vue, ...

  9. cmake和make

    学计算机的,在写代码的时候,IDE安装好,环境按着教程配置好,就直接代码了,编辑器的具体原理只是一知半解,现在来系统学习一下,为了方便以后学习HElib! make和cmake 写程序大体步骤为: 1 ...

  10. SwiftUI 简明教程之属性包装器

    本文为 Eul 样章,如果您喜欢,请移步 AppStore/Eul 查看更多内容. Eul 是一款 SwiftUI & Combine 教程 App(iOS.macOS),以文章(文字.图片. ...