pandas的数据结构之series
Pandas的数据结构
1、Series
Series是一种类似于一维数组的对象,由下面两个部分组成:
- index:相关的数据索引标签
- values:一组数据(ndarray类型)
series的创建方法:
1.直接传入一个列表
s1 = Series([1,2,3,4])
s1
0 1
1 2
2 3
3 4
dtype: int64
查看series对象的属性:
s1.index # 索引
s1.values
还可以带上index参数,表示里这个参数作为索引
s2 = Series(data=[1,2,3,4],index=list('abcd'))
2.用字典的方式去创建
Series({'a':1,'b':2,'c':3})
a 1
b 2
c 3
dtype: int64
series的索引和切片
显式索引:
- 使用index中的元素作为索引值
- 使用.loc['索引名'](推荐)
s1 = Series(data=[150,150,150,300],index=list('语数外综'))
s1
语 150
数 150
外 150
综 300
dtype: int64
s1.loc[['语','外']] # 同一个维度 取多个值 要用中括号括起来
s1.loc[['语','语']]
s1.loc[['综','语']]
s1.loc['语':'外'] # 文字索引 切片 开始位置和结束位置都能取到
s2 = Series(data=[1,2,3,4,5,6],index=list('abcdef'))
s2
s2.loc['b':'e':2] # 也可以跳着取 2代表的是step
# s2.loc['e':'b':-1] # 注意 如果想倒着取 前面切片的属性 也得是倒着的
隐式索引:
- 使用整数作为索引值
- 使用.iloc[ 索引号 ](推荐)
s2.iloc[0]
# 整数数组形式的索引 通过iloc同样可以使用
s2.iloc[[2,2,2,2,2]]
s2.iloc[[3,2,1,0]] s2.loc['a':'c']
s2.iloc[0:3] # 显示索引 切片的时候是 包括最后一个的 隐式索引 不包括最后一个
series的常用属性和方法
可以把Series看成一个定长的有序字典
可以通过shape,size,index,values等得到series的属性
s2.head() # 如果不传参数 默认展示头5个内容
s2.tail() # 查看最后的几个
Series中如果值是None,会被转成NaN。并且计算时会被当成0(ndarray不会)
可以使用pd.isnull(),pd.notnull(),或自带isnull(),notnull() 函数检测值为None或NaN的数据
另外 series对象有一个name属性可以用来区分不同的series
series的运算
(1) 适用于numpy的数组运算也适用于Series
s2
a 1
b 2
c 3
d 4
e 5
f 6
dtype: int64 #s2+2
s2*2
a 2
b 4
c 6
d 8
e 10
f 12
dtype: int64
(2) Series之间的运算
- 在运算中自动对齐不同索引的数据
- 如果索引不对应,则补NaN(值和NaN相加的结果还是NaN,如果想要让NaN的值当作0处理,可以用s1.add(s2,fill_value=0)来处理)
pandas的数据结构之series的更多相关文章
- pandas 的数据结构(Series, DataFrame)
Pandas 讲解 Python Data Analysis Library 或 pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的. Pandas 纳入了大量库和一些标 ...
- Python数据分析之pandas基本数据结构:Series、DataFrame
1引言 本文总结Pandas中两种常用的数据类型: (1)Series是一种一维的带标签数组对象. (2)DataFrame,二维,Series容器 2 Series数组 2.1 Series数组构成 ...
- Pandas的使用(3)---Pandas的数据结构
Pandas的使用(3) Pandas的数据结构 1.Series 2.DataFrame
- Pandas之数据结构
pandas入门 由于最近公司要求做数据分析,pandas每天必用,只能先跳过numpy的学习,先学习大Pandas库 Pandas是基于Numpy构建的,让以Numpy为中心的应用变得更加简单 pa ...
- pandas 的数据结构Series与DataFrame
pandas中有两个主要的数据结构:Series和DataFrame. [Series] Series是一个一维的类似的数组对象,它包含一个数组数据(任何numpy数据类型)和一个与数组关联的索引. ...
- pandas中数据结构-Series
pandas中数据结构-Series pandas简介 Pandas是一个开源的,BSD许可的Python库,为Python编程语言提供了高性能,易于使用的数据结构和数据分析工具.Python与Pan ...
- pandas的数据结构介绍(一)—— Series
pandas两个主要数据结构之一--Series 类似于一维数组,由一组数据和与其相关的一组索引组成 obj = Series([4, 7, -5, 3], index=['d', 'b', 'a', ...
- Pandas 的数据结构
Pandas的数据结构 导入pandas: 三剑客 from pandas import Series,DataFrame import pandas as pd import numpy as np ...
- pandas的数据结构
要使用pandas,需要熟悉它的两个主要的数据结构,Series和DataFrame. Series series是一种类似于以为数组的对象,它由一组数据(各种numpy的数据类型)以及一组与之相关的 ...
随机推荐
- ADC裸机程序
硬件平台:JZ2440 实现功能:通过采集触摸屏ADC的电压值,推算触摸xy坐标 start.s init.c nand.c interrupt.c uart.c uart.h my_stdio.c ...
- docker容器的操作
容器操作 1.查看本地容器 docker ps -a # 查看所有容器 docker ps # 查看所有正在运行的容器 2.容器的创建与启动 方法一:两步完成(强烈推荐方法)(1)创建 docker ...
- 初学Vue 遇到Module not found:Error:Can`t resolve 'less-loader' 问题
学习vue时,导入一个子组件时遇到Module not found:Error:Can`t resolve 'less-loader' 问题,实际上时在子组件中的样式里加了这么个代码 <styl ...
- JMeter-充值-生成随机数
1.随机数,orderId每次需要变化,需要用到随机数 验证生成的随机数:
- appium环境搭建-运行
appium是测试移动端的测试工具 首先要下载手机模拟器,或者连接真机.我用的夜神模拟器.安装打开它.安装这个有很高的兼容性要求,我也是小白,摸索了三天才弄出来 一.原理如图: 二.需要安装的软件: ...
- js跨域交互之jsonp - 看完就能让你了解jsonp原理 (原)
跨域? 跨域的安全限制都是对浏览器端来说的,服务器端是不存在跨域安全限制的. 同源策略? 一般来说 a.com 的网页无法直接与 b.com的服务器沟通, 浏览器的同源策略限制从一个源加载的文档或脚本 ...
- JavaScript中的BOM和DOM
javascript组成: 1. ECMAScript 基本语法. 2. BOM (浏览器对象模型) 3. DOM (文档对象模型) 简单的说就是 BOM是浏览器对象模型,用来获取或设置浏览器的属性. ...
- Beta阶段敏捷冲刺日志的集合贴
Beta阶段冲刺前计划与安排:http://www.cnblogs.com/software-teamwork/p/9060118.html Day1(5.22):https://www.cnblog ...
- Linux环境变量具体内容介绍
在Linux中,环境变量是一个很重要的概念.环境变量可以由系统.用户.Shell以及其他程序来设定. 变量就是一个可以被赋值的字符串,赋值范围包括数字.文本.文件名.设备以及其他类型的数据. 下面的例 ...
- 【数据结构】B-Tree, B+Tree, B*树介绍 转
[数据结构]B-Tree, B+Tree, B*树介绍 [摘要] 最近在看Mysql的存储引擎中索引的优化,神马是索引,支持啥索引.全是浮云,目前Mysql的MyISAM和InnoDB都支持B-Tre ...