pandas--数据的添加和修改

pandas--数据的添加和修改

  • 1、替换数据
  • 2、填充空值
  • 3、修改索引名
  • 4、增加列
  • 5、插入列df.insert()
  • 6、增加行
  • 7、追加合并
  • 8、删除空值
  • 9、删除

1、替换数据

使用replace方法可以实现数据的批量替换。

df.replace(1, 10)    # 将数据中的所有1替换为10
df.replace([1, 2, 3, 4], 8)    # 将1,2,3,4替换为8
df.replace([1, 2, 3, 4], [5, 6, 7, 8])    # 将1, 2, 3, 4对应替换为5, 6, 7, 8
df.replace({1: 5, 2:6})    # 字典对应修改

2、填充空值

fillna对空值填入指定数据。

df.fillna(0# 将空值全部修改为0
# {'backfill', 'bfill', 'pad', 'ffill', None},默认为None
df.fillna(method='ffill')    # 将空值都修改为其前一个值
values = {'Q1': 60, 'Q2': 70, 'Q3': 80}
df.fillna(value=values)    # 为各列填充不同的值
df.fillna(value=values, limit=1)    # 只替换第一个

3、修改索引名

df.rename(columns={'Q1': 'a', 'Q2': 'b'})    # 对表头进行修改
df.rename(index={0: 'x', 1: 'y'})    # 对索引进行修改
df.rename(index=str)    # 对类型进行修改

4、增加列

df['new'] = df['Q1'] + df['Q2']    # 新列为两列相加
# 把所有为数字的列相加
df['total'] = df.select_dtypes(include=['int']).sum(1)
df.loc[df.Q1 > 60, '成绩'] = '合格'
df.loc[df.Q1 < 60, '成绩'] = '不合格'

5、插入列df.insert()

# 在第三列的位置上插入心列total列,值为每行的总成绩
df.insert(2, 'total', df.sum(1))

6、增加行

可以使用loc[]指定索引给出所有列的值来增加一行数据。

# 新增索引为100的数据
df.loc[100] = ['tom', 'A', 83, 19, 33, 94]
df.loc[101] = {'Q1': 88, 'Q2':99}    # 指定列,无数据列值为NaN
df.loc[df.shape[0] + 1] = {'Q1': 88, 'Q2':99}     # 自动增加索引
# 批量操作,可以使用迭代
rows = [[1, 2], [3, 4], [5, 6]]
for row in rows:df.loc[len(df)] = row

7、追加合并

增加行数据的使用场景相对较少,一般是采用数据追加的模式。
df._append()可以追加一个新行

df = pd.DataFrame([[1, 2], [3, 4]], columns=list('AB'))
df2 = pd.DataFrame([[5, 6], [7, 8]], columns=list('AB'))
df._append(df2)

pd.concat([s1, s2])可以将两个df或s连接起来

s1 = pd.Series(['a', 'b'])
s2 = pd.Series(['c', 'd'])
pd.concat([s1, s2])
pd.concat([df1, df2])
pd.concat([df1, df2], join="inner")    # 只连相同列

8、删除空值

df.dropna()    # 一行中只要有缺失值就删除
df.dropna(axis='columns')    # 列中只要有空值就删除列
df.dropna(how='all')    # 行或列全部为空才删除
df.dropna(thresh=2, axis=0)    # 不足两个非空值时删除
df.dropna(inplace=True)

9、删除

删除有两种方法,一种是使用pop()函数,使用该函数,Series会删除指定索引的数据同时返回这个被删除的值,DataFrame会删除指定列并返回这个被删除的列。以上操作实时生效。

# 删除索引为3的数据
s.pop(3)
# 删除Q1列
df.pop('Q1')

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

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

相关文章

layui select 绑定onchange事件失效

layui select 绑定onchange事件失效 问题背景解决方案 问题背景 在日常工作中&#xff0c;可能会用到页面 freemaker 以及 layui 前端框架&#xff0c;这个时候直接在 select 上面绑定 onchange 事件往往是不生效的&#xff0c;错误的方式 这种方式给 select 绑定的 onchange…

智慧景区新篇章:山海鲸可视化管理解析

随着旅游业的蓬勃发展&#xff0c;景区管理面临着越来越多的挑战。如何提升游客体验、优化资源配置、确保游客安全&#xff0c;成为景区管理者亟需解决的问题。山海鲸智慧景区管理可视化系统&#xff0c;以其先进的技术和创新的理念&#xff0c;为景区管理带来了全新的解决方案…

图像ISP——AGC参数解析

前言 AWB和AGC是两种常见的自动调整功能。AWB用于自动调整图像的白平衡&#xff0c;以确保颜色在不同光照条件下仍然看起来自然。而AGC则用于自动调整图像的增益&#xff0c;以在不同的亮度条件下保持适当的曝光。 代码例程 static AWB_AGC_TABLE_S g_stAwbAgcTable {/* bvali…

鸿蒙应用开发者高级认证指南及参考资料整理(含详细参考答案)

如何报名鸿蒙应用开发者高级认证 报名链接:点击这里进行报名。报名步骤: 点击上述链接进入报名页面。选择“立即报名”。在课程内容中找到“HarmonyOS应用开发者高级认证”,点击进入。点击“参加考试”,随后即可开始考试。考试注意事项 实名认证:考试前,请务必完成实名认…

厉害了,OPCUA协议助力航天工业探索苍穹!

今年以来&#xff0c;航天科技真是捷报频频&#xff0c;神州十八号载人飞船和嫦娥六号均发射成功&#xff01;还让宇航员成功地进入了天宫空间站&#xff0c;可喜可贺。说到航天过程&#xff0c;其中有一个环节尤为重要&#xff0c;就是布置众多望远镜。有人可能会问&#xff0…

赣红孵联合卫东街道未保站开展未成年人保护法散落在每个角落活动

为进一步提高家长的法治意识&#xff0c;依法保障未成年人的合法权益&#xff0c;全力构建安全和谐文明家庭&#xff0c;5月8日&#xff0c;赣红孵社会组织培育中心联合卫东街道未成年人保护站在在南师附小红谷滩校区实验小学开展“未成年人保护法散落在每个角落”未成年人普法…

Liunx日志轮转

目录 一.日志的重要性 二、日志系统rsyslog 常见的日志文件(系统、进程、应用程序) 日志优先级 三、logrotate日志轮转 什么是日志轮转&#xff1f; logrotate 的工作方式 logrotate 配置文件 logrotate命令 一.日志的重要性 Linux日志文件对于理解和解决系统中出现的…

vue基础配置

vite.config.ts import { defineConfig } from vite import vue from vitejs/plugin-vue import path from "path"; //引入svg需要用到的插件 import { createSvgIconsPlugin } from vite-plugin-svg-icons //mock插件提供方法 import { viteMockServe } from vite-…

MySQL慢查询SQL优化

一、慢查询日志 描述&#xff1a;通过慢查询日志等定位那些执行效率较低的SQL语句 查看 # 慢查询是否开启 show variables like slow_query_log%; # 慢查询超时时间 show variables like long_query_time%;执行SQL 开启慢查询日志 set global slow_query_log ON;设置慢查…

笔试强训week4

day1 Q1 难度⭐⭐ 小易的升级之路_牛客题霸_牛客网 (nowcoder.com) 题目&#xff1a; 小易经常沉迷于网络游戏.有一次,他在玩一个打怪升级的游戏,他的角色的初始能力值为 a.在接下来的一段时间内,他将会依次遇见n个怪物,每个怪物的防御力为b1,b2,b3...bn. 如果遇到的怪物防…

头文件相互包含 前向声明

目录 ClassA.h ClassA.cpp ClassB.h ClassB.cpp error: C2143: 语法错误: 缺少“&#xff1b;”(在“*”的前面) 当两个类需要相互访问对方的成员或方法时&#xff0c;通常意味着它们之间存在某种依赖关系。这种依赖关系可能源于类的设计或功能需求。以下是一个简单的例子&…

ffmpeg常用的命令(windows)

ffmpeg -i visit.mp4 查看信息 ffmpeg -i visit.mp4 -hide_banner 去掉无关的信息&#xff0c;只保留目标文件的信息 ffmpeg -i visit.mp4 visit.avi 转换文件信息 ffmpeg -i visit.mp4 -qscale 0 visit.avi 保留原始的视频质量输出 ffmpeg -i visit.mp4 …

latex编译参考文献是问号解决办法

一、背景 使用Latex写文章时&#xff0c;编译tex文件后&#xff0c;正文中参考文献会变为&#xff1f;号&#xff0c;具体解决办法如下。 二、latex编译参考文献是问号解决办法 找到tex源文件所在的文件夹&#xff0c;删除所有除tex文件同名的文件&#xff0c;重新编译即可&…

cookie,session,token

目的&#xff1a;解决用户登录状态 从一个简单的登录开始说起&#xff0c; 在我们访问bilibili的时候&#xff0c;第一次需要登录&#xff0c;但后续就不需要登录了&#xff0c;可以直接访问bilibili。 而且每次在页面请求服务器的资源都需要维持登录状态&#xff0c;如果没…

电商核心技术揭秘51:多渠道营销整合策略

相关系列文章 电商技术揭秘相关系列文章合集&#xff08;1&#xff09; 电商技术揭秘相关系列文章合集&#xff08;2&#xff09; 电商技术揭秘相关系列文章合集&#xff08;3&#xff09; 电商技术揭秘四十一&#xff1a;电商平台的营销系统浅析 电商技术揭秘四十二&#…

支付宝——图技术在金融反欺诈中的应用

目录 图在金融反欺诈中的应用背景 图驱动的感知研判决策处置 图在金融反欺诈中的演进 总结和展望

MySQL利用变量进行查询操作

在MySQL中&#xff0c;可以使用变量来存储查询结果&#xff0c;以便在随后的查询中使用。以下是一个示例&#xff0c;展示了如何使用变量进行查询操作&#xff1a; 创建一个示例表&#xff1a; CREATE TABLE example_table (id INT AUTO_INCREMENT PRIMARY KEY,name VARCHAR(…

OpenCV入门1:Python基础编程

目录 环境配置 Python基础语法 import 与 from...import If ... Else 语句 While 循环 For 循环 集合数据类型 列表 函数 类和对象 环境配置 详情请参考&#xff1a;Pycharm环境配置完整教程 Python基础语法 import 与 from...import 在 python 用 import 或者 f…

视频号音乐怎么下载

音乐&#xff0c;那个能够触动灵魂的艺术形式&#xff0c;穿越屏幕&#xff0c;流淌在视频号的每一个角落。然而&#xff0c;有时候&#xff0c;我们更希望能将那些动人心弦的旋律保存下来&#xff0c;让它们成为我们日常生活的一部分&#xff0c;陪伴我们度过每一个动人瞬间。…

DRM/RESP无法连接linux上redis的原因

问题一&#xff1a; redis.conf配置文件 进入到自己的redis软件目录 vim redis.conf 将bind 127.0.0.1 : 1 注释掉&#xff0c;改成bind 0.0.0.0&#xff0c;让远程所有ip都可以访问 将daemonize yes 守护进程&#xff0c;修改后可在后台运行 protected-mod…