【pandas】(六)增删改查

2023-11-05

文章目录

一、增加数据

在这里插入图片描述

1.1 增加一行

在这里插入图片描述

1.2 增加一列

在这里插入图片描述

1.3 pd.concat()拼接数据

注:pd.concat()既可以增加行,又可以增加列
pd.concat(objs, axis=0, join=‘outer’, join_axes=None, ignore_index=False,
keys=None, levels=None, names=None, verify_integrity=False,
copy=True)

在这里插入图片描述

(1)objs:Series,DataFrame或Panel对象的序列或映射

注:默认是纵向拼接,axis=0
在这里插入图片描述

(2)axis:{0,1,…},默认为0。纵向拼接。

在这里插入图片描述
在这里插入图片描述
注:当axis=1横向拼接时,默认为并集
在这里插入图片描述

(3)join:{‘inner’,‘outer’},默认为“outer”。如何处理其他轴上的索引。outer为联合和inner为交集。

在这里插入图片描述

(4)ignore_index:boolean,default False。如果为True,索引重新排序。

在这里插入图片描述

(5)join_axes:Index对象列表。outer外联之后,设置该参数能达到左连接和右连接的功能。

在这里插入图片描述

(6)keys:序列,默认值无。使用传递的键作为最外层构建层次索引。如果为多索引,应该使用元组。

在这里插入图片描述
levels:序列列表,默认值无。用于构建MultiIndex的特定级别(唯一值)。否则,它们将从键推断。
names:list,default无。结果层次索引中的级别的名称。
verify_integrity:boolean,default False。检查新连接的轴是否包含重复项。这相对于实际的数据串联可能是非常昂贵的。
copy:boolean,default True。如果为False,请勿不必要地复制数据。

1.4 pd.append()拼接数据

DataFrame.append(other, ignore_index=False, verify_integrity=False, sort=None)
将被 append 的对象添加到调用者的末尾(类似 list 的方法)。
注意:如果调用者是 DataFrame 而被 append 的对象是 Series,将会把 Series 作为一列添加到末尾。Series 和 DataFrame 均有此方法。

(1)other,可以是dataframe,可以是series

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

(2)ignore_index:boolean,default False。如果为True,索引重新排序。

在这里插入图片描述

二、删除数据

2.1 df.drop()

DataFrame.drop(labels=None,axis=0, index=None, columns=None, inplace=False)

  • 注:
  • (1)默认删除行
  • (2)无论行列,数据中显示position位置只能按照position位置删除,显示label值则只能按照label值删除

(1)labels 就是要删除的行列的名字,用列表给定

在这里插入图片描述

(2)axis 默认为0,指删除行,因此删除columns时要指定axis=1;

在这里插入图片描述

(3)index 直接指定要删除的行

在这里插入图片描述

(4)columns 直接指定要删除的列

在这里插入图片描述

(5)inplace,默认=False该删除操作不改变原数据,而是返回一个执行删除操作后的新dataframe;inplace=True,则会直接在原数据上进行删除操作,删除后无法返回。

在这里插入图片描述

2.2 df.drop_duplicates()删除重复数据

DataFrame.drop_duplicates(subset=None, keep=‘first’, inplace=False)

(1)subset : column label or sequence of labels, 用来指定特定的列,默认所有列

在这里插入图片描述

(2)keep=‘first’,默认保留一条重复记录

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

(3)inplace,默认=False该删除操作不改变原数据,而是返回一个执行删除操作后的新dataframe;inplace=True,则会直接在原数据上进行删除操作,删除后无法返回。

在这里插入图片描述

2.3 求dataframe差集

  • append两次
  • df.drop_duplicates(keep=False)删除全部重复项,一条不留
    在这里插入图片描述

三、修改数据

3.1 df.fillna()填充空值

**DataFrame.fillna(value=None, method=None, axis=None, inplace=False, limit=None, downcast=None, kwargs)

(1)value : 变量, 字典, Series, or DataFrame

在这里插入图片描述

(2)method: {‘backfill’, ‘bfill’, ‘pad’, ‘ffill’, None}, default None。定义了填充空值的方法, pad / ffill表示用前面行/列的值,填充当前行/列的空值, backfill / bfill表示用后面行/列的值,填充当前行/列的空值。

1,默认纵轴填充

在这里插入图片描述

(3)axis:轴。0或’index’,表示按行删除;1或’columns’,表示按列删除。

1,横轴填充

在这里插入图片描述

(4)inplace:是否原地替换。布尔值,默认为False。如果为True,则在原DataFrame上进行操作,返回值为None。

(5)limit:int, default None。如果method被指定,对于连续的空值,这段连续区域,最多填充前 limit 个空值(如果存在多段连续区域,每段最多填充前 limit 个空值)。如果method未被指定, 在该axis下,最多填充前 limit 个空值(不论空值连续区间是否间断)

在这里插入图片描述

3.2 填充异常值

3.2.1 df.loc()通过布尔索引替换

布尔索引参考博文:https://blog.csdn.net/u010916338/article/details/105422449
在这里插入图片描述

3.2.2 直接替换

注意:定位条件不能写反了,否则替换不成功

3.2.2.1 例1(正确)

df[‘Age’]指定替换数据的列,然后在Age列上通过布尔索引df[‘Age’] >= 35定位到需要替换的数据。
在这里插入图片描述

3.2.2.2 例2(错误)

df[df[‘Age’] >= 35]先拿到满足条件的矩阵,然后对该矩阵的Age列做赋值,不会对原始数据造成影响。
在这里插入图片描述

3.2.3 lamada表达式

注:lambda表达式也是先拿到Age列再根据条件判断逐个做替换
在这里插入图片描述

3.2.4 replace()

https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.replace.html

四、查询数据

参考博文:https://blog.csdn.net/u010916338/article/details/105422449

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【pandas】(六)增删改查 的相关文章

  • NodeJs - for循环的几种遍历方式

    NodeJs for循环的几种遍历方式 一 for循环的几种遍历方式 1 1 遍历的目标不一样 1 2 空属性的遍历 1 3 异步的调用 二 总结 一 for循环的几种遍历方式 我们先来看下for循环的4种不同遍历方式 const arr
  • flutter 屏幕适配插件 flutter_screenutil 的简单使用

    前言 屏幕适配问题一直是app开发中一个绕不开的话题 毕竟现在各种尺寸的设备越来越多 原本一个优美大气的用户页面可能就会因为屏幕尺寸变化而变得杂乱无章 甚至是布局溢出 导致某些重要的信息无法显示 最终并因此而丢失掉用户 因此 屏幕适配是一项
  • DNS请求流程和报文解析

    DNS 域名系统 英文 Domain Name System 缩写 DNS 是互联网的一项服务 它作为将域名和 IP 地址相互映射的一个分布式数据库 能够使人更方便地访问互联网 DNS 的作用是将人类可读的域名 如 www example
  • QT QMap-QMultiMap类实现一键多值的具体应用 (**)

    QT QMap QMultiMap类实现一键多值的具体应用 1 QMap 和 QMultiMap 都具有 一键多值 只是它们的成员函数有些不同 QT QMap QMultiMap类实现一键多值的具体应用 QT QMap QMultiMap类
  • 分数的拆分原理和方法_大梦简书——分数巧算(已更新分数裂项)

    今天大梦老师给大家梳理一下目前阶段会用到的分数巧算 这个也是拖更很久了 今天也终于在寒假上课前有机会给大家系统的写一写 依然是会一直更新的一个帖子 更新日志 19 2 28 更新分数裂项 小升初重点 已标红 PS 注意只有从微信公共号底端菜
  • 卷积神经网络(CNN)

    卷积神经网络 Convolutional Neural Network 简称CNN 是一种前馈神经网络 人工神经元可以响应周围单元 可以进行大型图像处理 卷积神经网络包括卷积层和池化层 在影像处理中 一张图片会被处理成三维矩阵 图片的长宽和
  • 使用jquery解析XML的方法,很简单

    尽量使用高版本的的jquery 有的jquery版本会报没有parseXML属性的错误 我用的jquery 1 7 2 min js xml文件格式
  • 多阶段构建Golang程序Docker镜像方法详解

    为什么要多阶段构建 大家都知道Golang是编译型语言 源码需要先编译再运行 编译过程中需要下载依赖包 最终编译成可执行的二进制文件 只需要部署这个二进制文件即可运行 现在基本都是采用容器化部署方式 打包出的镜像体积越小越好 和程序运行无关
  • Django入门之定义模型和表迁移

    django3 0 定义表模型并通过定义好的模型实现源代码创建数据表 目录 概述 定义表模型 引入模型类 继承 创建表模型 注意 创建数据表 1 生成迁移文件 2 执行迁移 3 更新表文件 总结 概述 模型是一个用于表示数据的Python类
  • 《算法和数据结构》从语言到算法的过渡篇

    本文已收录于专栏 夜深人静写算法 前言 看到太多爆肝熬夜整合的内容 又是几万字 又是爆肝 我也来试试看能不能扛得住 试完后发现 果然还是扛不住啊 但是既然整理完了 那就把我的 算法学习路线 发出来吧 我把整个算法学习的阶段总结成了五个步骤
  • 现代C++教程 笔记

    写在前面 记录一下 现代C 教程 中的要点 现代C 是指C 11之后的语法特性 如无特别说明 下面的语法特性均是C 11后才可使用 一 语言可用性的强化 1 常量 1 1 nullptr 作用 代替NULL赋空指针 使用 char a nu
  • 《ESP32 学习笔记》 之 ESP32 引脚图 及 个引脚特定功能 概览

    ESP32 S 模组 NODEMCU 32S 原理图 各个IO口功能
  • Qt 多线程之线程事件循环(深入理解)

    Qt支持三种类型的信号 槽连接 1 直接连接 当signal发射时 slot立即调用 此slot在发射signal的那个线程中被执行 不一定是接收对象生存的那个线程 2 队列连接 当控制权回到对象属于的那个线程的事件循环时 slot被调用
  • 在pl/sql中执行动态sql

    动态sql就是把sql写在一个字符串里 在存储过程中解析字符串执行sql 这种动态sql很多时候会在别的语言里写 再连接数据库进行操作 这样的确方便很多 例如在java中使用JDBC 但是如果涉及到sql变化很多次 直接在存储过程中写动态s
  • Linux嵌入汇编1- 详解

    Linux上的 GNU C 编译器 GCC 使用 AT T UNIX 汇编语法 源操作数与目的操作数顺序 AT T 语法的操作数方向和 Intel 语法的刚好相反 在Intel 语法中 第一操作数为目的操作数 第二操作数为源操作数 然而在
  • python 使用node_vm2执行js

    有时候 一些js需要调用 之前都是用nodejs比较多 但是有些js会验证是否使用的是node 就比如某头条的加密 为了能本地调用扣下来的js 这里就不能用nodejs或者execjs 需要用到vm2 步骤 1 下载vm2 pip inst
  • 排序与查找代码总结-数据结构与算法python版

    代码来源于北京大学的数据结构与算法课 Python版 注释为本人自己加上的 可供学习使用 不可用于商业转载 有错误烦请指出 感谢 目录 二分查找 普通版 递归版 冒泡排序 普通版 加了是否发生交换的监测 选择排序 插入排序 希尔排序 归并排
  • C语言

    C 菜鸟教程 C 结构体位域
  • win7搭建虚拟pppoe服务器,Win7在桌面建立一个pppoe宽带自动连接器的方法

    本教程告诉大家如何在Win7在桌面建立一个pppoe宽带自动连接器教程 现在电脑已经普及使用了 每次开机都要连接宽带上网 很多用户说如何快速在Windows桌面建立一个PPPOE宽带连接 方便直接连接 之前在xp系统可以建立pppoe宽带自

随机推荐

  • 合并两个有序链表 c++

    LeetCode 21 合并两个有序链表 题目 21 合并两个有序链表 代码 Definition for singly linked list struct ListNode int val ListNode next ListNode
  • 哪些工具可以实现在线ps的需求

    在线Photoshop有哪些工具可以选择 在 Adobe 的官网上就能够实现 很惊讶吧 其实 Adobe 官方推出了在线版本的 Photoshop 的 尽管目前还是 Beta版本 但其实也开放了蛮久了 编辑切换为居中 添加图片注释 不超过
  • TCP协议及特性详解

    文章目录 TCP 确认应答 超时重传 连接建立与断开 三次挥手 四次挥手 四种常见状态 效率提升机制 滑动窗口 流量控制 拥塞控制 延时应答 捎带应答 粘包问题 TCP TCP 协议是一个有连接 可靠传输 面向字节流 全双工的传输层通信协议
  • Hive中数组的使用

    基本操作 创建文本 gt cat test txt 输入文本数据 12 23 23 34 what are this 34 45 34 23 12 who am i are 打开Hive 创建表 hive gt create table t
  • 常见几种滤波器的比较

    经典的数字滤波器有巴特沃斯滤波器 切比雪夫滤波器 椭圆滤波器和贝塞尔滤波器等 巴特沃斯滤波器的特点是通频带内的频率响应曲线最大限度平坦 没有起伏 而在阻频带则逐渐下降为零 在振幅的对数对角频率的波特图上 从某一边界角频率开始 振幅随着角频率
  • Linux FTP服务(只允许白名单用户访问FTP)

    目录 一 FTP服务器 二 FTP文化传输协议 FTP的传输模式有两种 三 Vsftpd服务程序 四 实验步骤 1 安装vsftpd软件包 2 备份主配置文件 3 去掉 号开头的行 4 创建黑 白名单的目的 约束 允许某些特定用户登录系统
  • 深入学习java源码之ArrayList.addAll()与ArrayList.retainAll()

    深入学习java源码之ArrayList addAll 与ArrayList retainAll 引入多态 List是接口 所以实现类要把接口中的抽象方法全部重写 在重写的时候父类中的方法的时候 操作的数据类型也是要与父类保持一致的 所以父
  • IPX9K IP69K:ISO 20653:2006

    IPX9K IP69K ISO 20653 2006 ISO 20653 2006 已由 ISO 20653 2013 标准代替 道路车辆 防护等级 IP 代码 电气设备对 外来物 水和接触的防护 参考编号 ISO 20653 2006 版
  • 古老的Solidity智能合约错误代码编写

    任何编程语言都有不完善的地方 而使用语言的过程中也可能产生一些逻辑上的Bug 在Solidity0 4 23版本的时候 有人在GitHub上列举了一些使用Solidity编写智能合约时常见的错误用法 虽然现在大家基本上都不会再写同样的问题代
  • Python布雷森汉姆直线算法RViz可视化ROS激光占位网格映射

    使用对数赔率映射已知姿势算法 ROS 包 布雷森汉姆直线算法 布雷森汉姆直线算法是一种线绘制算法 它确定应选择的 n 维栅格的点 以便形成两点之间的直线的近似值 它通常用于在位图图像中 例如在计算机屏幕上 绘制线条图元 因为它仅使用整数加法
  • 安卓系统培训!五年Android开发者小米、阿里面经,一线互联网公司面经总结

    前言 最近有不少人问我这样一个问题 我刚接触编程 准备学习下Android开发 但是担心现在市场饱和了 Android开发的前景怎么样 想着可能有很多人都有这样的担心 于是就赶紧写篇文章 来跟你们谈下Android开发的前景到底怎么样 一
  • 三个美观的个人博客网站源码

    怎么让源码更适合你 改造 名称 二开版UI漂亮的PHP博客论坛网站源码 介绍 可切换皮肤界面 下载 https wwwf lanzout com ihLNM10bfgnc 二 名称 Emlog Pro博客管理系统源码绿色版下载 介绍 源码说
  • MySQL:创建数据库,数据表,主键和外键

    目录 前言 安装MySQL 打开MySQL 创建数据库 查看已建数据库 查看数据库引擎 创建数据表 主键约束 单字段主键 多字段联合主键 外键约束 前言 MySQL数据库安装了很久 一直也没静下心来学习 因为起步太晚 所以什么都想学点 又感
  • Kafka的中的数据清理你知道多少

    Kafka将数据持久化到了硬盘上 为了控制磁盘容量 需要对过去的消息进行清理 那么 删除策略有哪几种呢 日志压缩和日志删除 其中日志压缩一般用的比较少 log cleanup policy compact 启用压缩策略 按照消息key进行整
  • 全局光照技术解析Global Illumination Explained

    解析全局光照Global Illumination Explained 前言 Global Illumination全局光照技术是实时渲染的必然发展方向 我参考了一些研究成果 琢磨了一下 让更多的人可以理解这项 古老 的技术 Front L
  • (Jquery功能篇) Jquery UI 相关组件(手风琴、tab分页、进度条、 滚动条、 时间控件)

    截图 实例代码
  • python dataframe增加数据_Pandas学习笔记(DataFrame基本操作)

    对于生成的dDataFrame 下一步进行的是对他的基本操作 增 减 改 查 一 数据选取 从已有的DataFrame中取出其中一列或几列 并对其进行操作 Pandas取出DataFrame的列有两种方式 两个方式没有好与坏之分 还是看个人
  • 用java做打字训练测试软件,《打字训练测试软件-Java课程设计》.doc

    PAGE PAGE 3 程序设计实践 题目 打字训练测试软件 学校 陕西工业学院 学院 信息学院 班级 信管12 2 学号 201213156619 姓名 刘克豪 2014 年 11 月 09 日 基础类 IO流与异常处理程序设计 一 实践
  • linux如何查看所有的用户、用户组、密码

    linux如何查看所有的用户和组信息 百度经验https jingyan baidu com article a681b0de159b093b184346a7 html linux添加用户 用户组 密码 百度经验https jingyan
  • 【pandas】(六)增删改查

    文章目录 一 增加数据 1 1 增加一行 1 2 增加一列 1 3 pd concat 拼接数据 1 objs Series DataFrame或Panel对象的 序列或映射 2 axis 0 1 默认为0 纵向拼接 3 join inne