panda核心数据结构
Series
Series是一维带标签的数组,数组里可以放任意的数据(整数、浮点数、字符串、python Object)等等
创建函数:
(1)s = pd.Series(data,index=index),其中index是一个列表,用来作为数据的标签,如果不指定索引,pandas自动分配整形的索引
(2)字典创建 s = pd.Series(dict,index = list('abcd')),创建的series对象的索引为字典的key
性质
Series对象的性质:
类ndarray对象
类dict对象
标签对齐操作

结论一:series对象可以直接使用ndarray对象方法


结论二:series对象可以像python字典对象一样操作

结论三:标签对齐,进行操作时,索引自动对应做处理,如果找不到对应值,则为NaN
DateFrame
DateFrame是二维带行标签和列标签的数组,可以把DateFrame想象成一个Excel表格或一个sql数据库的表格,还可以想象成一个series对象字典,它是pandas里最常用的数据结构
创建DateFrame对象
df = pd.DateFrame(data,index = index,columns = columns) 其中index是行标签,columns是列标签,data可以是下面的数据结构:
(1)由一维numpy数组,list,Series构成的字典
(2)二维numpy数组
(3)另外的DateFrame对象
字典方式创建:
(1)Series对象构成的字典方式创建:

(2)列表构成的字典方式创建

注意:由series对象构成的字典,series元素可以不相等,但列表构成的字典,列表元素必须相等,不然会报错
列表创建
(1)列表中元素由元组构成

(2)列表中元素由字典构成

从Series创建DataFrame

注意:series为一维数组,故列索引只能有一列,不然会报错
性质
先创建一个数组

(1)查找


(2)赋值

(3)删除操作

(4)添加

(5)指定删除并获取结果

(6)指定位置插入

(7)assign在原来对象基础上做操作但不会改变原对象数据结构



Panel
Panel是三维带标签的数组,Pancel比较少用,但依然是最重要的基础数据结构之一.
Panel有三个标签:
items:坐标轴 0,索引对应的元素是一个DataFrame
magor_axis:坐标轴1,DataFrame里的行标签
minor_axis:坐标轴 2,DataFrame里的列标签
创建方式:

查看各维度索引

转换为DataFrame对象

panda核心数据结构的更多相关文章
- 【转】Java学习---Java核心数据结构(List,Map,Set)使用技巧与优化
[原文]https://www.toutiao.com/i6594587397101453827/ Java核心数据结构(List,Map,Set)使用技巧与优化 JDK提供了一组主要的数据结构实现, ...
- tensorflow:图(Graph)的核心数据结构与通用函数(Utility function)
Tensorflow一些常用基本概念与函数(2) 1. 图(Graph)的核心数据结构 tf.Graph.__init__:建立一个空图: tf.Graph.as_default():一个将某图设置为 ...
- spark系列-2、Spark 核心数据结构:弹性分布式数据集 RDD
一.RDD(弹性分布式数据集) RDD 是 Spark 最核心的数据结构,RDD(Resilient Distributed Dataset)全称为弹性分布式数据集,是 Spark 对数据的核心抽象, ...
- java核心数据结构总结
JDK提供了一组主要的数据结构的实现,如List.Set.Map等常用结构,这些结构都继承自java.util.collection接口. List接口 List有三种不同的实现,ArrayList和 ...
- Python的核心数据结构
数据结构 例子 数字 1234,3.1415,3+4j 字符串 'spam'."grace's" 列表 [1,[2,'three'],4] 字典 {'food':'spam','t ...
- python核心数据结构之字典
 [TOC ...
- Java核心数据结构(List,Map,Set)原理与使用技巧
JDK提供了一组主要的数据结构实现,如List.Map.Set等常用数据结构.这些数据都继承自 java.util.Collection 接口,并位于 java.util 包内. 1.List接口 最 ...
- linux源码中的核心数据结构
寄存器 pt_regs 进程线程 struct task_struct: 进程,或者是线程数据结构,在include/linux/sched.h里面定义的,与硬件体系结构无关 struct threa ...
- Lucene核心数据结构——FST存词典,跳表存倒排或者roarning bitmap 见另外一个文章
Lucene实现倒排表没有使用bitmap,为了效率,lucene使用了一些策略,具体如下:1. 使用FST保存词典,FST可以实现快速的Seek,这种结构在当查询可以表达成自动机时(PrefixQu ...
随机推荐
- too many open files
压测遇到这个问题,每次都查,记录一下: 系统分配文件数太少,临时修改方案: ulimit -n 2048 永久配置: vim /etc/security/limits.conf 底部配置: # End ...
- vue深入相应式原理
Vue 最显著的特性之一便是不太引人注意的响应式系统(reactivity system).模型层(model)只是普通 JavaScript 对象,修改它则更新视图(view).这会让状态管理变得非 ...
- Guava学习笔记(三):集合
添加Maven依赖 ListsTest import com.google.common.collect.Lists; import org.hamcrest.core.Is; import org. ...
- [Object Tracking] Overview of Object Tracking
From: 目标跟踪方法的发展概述 From: 目标跟踪领域进展报告 通用目标的跟踪 经典目标跟踪方法 2010 年以前,目标跟踪领域大部分采用一些经典的跟踪方法,比如 Meanshift.Parti ...
- post请求参数设置
控制器参数有[FromBody]修饰参数这么传: 控制器没有[FromBody]修饰参数这么传:
- 07装饰模式Decorator
一.什么是装饰模式 装饰( Decorator )模式又叫做包装模式.通 过一种对客户端透明的方式来扩展对象的功能, 是继承关系的一个替换方案. 二.装饰模式的结构 三.装饰模式的角色和职责 抽象组件 ...
- js 获取验证码计时器
效果图: 贴上代码: <div class="logintitle"> <input type="tel" id="mobile&q ...
- css3整理--media
media语法: <link rel="stylesheet" media="screen and (max-width: 600px)" href=&q ...
- 百万级数据下的mysql深度解析
首先,数据量大的时候,应尽量避免全表扫描,应考虑在 where 及 order by 涉及的列上建立索引,建索引可以大大加快数据的检索速度.但是,有些情况索引是不会起效的: 1.应尽量避免在 wher ...
- Python与金融量化分析----金融与量化投资
一:金融了解 金融:就是对现有资源进行重新的整合之后,进行价值和利润的等效流通. 金融工具: 股票 期货 黄金 外汇 基金 ............. 股票: 股票是股份公司发给出资人多的一种凭证,股 ...