对Series的理解也源于对其相关的代码操作,本次仅贴一些代码来加深理解以及记忆

 import pandas as pd
import numpy as np
s = pd.Series(np.random.randn(5),index=['a','b','c','d','e']) # index添加行索引
s
# 输出
a 1.752127
b 0.127374
c 0.581114
d 0.466064
e -1.493042
dtype: float64 s.index
# 输出 Index(['a', 'b', 'c', 'd', 'e'], dtype='object') s = pd.Series(np.random.randn(5)) # 自动添加索引
s
# 输出
0 0.209798
1 0.791759
2 -1.352022
3 0.164453
4 0.647989
dtype: float64 d = {'a':0.,'b':1.,'d':3} # Series通过字典形式创建表,字典中的键就被当成行索引
s = pd.Series(d, index=list('abcd')) # 没有的索引赋值为NaN
s
# 输出 Out[12]:
a 0.0
b 1.0
c NaN
d 3.0
dtype: float64 s = pd.Series(5,index=list('abcd')) # 每个索引对应的值相等
s
#输出
a 5
b 5
c 5
d 5
dtype: int64 s = pd.Series(np.random.randn(5)) # 通过随机数创建
s
#输出
0 -0.014250
1 0.990860
2 1.785053
3 -2.155324
4 -0.815233
dtype: float64 s[0] # 可以通过单个索引值读取对应的值
#输出 -0.014250144041201129 s[:3] # 可以通过索引范围读取对应的范围值
# 输出
0 -0.014250
1 0.990860
2 1.785053
dtype: float64 s[[1,3,4]] # 任意读取多个索引可以使用列表的形式
# 输出
1 0.990860
3 -2.155324
4 -0.815233
dtype: float64 np.sin(s) # 可以用numpy函数对Series创建的表中的数据进行一系列操作
# 输出
0 -0.014250
1 0.836498
2 0.977135
3 -0.833973
4 -0.727885
dtype: float64 s = pd.Series(np.random.randn(5),index=['a','b','c','d','e'])
s
#输出
a 1.127395
b 0.229895
c 0.161001
d 0.362886
e 0.203692
dtype: float64 s['a'] # 索引也可以是字符字符串
# 输出 1.1273946030373316 s['b']= 3 # 可以通过索引赋值操作改变表中的值
s
# 输出
a 1.127395
b 3.000000
c 0.161001
d 0.362886
e 0.203692
dtype: float64 s['g'] = 100 # 如果表中没有那个索引,通过索引的赋值将会自动添加到表的行尾
s
# 输出
a 1.127395
b 3.000000
c 0.161001
d 0.362886
e 0.203692
g 100.000000
dtype: float64 print(s.get('f')) # 也可以使用get函数读取索引对应的值,如果没有就返回默认的None
# 输出 None print (s.get('f',0)) # 也可以加自定义值的返回值
# 输出 0 s1 = pd.Series(np.random.randn(3),index=['a','c','e'])
s2 = pd.Series(np.random.randn(3),index=['a','d','e'])
print(f'{s1}\n\n{s2}')
# 输出
a -0.036147
c -1.466236
e -0.649153
dtype: float64 a 1.460091
d -0.788388
e 0.175337
dtype: float64 s1 + s2 # 通过Series创建的表也可以按照行相同索引对应的值相加,如果两表索引对应
# 不上就默认赋值NaN
# 输出
a 1.423945
c NaN
d NaN
e -0.473816
dtype: float64

pandas数据结构之Series笔记的更多相关文章

  1. pandas 学习(1): pandas 数据结构之Series

    1. Series Series 是一个类数组的数据结构,同时带有标签(lable)或者说索引(index). 1.1 下边生成一个最简单的Series对象,因为没有给Series指定索引,所以此时会 ...

  2. pandas数据结构:Series/DataFrame;python函数:range/arange

    1. Series Series 是一个类数组的数据结构,同时带有标签(lable)或者说索引(index). 1.1 下边生成一个最简单的Series对象,因为没有给Series指定索引,所以此时会 ...

  3. pandas数据结构之series操作

    阅读之前假定你已经有了python内置的list和dict的基础.这里内容几乎是官方文档的翻译版本.   概览: ​   原来的文档是在一个地方,那边的代码看起来舒服些   https://www.y ...

  4. pandas数据结构之DataFrame笔记

    DataFrame输出的为表的形式,由于要把输出的表格贴上来比较麻烦,在此就不在贴出相关输出结果,代码在jupyter notebook可以顺利运行代码中有相关解释用来加深理解方便记忆 import ...

  5. pandas数据结构之Panel笔记

    Panel创建的是三维的表 items:坐标轴0,索引对应的元素是一个DataFrame major_axis:坐标轴1,DataFrame里的行标签 minor_axis:坐标轴2,DataFram ...

  6. python之pandas学习笔记-pandas数据结构

    pandas数据结构 pandas处理3种数据结构,它们建立在numpy数组之上,所以运行速度很快: 1.系列(Series) 2.数据帧(DataFrame) 3.面板(Panel) 关系: 数据结 ...

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

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

  8. python数据分析之pandas库的Series应用

    一.pandas的数据结构介绍 1. Series 1.1 Series是由一种类似于一维数组的对象,它由一组数据以及一组与之相关的数据索引构成.仅由一组数据可产生最简单的Series. from p ...

  9. pandas教程1:pandas数据结构入门

    pandas是一个用于进行python科学计算的常用库,包含高级的数据结构和精巧的工具,使得在Python中处理数据非常快速和简单.pandas建造在NumPy之上,它使得以NumPy为中心的应用很容 ...

随机推荐

  1. 机器学习系列算法1:KNN

    思路:空间上距离相近的点具有相似的特征属性. 执行流程: •1. 从训练集合中获取K个离待预测样本距离最近的样本数据; •2. 根据获取得到的K个样本数据来预测当前待预测样本的目标属性值 三要素:K值 ...

  2. Spring —— @Async注解的使用

    参考文档 Spring Boot使用@Async实现异步调用:自定义线程池 Spring Boot使用@Async实现异步调用:ThreadPoolTaskScheduler线程池的优雅关闭

  3. Linux工程管理器——make

    一.定义 工程管理器,顾名思义,是指管理较多的文件 Make工程管理器也就是个“自动编译管理器”,这里的“自动”是指它能构根据文件时间戳自动发现更新过的文件而减少编译的工作量,同时,它通过读入Make ...

  4. django 2 ORM操作 ORM进阶 cookie和session 中间件

    ORM操作 ORM概念 对象关系映射(Object Relational Mapping,简称ORM)模式是一种为了解决面向对象与关系数据库存在的互不匹配的现象的技术. 简单的说,ORM是通过使用描述 ...

  5. Linux给力的Shell命令

    查看目录下面的所有目录 ls /dev/ -F |grep "/"   bus/    disk/    input/  说明: ls -F命令将文件和目录后面添加一个特定的符号; ...

  6. 005-tomcat日志体系

    一.概述 首先了解java的日志体系 在JDK1.4后,sun公司增加了一个包为java.util.logging,简称为jul,用以对抗log4j. 后续还有很多日志门面方案,但是tomcat使用了 ...

  7. Qt编写自定义控件39-导航标签

    一.前言 在很多菜单导航界面中,当单击了二级菜单或者三级菜单以后,顶部会显示带箭头或者其他标识的导航标签,可以单击该标签快速切换到对应的界面,也作为指示当前处于哪一级菜单下的界面,主要在WEB中大肆流 ...

  8. (二)UML之类图、接口、包

    一.概念 类图(Class Diagram): 类图是面向对象系统建模中最常用和最重要的图,是定义其它图的基础.类图主要是用来显示系统中的类.接口以及它们之间的静态结构和关系的一种静态模型. 类图的3 ...

  9. jenkins的slave/agent如何通过tcp端口和master建立连接

    Jenkins是master-slave/agent结构,可以通过代理把任务下发到各个agent/slave上去执行 如图,首先在master上开启代理配置,指定master上开启的tcp端口,以及和 ...

  10. Azure Web应用相关设置

    这里用来记录自己在工作中,在Azure Web应用中用到的配置 设置NodeJS版本 Azure Web应用默认的NodeJS版本是0.10.4,这个版本太低,不能满足实际的需要 参照下图修改,根据自 ...