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 ...
随机推荐
- 【iCore4 双核心板_ARM】例程十一:DMA实验——存储器到存储器的传输
实验原理: DAM(直接存储器访问)传输不需要占用CPU,可以在存储器至存储器实现高速的数据 传输.本实验采用DAM2控制器的数据流0,选用通道0进行数据传输.通过LED的颜色来 判断传输是否成功. ...
- 挖坑:handoop2.6 开启kerberos(全流程学习记录)
目录: 1.涉及插件简介 2.安装步骤 3.日志错误查看 1.kerberos是什么东西 度娘指导: Kerberos 是一种网络认证协议,其设计目标是通过密钥系统为 客户机 / 服务器 应用程序提供 ...
- nginx下wordpress 固定链接问题
情况是这样的, 我的wordpress并不是放在网站的根目录的,而是放在/blog目录下的,然后在wordpress中设置固定链接的时候,每次都出错,用了网上几个方法都不行,后来在http://cod ...
- Java知多少(43)异常处理基础
Java异常是一个描述在代码段中发生的异常(也就是出错)情况的对象.当异常情况发生,一个代表该异常的对象被创建并且在导致该错误的方法中被抛出(throw).该方法可以选择自己处理异常或传递该异常.两种 ...
- 跨浏览器的placeholder-jQuery版(jQuery插件EnPlaceholder)
案例:整搜索框,需要默认占位符为"请输入关键词",获取焦点时,占位符消失或不可用(不影响正常输入),丢失焦点后,若用户无内容输入,占位符继续出现,继续占位.这种代码我想前端们已经很 ...
- make INSTALL_MOD_PATH=path_dir modules_install
The INSTALL_MOD_PATH variable is needed to install the modules in the target root filesystem instead ...
- Service 中的 onStart 和 onStartCommand
在自定义的service中,写了onStart和onStartCommand, public class HttpWebService extends Service { @Override publ ...
- [Bayes] Multinomials and Dirichlet distribution
From: https://www.cs.cmu.edu/~scohen/psnlp-lecture6.pdf 不错的PPT,图示很好. 伯努利分布 和 多项式分布 Binomial Distribu ...
- 【Scikit】实现Multi-label text classification代码模板
Refer to: https://stackoverflow.com/a/10527953 code: # -*- coding: utf-8 -*- import numpy as np from ...
- RabbitMQ随笔
不管是官方还是能搜到的文章,使用MQ的基本思路都是这样: static void Main(string[] args) { //通过工厂建立连接 using (IConnection connect ...