Pandas库学习笔记(2)
Pandas 数据结构
Pandas 有三种常用的数据结构
- Series
- DataFrame
- Panel
这些数据结构建立在Numpy数组之上,这意味着它们运行速度都非常快。
Python、Numpy和Pandas对比
Python
- list:Python自带数据类型,主要用一维,功能简单,效率低
- Dict:Python自带数据类型,多维键值对,效率低
- ndarray:Numpy基础数据类型,单一数据类型
- 关注数据结构/运算/维度(数据间关系)
- Series:1维,类似带索引的1维ndarray
- DataFrame:2维,表格型数据类型,类似带行/列索引的2维ndarray 关注数据与索引的关系(数据实际应用)
从实用性、功能强弱和和可操作性比较:list < ndarray < Series/DataFrame
数据规整和分析工作中,ndarry数组作为必要补充,大部分数据尽量使用Pandas数据类型
考虑这些数据结构的最佳方法是高维数据结构是其低维数据结构的容器。例如,DataFrame是Series的容器,Panel是DataFrame的容器。
数据结构 | 维度 | 说明 |
Series | 1 | 用于存储一个序列的一维数据 |
Data Frames | 2 | DataFrame作为更复杂的数据结构,则用于存储多维数据 |
Panel | 3 | 通用的3D标签,大小可变的数组。 |
建立和处理二维数组是一项繁琐的工作,在编写函数时,要由用户来考虑数据集的方向。但是使用Pandas数据结构可以减少用户的精力。
例如,对于表格数据(DataFrame),在语义上考虑索引(行)和列比在轴0和轴1上更有帮助。
变异性
所有Pandas数据结构都是值可变的(可以更改),除了Series以外,其他大小都是可变的。系列是大小不变的。
注 -DataFrame被广泛使用,是最重要的数据结构之一。Panel面板使用少得多。
Series
Series是具有均匀数据的一维数组状结构。例如,以下系列是整数10、23、56的集合...
10 | 23 | 56 | 17 | 52 | 61 | 73 | 90 | 26 | 72 |
Series是具有均匀数据的一维数组状结构。例如,以下系列是整数10、23、56的集合...
关键点
- 同类数据
- 大小不变
- 数据可变值
Data Frames
DataFrame是具有异构数据的二维数组。例如,
Name | Age | Gender | Rating |
Steve | 32 | Male | 3.45 |
Lia | 28 | Female | 4.6 |
Vin | 45 | Male | 3.9 |
Katie | 38 | Female | 2.78 |
上表代表组织的销售团队的数据及其总体绩效等级,数据以行和列表示,每列代表一个属性,每行代表一个人。
列的数据类型
Column | Type |
Name | String |
Age | Integer |
Gender | String |
Rating | Float |
关键点
- 异构数据
- 大小不变
- 数据可变
Panel
Panel是具有异构数据的三维数据结构。很难用图形表示面板。但是面板可以说明为DataFrame的容器。
关键点
- 异构数据
- 大小可变
- 数据可变
Pandas库学习笔记(2)的更多相关文章
- pandas库学习笔记(二)DataFrame入门学习
Pandas基本介绍——DataFrame入门学习 前篇文章中,小生初步介绍pandas库中的Series结构的创建与运算,今天小生继续“死磕自己”为大家介绍pandas库的另一种最为常见的数据结构D ...
- pandas库学习笔记(一)Series入门学习
Pandas基本介绍: pandas is an open source, BSD-licensed (permissive free software licenses) library provi ...
- python的pandas库学习笔记
导入: import pandas as pd from pandas import Series,DataFrame 1.两个主要数据结构:Series和DataFrame (1)Series是一种 ...
- numpy, matplotlib库学习笔记
Numpy库学习笔记: 1.array() 创建数组或者转化数组 例如,把列表转化为数组 >>>Np.array([1,2,3,4,5]) Array([1,2,3,4,5]) ...
- muduo网络库学习笔记(五) 链接器Connector与监听器Acceptor
目录 muduo网络库学习笔记(五) 链接器Connector与监听器Acceptor Connector 系统函数connect 处理非阻塞connect的步骤: Connetor时序图 Accep ...
- muduo网络库学习笔记(四) 通过eventfd实现的事件通知机制
目录 muduo网络库学习笔记(四) 通过eventfd实现的事件通知机制 eventfd的使用 eventfd系统函数 使用示例 EventLoop对eventfd的封装 工作时序 runInLoo ...
- muduo网络库学习笔记(三)TimerQueue定时器队列
目录 muduo网络库学习笔记(三)TimerQueue定时器队列 Linux中的时间函数 timerfd简单使用介绍 timerfd示例 muduo中对timerfd的封装 TimerQueue的结 ...
- C++STL标准库学习笔记(三)multiset
C++STL标准库学习笔记(三)multiset STL中的平衡二叉树数据结构 前言: 在这个笔记中,我把大多数代码都加了注释,我的一些想法和注解用蓝色字体标记了出来,重点和需要关注的地方用红色字体标 ...
- 初步了解pandas(学习笔记)
1 pandas简介 pandas 是一种列存数据分析 API.它是用于处理和分析输入数据的强大工具,很多机器学习框架都支持将 pandas 数据结构作为输入. 虽然全方位介绍 pandas API ...
- 【python】numpy库和matplotlib库学习笔记
Numpy库 numpy:科学计算包,支持N维数组运算.处理大型矩阵.成熟的广播函数库.矢量运算.线性代数.傅里叶变换.随机数生成,并可与C++/Fortran语言无缝结合.树莓派Python v3默 ...
随机推荐
- Android 13 - Media框架(8)- MediaExtractor
关注公众号免费阅读全文,进入音视频开发技术分享群! 上一篇我们了解了 GenericSource 需要依赖 IMediaExtractor 完成 demux 工作,这一篇我们就来学习 android ...
- LLM 大模型学习必知必会系列(三):LLM和多模态模型高效推理实践
LLM 大模型学习必知必会系列(三):LLM和多模态模型高效推理实践 1.多模态大模型推理 LLM 的推理流程: 多模态的 LLM 的原理: 代码演示:使用 ModelScope NoteBook 完 ...
- mysql笔记第一天: 介绍和MySQL编译安装
一.DBA的工作内容:  ...
- 开发视频会议系统:使用GPU解码渲染视频
现在,使用视频会议系统远程协同办公.沟通交流,已经非常普遍了.如果我们要开发自己的视频会议系统,那么,GPU解码渲染技术是不可缺少的. 在视频会议系统中,经常需要同时观看会议中多个参会人员的视频图像, ...
- C#.NET WinForm 多个子Task嵌套 Task.WaitAll 阻塞UI线程
C#.NET WinForm 多个子Task(子线程)嵌套 Task.WaitAll 阻塞UI线程 (界面) 情况: DoIt()方法内,开了2个Task 执行任务,子任务中会更新UI. DoIt( ...
- (四)基于multiprocessing.dummy线程池爬取梨视频的视频信息
功能:爬取梨视频科技栏最热的几个视频. 1. 找到视频对应的通用标签 可以看出关于视频的信息都存放在li标签中 2. 拿到视频的名称以及对应的url 3.进入Video的url,找到视频信息的地址 ...
- 点击li 该li变色
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- 记一下 localstorage sessionStorage cookie 不同
localStorage.sessionStorage.cookie 使用整理 下面从这几方面进行梳理 存储形式 相同点 不同点 使用方法 用途 多标签之间通讯 一.存储形式 1.localStron ...
- sftp jsch文件移动备份的思路
1.jsch jar包不支持mv cp等移动复制的功能,转换思路,sftp下载文件到本地服务器,目录可以考虑使用/年/月/日层级. 2.然后sftp下载操作完毕,记录一张文件操作表,记录下载状态. 3 ...
- post请求方式 - 使用restTemplate而不使用httpClient,headers.setContentType(MediaType.APPLICATION_JSON_UTF8)
public static String doPostForJson(String url, String json,String byteAuthorization) { RestTemplate ...