Python中的Pandas模块
目录
Pandas
Pandas ( Python Data Analysis Library )是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。Pandas 纳入了大量库和一些标准的数据模型,提供了高效地操作大型数据集所需的工具。pandas提供了大量能使我们快速便捷地处理数据的函数和方法。你很快就会发现,它是使Python成为强大而高效的数据分析环境的重要因素之一
python中有三种数据结构
- Series:一维数组,与Numpy中的一维array类似。二者与Python基本的数据结构List也很相近,其区别是:List中的元素可以是不同的数据类型,而array和Series中则只允许存储相同的数据类型,这样可以更有效的使用内存,提高运算效率。Time- Series:以时间为索引的Series。
- DataFrame:二维的表格型数据结构。很多功能与R中的data.frame类似。可以将DataFrame理解为Series的容器。DataFrame是用的最多的数据结构
- Panel :三维的数组,可以理解为DataFrame的容器。
pandas可以读取很多种的数据,用的比较多的是读取 htm、json、csv的数据
import pandas
data1=pandas.read_html('1.html') #读取html格式数据
data2=pandas.read_json('2.json') #读取json格式数据
data3=pandas.read_csv('3.csv') #读取csv格式的数据
Series
系列(Series)是能够保存任何类型的数据(整数,字符串,浮点数,Python对象等)的一维标记数组。轴标签统称为索引
Series的创建函数:pandas.Series( data, index, dtype,copy )
| 参数 | 描述 |
| data | 数据采取各种形式,如:ndarray,list,constants |
| index | 索引值必须是唯一的和散列的,与数据的长度相同。默认 np.arange(n) 如果没有索引被传递 |
| dtype | dtype 用户数据类型。如果没有,将推断数据类型 |
| copy | 复制数据,默认为 false |
序列的创建
创建一个空series序列
从字典创建一个series序列
序列的读取
读取直接用 ['行名'],序列只可以读取行的内容
DataFrame
数据帧(DataFrame)是二维数据结构,即数据以行和列的表格方式排列。
数据帧(DataFrame)的功能特点:
- 潜在的列是不同的类型
- 大小可变
- 标记轴(行和列)
- 可以对行和列执行算术运算
DataFrame的创建函数:pandas.DataFrame( data, index, columns, dtype, copy)
| 参数 | 描述 |
| data | 数据采取各种形式,如:ndarray,series,map,lists,dict,constant和另一个DataFrame |
| index | 对于行标签,要用于结果帧的索引是可选缺省值 np.arrange(n) ,如果没有传递索引值 |
| columns | 对于列标签,可选的默认语法是 np.arange(n) 这只有在没有索引传递的情况下才是这样 |
| dtype | 每列的数据类型 |
| copy | 如果默认值为false,则此命令用于复制数据 |
DataFrame的创建
创建一个空DataFrame序列
从字典创建一个series序列(必须加index)
DataFrame数据的读取
读取列,直接 ['列名']
读取行
Panel
面板(Panel)是3D容器的数据。面板数据一词来源于计量经济学,部分源于名称:Pandas - pan(el)-da(ta)-s。
3轴(axis)这个名称旨在给出描述涉及面板数据的操作的一些语义。它们是
- items - axis 0,每个项目对应于内部包含的数据帧(DataFrame)
- major_axis - axis 1,它是每个数据帧(DataFrame)的索引(行)
- minor_axis - axis 2,它是每个数据帧(DataFrame)的列
Panel的创建函数:pandas.Panel(data, items, major_axis, minor_axis, dtype, copy)
| 参数 | 说明 |
|---|---|
| data | 数据采取各种形式,如:ndarray,series,map,lists,dict,constant和另一个数据帧 DataFrame |
| items | axis=0 |
| major_axis | axis=1 |
| minor_axis | axis=2 |
| dtype | 每列的数据类型 |
| copy | 复制数据,默认 false |
Panel的创建
创建一个空Panel序列
Python中的Pandas模块的更多相关文章
- 沉淀,再出发:python中的pandas包
沉淀,再出发:python中的pandas包 一.前言 python中有很多的包,正是因为这些包工具才使得python能够如此强大,无论是在数据处理还是在web开发,python都发挥着重要的作用,下 ...
- python中使用openpyxl模块时报错: File is not a zip file
python中使用openpyxl模块时报错: File is not a zip file. 最大的原因就是不是真正的 xlsx文件, 如果是通过 库xlwt 新建的文件,或者是通过自己修改后缀名 ...
- Python中的random模块,来自于Capricorn的实验室
Python中的random模块用于生成随机数.下面介绍一下random模块中最常用的几个函数. random.random random.random()用于生成一个0到1的随机符点数: 0 < ...
- Python中的logging模块
http://python.jobbole.com/86887/ 最近修改了项目里的logging相关功能,用到了python标准库里的logging模块,在此做一些记录.主要是从官方文档和stack ...
- Python中的random模块
Python中的random模块用于生成随机数.下面介绍一下random模块中最常用的几个函数. random.random random.random()用于生成一个0到1的随机符点数: 0 < ...
- 浅析Python中的struct模块
最近在学习python网络编程这一块,在写简单的socket通信代码时,遇到了struct这个模块的使用,当时不太清楚这到底有和作用,后来查阅了相关资料大概了解了,在这里做一下简单的总结. 了解c语言 ...
- python中的StringIO模块
python中的StringIO模块 标签:python StringIO 此模块主要用于在内存缓冲区中读写数据.模块是用类编写的,只有一个StringIO类,所以它的可用方法都在类中.此类中的大部分 ...
- python中的select模块
介绍: Python中的select模块专注于I/O多路复用,提供了select poll epoll三个方法(其中后两个在Linux中可用,windows仅支持select),另外也提供了kqu ...
- Python中的re模块--正则表达式
Python中的re模块--正则表达式 使用match从字符串开头匹配 以匹配国内手机号为例,通常手机号为11位,以1开头.大概是这样13509094747,(这个号码是我随便写的,请不要拨打),我们 ...
随机推荐
- 关于KMP算法中,获取next数组算法的理解
参考:KMP入门级别算法详解--终于解决了(next数组详解) https://blog.csdn.net/lee18254290736/article/details/77278769 在这里讨论的 ...
- linux安装uwsgi,报错问题解决
uwsgi安装 uwsgi启动后出 -- unavailable modifier requested: 0 出现问题的的原因是找不到python的解释器(其他语言同理) 你使用的yum instal ...
- 【RocketMQ源码分析】深入消息存储(1)
最近在学习RocketMQ相关的东西,在学习之余沉淀几篇笔记. RocketMQ有很多值得关注的设计点,消息发送.消息消费.路由中心NameServer.消息过滤.消息存储.主从同步.事务消息等等. ...
- java关于字符串是否存
1, if('true'.equalsIgnoreCase(response.result as String)); 2, if (scvrsp.toLowerCase().contains(&q ...
- JAVA-标识符、变量、数据类型
标识符和关键字 所有的标识符否应该以字母a ~ z和 A ~Z ,美元符($).下划线(_)开始. 首字符之后可以是字母a ~ z和 A ~Z ,美元符($).下划线(_)的任意字符组合. 注 ...
- Python开发环境从零搭建-03-安装Python解释器并配置
想要从零开始搭建一个Python的开发环境说容易也容易 说难也能难倒一片开发人员,在接下来的一系列视频中,会详细的讲解如何一步步搭建python的开发环境 本文章是搭建环境的第3篇 讲解的内容是:安装 ...
- Java方法:练习,控制台简易计算器
可以更改计算个数的简易计算器 package com.zdz.method; import java.util.Scanner; public class Operator { public stat ...
- 单元测试 - SpringBoot2+Mockito实战
单元测试 - SpringBoot2+Mockito实战 在真实的开发中,我们通常是使用SpringBoot的,目前SpringBoot是v2.4.x的版本(SpringBoot 2.2.2.RELE ...
- DataTable.SELECT日期类型筛选处理
初始化: public DataTable1() { InitializeComponent(); Init(); } private void Init() { dt = new DataTable ...
- java中的String,StringBuffer与StringBuilder
String类是不可变类,即一旦一个String对象被创建以后,包含在这个对象中的字符序列是不可改变的,直至这个对象被销毁. StringBuffer对象则代表一个字符序列可变的字符串,当一个Stri ...