Series是一种类似于一维数组的对象,是由一维数据(各种Numpy数据类型)以及一组与之相关的数据标签(即索引)组成。
In [1]: from pandas import Series In [2]: import pandas as pd In [3]: ser = Series([1,2,3,-1,-2]) In [4]: ser
Out[4]:
0 1
1 2
2 3
3 -1
4 -2
dtype: int64
Series的字符串表现形式为:索引在左边,值在右边。由于没有为数据指定索引,会自动创建一个0到N-1(N为数据的长度)的整数型索引。可以通过Series的values和index属性获取其数组表示形式和索引对象。
In [8]: ser.values
Out[8]: array([ 1, 2, 3, -1, -2]) In [9]: ser.index
Out[9]: RangeIndex(start=0, stop=5, step=1)
也可以创建对各个数据点进行标记的索引。
In [10]: ser1 = Series([2,3,-4,-5],index = ['a','b','c','d']) In [11]: ser1
Out[11]:
a 2
b 3
c -4
d -5
dtype: int64 In [12]: ser1.index
Out[12]: Index([u'a', u'b', u'c', u'd'], dtype='object')
与普通的Numpy数组相比,可以通过索引的方式选取Series中的单个或一组值。
In [13]: ser1['a']
Out[13]: 2 In [14]: ser1['b'] = 5 In [15]: ser1
Out[15]:
a 2
b 5
c -4
d -5
dtype: int64
进行算数运算都会保留索引和值之间的连接。
In [19]: ser1
Out[19]:
a 2
b 5
c -4
d -5
dtype: int64 In [20]: ser1 * 2
Out[20]:
a 4
b 10
c -8
d -10
dtype: int64 In [21]: ser1[ser1 > 0]
Out[21]:
a 2
b 5
dtype: int64
还可以将Series看成是一个定长的有序字典,因为它是索引值到数据值的一个映射。
In [22]: 'a' in ser1
Out[22]: True In [23]: 'e' in ser1
Out[23]: False
如果数据被存放在一个Python字典中,可以直接通过这个字典来创建Series。
In [32]: data = {'Tom':100,'Alia':98,'Abel':80} In [33]: datas = Series(data) In [34]: datas
Out[34]:
Abel 80
Alia 98
Tom 100
dtype: int64
如果只传入一个字典,则结果Series中的索引就是源字典的键。
In [35]: states = ['Call','Tom','Alia','Abel'] In [36]: sim = Series(datas,index=states) In [37]: sim
Out[37]:
Call NaN
Tom 100.0
Alia 98.0
Abel 80.0
dtype: float64
在pandas中,NaN表示缺失值,pandas的isnull和notnull函数用于检测缺失数据。
In [38]: pd.isnull(sim)
Out[38]:
Call True
Tom False
Alia False
Abel False
dtype: bool In [39]: pd.notnull(sim)
Out[39]:
Call False
Tom True
Alia True
Abel True
dtype: bool
Series对象本身及其索引都有一个name属性,该属性跟pandas其他的关键功能关系非常密切。
In [42]: sim.name = 'student' In [43]: sim.index.name = 'class' In [44]: sim
Out[44]:
class
Call NaN
Tom 100.0
Alia 98.0
Abel 80.0
Name: student, dtype: float64
Series的更多相关文章
-
利用Python进行数据分析(8) pandas基础: Series和DataFrame的基本操作
一.reindex() 方法:重新索引 针对 Series 重新索引指的是根据index参数重新进行排序. 如果传入的索引值在数据里不存在,则不会报错,而是添加缺失值的新行. 不想用缺失值,可以用 ...
-
利用Python进行数据分析(7) pandas基础: Series和DataFrame的简单介绍
一.pandas 是什么 pandas 是基于 NumPy 的一个 Python 数据分析包,主要目的是为了数据分析.它提供了大量高级的数据结构和对数据处理的方法. pandas 有两个主要的数据结构 ...
-
数据分析(8):Series介绍
Series Series由一组数据及索引组成 索引 采用默认索引 data = pd.Series([4, 3, 2, 1]) 自定义索引 data = pd.Series([4, 3, 2, 1] ...
-
POJ 3233Matrix Power Series
妈妈呀....这简直是目前死得最惨的一次. 贴题目: http://poj.org/problem?id=3233 Matrix Power Series Time Limit: 3000MS Mem ...
-
highchart 添加新的series
code: <!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" c ...
-
C# Chart控件,chart、Series、ChartArea曲线图绘制的重要属性
http://blog.sina.com.cn/s/blog_621e24e20101cp64.html 为避免耽误不喜欢这种曲线图效果的亲们的时间,先看一下小DEMO效果图: 先简单说一下,从图中可 ...
-
pandas 学习(1): pandas 数据结构之Series
1. Series Series 是一个类数组的数据结构,同时带有标签(lable)或者说索引(index). 1.1 下边生成一个最简单的Series对象,因为没有给Series指定索引,所以此时会 ...
-
(转)LSTM NEURAL NETWORK FOR TIME SERIES PREDICTION
LSTM NEURAL NETWORK FOR TIME SERIES PREDICTION Wed 21st Dec 2016 Neural Networks these days are th ...
-
Time Series data 与 sequential data 的区别
It is important to note the distinction between time series and sequential data. In both cases, the ...
-
survey on Time Series Analysis Lib
(1)I spent my 4th year Computing project on implementing time series forecasting for Java heap usage ...
随机推荐
-
(转)UIWebView全部API学习
网上找的收藏一下 http://www.myexception.cn/web/1888974.html 最生僻的API做了下划线以及粗体的标注.百度上查了全是拷贝的同一份代码,而且只有代码没有解释,很 ...
-
初识hibernate小案例
使用hibernate前需要导入相关JAR包. 1.它可以接受词文法语言描述,并能产生识别这些语言的语句的程序 2.是一个Java的XML API,类似于jdom,用来读写XML文件的 3.支持注解配 ...
-
关于C# winform中使用pictureBox显示大红叉的原因
pictureBox的关于image的属性有三 个,InitalImage,Image,ErrorImage分别表示picturebox的默认初始图片,当前可以设置的图片和出错之后默认显示的图 片,而 ...
-
android生成json
package com.example.zzzz; import org.json.JSONArray; import org.json.JSONException; import org.json. ...
-
POJ 3685
Matrix Time Limit: 6000MS Memory Limit: 65536K Total Submissions: 4428 Accepted: 1102 Descriptio ...
-
Node之express
Express 是一个简洁.灵活的 node.js Web 应用开发框架, 它提供一系列强大的特性,帮助你创建各种 Web 和移动设备应用. 如何安装: npm install -g express ...
-
CSS3立体文字最佳实践
前端开发whqet,csdn,王海庆,whqet,前端开发专家 上一篇的<纯CSS3文字效果推荐>文章里面推荐了8款纯css实现的文字效果,当中3d文字效果最为流行,限于篇幅只展示了其3D ...
-
CMD(SA400 Command)
一.CMD模糊查询: 命令行键入:CRT,WRK,ADD,CPY,DSP,CHG,CLR,FND,RTV*等. 二.CMD分类查询: 命令行键入:GO CMD xxx eg:GO CMD FILE,G ...
-
windows常用快捷键和指令
快捷键: Ctrl+鼠标滚轮:更改图标大小(桌面).缩放(开始屏幕) Ctrl+A:选择所有 Ctrl+C:复制 Ctrl+E:选择搜索框(资源管理器) Ctrl+N:新窗口(资源管理器) Ctrl+ ...
-
MyBatis中使用#和$书写占位符有什么区别?
#将传入的数据都当成一个字符串,会对传入的数据自动加上引号:$将传入的数据直接显示生成在SQL中.注意:使用$占位符可能会导致SQL注射攻击,能用#的地方就不要使用$,写order by子句的时候应该 ...