Pandas学习2

news2025/3/1 8:54:38

Pandas学习2

None

两种缺失数据:None、np.nan(NaN)
None是python自带的,不能参与计算。类型是object
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

np.nan

浮点类型,说明能参与计算,但是结果是nan
在这里插入图片描述
在这里插入图片描述

pandas中的None和np.nan

pandas中的None和np.nan都视为np.nan

如果列中有一个数变成了浮点数,那么整个列都会变成浮点数
在这里插入图片描述

判断是否有缺失

isnull()
notnull()
在这里插入图片描述

any() 默认对行处理,判断每一列是否有空数据
在这里插入图片描述

加入axis改成判断行
在这里插入图片描述

删除缺失值

默认axis=0,删除行;加上how=‘all’,只有全部是nan才删除
并且注意这个方法不会修改原来的数据,需要接收返回值
在这里插入图片描述

在这里插入图片描述

子集的功能,用于判断子集中是否有空,有空就删除
在这里插入图片描述

参数thresh,应该是保留至少有n个非NaN数据的行/列

In [6]: data
Out[6]: 
    0     1     2     3   4

0  32  38.0  11.0  69.0  34

1  59   NaN   NaN   NaN  62

2  14  79.0   NaN   NaN  78

3  77  76.0  17.0   NaN  89

4   6  40.0  53.0  60.0  70



In [7]: data.dropna(thresh=1)

Out[7]: 

    0     1     2     3   4

0  32  38.0  11.0  69.0  34

1  59   NaN   NaN   NaN  62

2  14  79.0   NaN   NaN  78

3  77  76.0  17.0   NaN  89

4   6  40.0  53.0  60.0  70



In [8]: data.dropna(thresh=2)

Out[8]: 

    0     1     2     3   4

0  32  38.0  11.0  69.0  34

1  59   NaN   NaN   NaN  62

2  14  79.0   NaN   NaN  78

3  77  76.0  17.0   NaN  89

4   6  40.0  53.0  60.0  70



In [9]: data.dropna(thresh=3)

Out[9]: 

    0     1     2     3   4

0  32  38.0  11.0  69.0  34

2  14  79.0   NaN   NaN  78

3  77  76.0  17.0   NaN  89

4   6  40.0  53.0  60.0  70

填充缺失

用指定的值去填充
在这里插入图片描述

用其他值去填充,这里可以设置填充方向和填充方法,b开头的是向后,其他是向前填充;这里limit是限制一个数填充的次数,1表示一个数只能填充一个位置
在这里插入图片描述

层级索引

是指这种多层级的索引
在这里插入图片描述

创建层级数据框
隐式创建,即直接写,索引变成两个数组,这样创建出来的索引就是多层的索引
在这里插入图片描述

同理,series也可以创建多层索引
在这里插入图片描述

显式构造pd.MultiIndex,这种和上种基本一致
在这里插入图片描述

使用元祖tuple
在这里插入图片描述

使用product,即乘积的方式,相对方便,但是也要看情况使用,比如这里两个班的学生名字都一样明显不太合适
在这里插入图片描述

多层索引对象的索引或切片操作

原则:当有多层索引的时候,不能直接使用内层索引
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

切片只能切外层的索引,如果要切出想要的结果,可以使用iloc进行切片
在这里插入图片描述

对列索引同样的道理,也不能直接切内层,可以使用隐式索引

在改变其中数据的时候,直接该在这里插入图片描述

先将int类型修改为float类型,再修改
在这里插入图片描述

这种可以直接改
在这里插入图片描述

索引的堆(stack)

索引的堆指的是 多层索引中行索引和列索引的转换
行着的索引变成竖着是stack,反之是unstack

这里看到有返回值,说明不会修改原数据

这里操作的是最里层,因为有个参数是level,默认是-1,就是最里层;
默认最外层是0,里面是1
在这里插入图片描述

在这里插入图片描述

如果加上level参数,转换后总是出现在最里层
在这里插入图片描述

在这里插入图片描述

聚合

在这里插入图片描述

在这里插入图片描述

多层聚合
在这里插入图片描述

将日期转化为可以运算的数据类型

在这里插入图片描述

在这里插入图片描述

将date 设置为行索引,keys为要设置为索引的列
在这里插入图片描述

重新将索引变成数据
在这里插入图片描述

拼接(级联和合并)

pd.concat 和 df.append 是级联操作
pd.merge 是合并操作

生成一个df的函数
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

不匹配级联,匹配的级联,不匹配的索引,补nan
在这里插入图片描述

在这里插入图片描述

左连接
在这里插入图片描述

右连接,保留df2的列
在这里插入图片描述

append

verify这个参数的意思是检查拼接的数据是否有重复,如果重复就报错了
在这里插入图片描述

在这里插入图片描述

合并merge

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

也可以用df调用
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

多对多,笛卡尔积
在这里插入图片描述

在这里插入图片描述

多个列相同,需要指定按照哪个列合并,并且另一个列合并以后会自动区分
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

内合并,默认是内合并
在这里插入图片描述

在这里插入图片描述

左右合并
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

补充知识点

query 应该很常用
在这里插入图片描述

删除数据中的行或者列,drop()
在这里插入图片描述
在这里插入图片描述

查看缺失数据的行(学会使用条件的这种写法)
在这里插入图片描述

在这里插入图片描述

这个警告的意思是说是对数据框df的一个部分进行赋值,但是内存里没有直接生成这个部分,所以赋值失败
在这里插入图片描述

所以需要将这个部分创造出来,再进行赋值
在这里插入图片描述

那么如何将赋值后的结果再重新给到数据框呢?
在这里插入图片描述

删除缺失数据
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

读取数据

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

从mysql中读取
在这里插入图片描述

从url中读取
在这里插入图片描述

重复数据检测

df.duplicated()
在这里插入图片描述

df.drop_duplicates()
在这里插入图片描述

或者直接用条件,采用逻辑符号写
在这里插入图片描述
在这里插入图片描述

keep= ‘last’,从后往前看
在这里插入图片描述

用subset定义在子集中查看
在这里插入图片描述

映射

在这里插入图片描述

replace替换函数

在这里插入图片描述

在这里插入图片描述

map函数

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

rename 替换索引

对于一个字典:
在这里插入图片描述

在这里插入图片描述

异常值判断

在这里插入图片描述
describe()
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

抽样

在这里插入图片描述

按照take中的顺序拿数据
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

用随机数和take结合实现又放回抽样
在这里插入图片描述

分组聚合

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

推荐先取值再聚合
在这里插入图片描述

将和的那一列追加到原列表中
在这里插入图片描述

练习
在这里插入图片描述

求白色的总价
在这里插入图片描述

在这里插入图片描述

合并到原数据中
在这里插入图片描述

添加前后缀
在这里插入图片描述

使用transform和apply实现

在这里插入图片描述

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/347015.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

ArkUI新能力,助力应用开发更便捷

ArkUI是一套构建分布式应用的声明式UI开发框架。它具备简洁自然的UI信息语法、丰富的UI组件、多维的状态管理,以及实时界面预览等相关能力,帮助您提升应用开发效率,并能在多种设备上实现生动而流畅的用户体验。随着HarmonyOS 3.1版本的发布&a…

签收后再补录物流信息单号要如何分析

随着网络时代电商平台掘起,购物平台也是越来越多,呈现出快递也是越来越多,电商平台和快递两者是密不可分,有下单就需要快递物流,所以快递公司也是很重要一个环节,最近有朋友向咨询如何分析出比如单号过已签…

Springboot扩展点之SmartInitializingSingleton

前言这篇文章会重点分析一下SmartInitializingSingleton扩展点的功能 特性、实现方式 、工作原理。SmartInitializingSingleton扩展点内只有一个扩展方法,且执行时机在Spring Bean的生命周期里比较靠后,很重要,但是也很简单。功能特性1、Smar…

0基础入行Java开发—详解Java泛型之详解通配符

今天我们来继续讲解泛型中另一个非常重要的概念&#xff0c;就是那个“小问号”——通配符! 通配符概念 泛型中除了用 表示泛型外&#xff0c;还有 <?>这种形式。&#xff1f; 被称为通配符。那么引入通配符的原因又是什么呢&#xff1f;看下面这段代码&#xff1a; …

格兰杰因果检验_Python实现

原理部分 代码实现 步骤 #mermaid-svg-kEtkcqkpRzxjdoOv {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-kEtkcqkpRzxjdoOv .error-icon{fill:#552222;}#mermaid-svg-kEtkcqkpRzxjdoOv .error-text{fill:#552222;s…

前端框架LayUI

Bootstrap框架 Bootstrap让前端开发更快速、简单。所有开发者都能快速上手、所有设备都可以适配、所有项目都适 用。 可以直接使用Bootstrap提供的 CSS 样式表&#xff0c;Bootstrap的源码是采用最流行的CSS预处理工具Less和Sass开发的。可以直接采用预编译的CSS文件快速开发…

2023面试题

目录 http部分 2、tcp 三次握手&#xff0c;一句话概括 3、tcp四次挥手 4、什么是跨域&#xff0c;跨越的解决办法 5、TCP 和 UDP 的区别 6、websocket 7、HTTP 请求的方式&#xff0c;HEAD 方式 8、几个很实用的 BOM 属性对象方法&#xff08;什么是 Bom? Bom 是浏览器对象&a…

重生之我是赏金猎人(三)-SRC漏洞挖掘-强行多次FUZZ发现某厂商SSRF到redis密码喷洒批量反弹Shell

0x00 前言 https://github.com/J0o1ey/BountyHunterInChina 欢迎大佬们点个star 最近BugBounty挖了不少&#xff0c;但大多数都是有手就行的漏洞&#xff0c;需要动脑子的实属罕见 而今天就遇到了一个非常好的案例&#xff0c;故作此文 0x01 对目录批量FUZZ&#xff0c;发…

数字孪生智慧机场:透视数字化时代下的航空运营

在《智慧民航建设路线图》文件中&#xff0c;民航局明确指出&#xff0c;智慧机场是实现智慧民航的四个核心抓手之一。这一战略性举措旨在推进数字化技术与航空产业的深度融合&#xff0c;为旅客提供更加智能化、便捷化、安全化的出行服务&#xff0c;进一步提升我国民航发展的…

示波器详解

&#x1f44d;&#x1f44d;&#x1f44d;本文是介绍和总结了示波器的一些内容&#xff0c;有助于大学生学习以及复习&#x1f447;&#x1f447;&#x1f447;&#x1f447;&#x1f447;&#x1f447;&#x1f447;&#x1f447;&#x1f447;&#x1f447;&#x1f447;&…

RTT IO设备模型

1. I/O 设备介绍 RT-Thread 提供了一套简单的 I/O 设备模型框架&#xff0c;如下图所示&#xff0c;它位于硬件和应用程序之间&#xff0c;共分成三层&#xff0c;从上到下分别是 I/O 设备管理层、设备驱动框架层、设备驱动层。 应用程序通过 I/O 设备管理接口获得正确的设备驱…

纷享销客百思特 | 数字化营销赋能企业新增长沙龙圆满落幕

为进一步帮助企业客户实现数字化转型&#xff0c;纷享销客联合百思特管理咨询集团&#xff0c;于2月10日举办 “数字化营销赋能企业新增长”主题沙龙。本次活动以“新变革新增长”为主题&#xff0c;现场30余位制造企业高管齐聚一堂&#xff0c;共同探讨企业如何在当前复杂的宏…

都2023年了,如果不会Stream流、函数式编程?你确定能看懂公司代码?

&#x1f473;我亲爱的各位大佬们好&#x1f618;&#x1f618;&#x1f618; ♨️本篇文章记录的为 Stream流、函数式编程 相关内容&#xff0c;适合在学Java的小白,帮助新手快速上手,也适合复习中&#xff0c;面试中的大佬&#x1f649;&#x1f649;&#x1f649;。 ♨️如果…

【靶机】vulnhub靶机pylington

靶机下载地址 Pylington: 1 ~ VulnHub kali ip&#xff1a;192.168.174.128 靶机ip&#xff1a;192.168.174.146 arp-scan -l发现靶机ip是192.168.174.146 进行靶机的端口扫描&#xff0c;这里使用的是nmap的gui 可以发现开放了21和80端口&#xff0c;80端口扫描到了robot…

Spring6之HTTP Interface分析

文章目录1 HTTP Interface1.1 引言1.2 示例1.2.1 创建服务端1.2.2 SpringBoot工程1.3 深入分析1.3.1 GetExchange&#xff08;HttpExchange&#xff09;1.3.2 UserApiService 实例创建1.4 其他特性1 HTTP Interface 1.1 引言 近期&#xff0c;Spring 6 的第一个 GA 版本发布了…

【SSM】篇一:初试Spring--Ioc、Bean与容器

文章目录1、Spring2、SpringFramework系统架构3、BeanBean的配置Bean的实例化Bean的生命周期4、依赖注入DIsetter注入和构造器注入依赖自动装配集合注入案例--数据源对象管理加载properties文件5、容器创建容器的两种方式获取bean的三种方式容器类层次结构图1、Spring Spring地…

算法思想 - 搜索算法

本文主要介绍算法中搜索算法的思想&#xff0c;主要包含BFS&#xff0c;DFS。搜索相关题目深度优先搜索和广度优先搜索广泛运用于树和图中&#xff0c;但是它们的应用远远不止如此。BFS广度优先搜索的搜索过程有点像一层一层地进行遍历&#xff0c;每层遍历都以上一层遍历的结果…

【C/C++基础练习题】复习题三,易错点知识点笔记

C复习题知识点记录&#xff1a; 在定义结构体类型时&#xff0c;不可以为成员设置默认值。 在公用一个共用体变量时。系统为其分配存储空间的原则是按成员中占内存空间最大者分配 a ,La, "a", L"a" 字符 长字符 字符串 长字符串 布尔类型只有两个值 fal…

尚医通(十四)Spring Cloud GateWay网关 | 跨域 | 权限认证

目录一、网关基本概念1、API网关介绍2、Spring Cloud Gateway3、Spring Cloud Gateway核心概念二、创建service_gateway模块&#xff08;网关服务&#xff09;1、创建service_gateway模块2、在pom.xml引入依赖3、编写application.properties配置文件4、编写启动类5、前端端口号…

Early Data将在数据应用领域与亚马逊云科技加深合作

数字经济时代&#xff0c;伴随着大数据应用的不断深入&#xff0c;企业对用户及市场发展动向的判断正变得愈加精准。数据资产不再是虚无缥缈的东西&#xff0c;而是可以帮助企业切切实实找到业务增长点&#xff0c;洞悉潜在商机&#xff0c;拥有巨大潜力的“宝藏”。IDC数据显示…