pandas---Series基础使用
来源:互联网 发布:mac软件下载网站排名 编辑:程序博客网 时间:2024/05/19 03:25
导入pandas
import numpy as npimport pandas as pdfrom pandas import Series,DataFrame
pandas基本数据结构
- pandas中主要有两种数据结构,分别是:Series和DataFrame。
- Series:一种类似于一维数组的对象,是由一组数据(各种NumPy数据类型)以及一组与之相关的数据标签(即索引)组成。仅有一组数据也可以产生简单的Series对象。注意:Series中的索引值是可以重复的。
- DataFrame:一个表格型的数据结构,包含有一组有序的列,每列可以是不同的值类型(数值,字符串,布尔型等),DataFrame即有行索引也有列索引,可以被看做是由Series组成的字典。
Series的创建方式
通过一维数组去创建
arr = np.array([1,2,3,4])ser1 = Series(arr)ser1.values #获得值组成的一维数组ser1.index #获得索引值的描述,start,stop,stepser1.index=['a', 'b','c','d'] #更改索引值ser1['b'] # 索引形式获取某值ser1[1] # 下标形式获取某值
直接创建series数组
ser2 = Series([99,100,98,10],index=['a', 'b','c','d'])ser22 = Series(data=[89,87,86],dtype=np.float64,index=[u'数学',u'语文',u'英语'])
通过字典形式创建
dict1 = {'a':1,'b':2,'c':3,'d':4}ser3 = Series(dict1) # 字典的键对应ser的索引,字典的值对应ser的数据
注意:
1. 索引可以创建时赋值,也可以后期赋值 2. 索引可以重复,下标不能重复 3. 字典本身键和值有对应关系,字典的键不能重复
Series值的获取
- Series值的获取主要有以下两种方式:
1.通过方括号+索引的方式读取对应的索引的数据,有可能返回多条数据
2. 通过方括号+下标的方式读取对应的下标值的数据,下标值取值的范围为:[0,len(Series.values)];另外下标值也可以是负数,表示从右往左获取数据 - Series获取多个值的方式乐视NumPy中的ndarray的切片操作,通过方括号+下标值/索引值+冒号(:)的形式来截取series对象中的一部分数据
注意:
在获取多个值的时候,
通过下标形式加冒号获取,和切片一样是左闭右开区间,
通过索引值加冒号获取,是获取一个完全闭合区间值
Series的运算
- NumPy中的数组运算,在Series中都保留了,均可以使用,并且Series进行数组运算的时候,索引与值之间的映射关系不会发生改变。
- 注意:其实在操作Series的时候,基本上可以把Series看出NumPy中的ndarray数组来进行操作。ndarray数组的绝大多数操作都可以应用到Series上。
ser3+1ser3-100ser3*100ser3/100ser3%100ser3//100np.abs(ser3) ## numpy中的通用函数在Series中是支持的
Series缺失值检测
定义新的索引值时,对于不存在的索引和存在的索引的缺省补齐操作
ss = Series({'a':1,'b':2,'c':3,'d':4,'e':5})ss_index = ['a','bb','cc','d','e','f','g','h','i']ss_new = Series(ss,index=ss_index)
a 1.0bb NaNcc NaNd 4.0e 5.0f NaNg NaNh NaNi NaNdtype: float64
注意:自动对齐:键值关系不会发生改变。如果键无法对应,返回NaN值填充
对数组中的NaN值过滤
##过滤NaN值pd.isnull(ss_new) #返回布尔值的数组,NaN 返回Truepd.notnull(ss_new) #返回布尔值的数组 Not NaN 返回Truess_new[pd.notnull(ss_new)]
注意:pandas中的isnull和notnull两个函数可以用于在Series中检测缺失值,这两个函数的返回值时一个布尔类型的Series
两个缺省补齐的数组相互操作时,按照索引对应关系进行操作
s1 = Series([1,2,3],index=['a','b','c'])s2 = Series([10,20,30],index=['b','a','c','d'])s1 + s2
注意:按照索引的形式找到与之相匹配的数据进行对应操作
Series别名
- name属性
s1.name=u'价格' ## 数据名称标签s1.index.name=u'产品' ## 索引名称标签
本文来自北风网的学习总结
阅读全文
0 0
- pandas---Series基础使用
- Pandas基础复习-Series
- Pandas库的使用--Series
- Pandas Series
- pandas: series
- Pandas Series
- pandas-Series
- Pandas-Series
- 使用Pandas的Series方法绘制图像
- Python pandas基础: Series和DataFrame的简单介绍
- pandas基础:Series、和NumPy里的random.x()
- pandas基础: Series和DataFrame的简单介绍
- pandas基础使用
- 4.pandas基础使用
- pandas总结(一)——Series的使用
- 使用python计算方差——pandas.series.std()
- pandas-series总结
- python pandas series
- 关于responsbody
- [数学杂题]BZOJ 2111—— [ZJOI2010]Perm 排列计数
- guava做本地缓存
- annotation-@RequestBody-接收前端传来的json
- 关于onclick = “函数()”中不能调用window.onload = function(){}中调用function 函数(){}
- pandas---Series基础使用
- 注释转换
- 统计学习方法(第三章)k近邻算法
- 初级web api的设计(二)——防重放攻击
- 神经网络 tensorflow教程 2.2 下载MNIST 数据集 (自动版)
- 统计学习方法总结、应用对比
- 《Android学习笔记》利用Application操作全局变量
- 计算一下pytorch中Resnet34模型前传一次所需要的时间
- tf.reshape()的用法与理解