pandas行/列删除
pandas.DataFrame.drop()函数介绍
官方文档:pandas.DataFrame.drop
DataFrame.drop(labels=None, axis=0, index=None, columns=None, level=None, inplace=False, errors=‘raise’)
- labels: 要删除的行标签/列标签
- axis:默认取0删除行,取1删除列
- index:删除行(labels, axis=0 is equivalent to index=labels)
- columns:删除列(labels, axis=1 is equivalent to columns=labels)
- level:针对有多级行标或列标的集合,level=x 即按照 x 级行/列标删除整行
- inplace:默认inplace=False, 仅返回copy;inplace=True为在原dataframe上修改
- errors: {‘ignore’, ‘raise’}, default ‘raise’
Examples:
df = pd.DataFrame(np.arange(12).reshape(3, 4),columns=['A', 'B', 'C', 'D'])
# Output
dfA B C D
0 0 1 2 3
1 4 5 6 7
2 8 9 10 11
1. 列删除
# .drop()方法
df.drop(columns=['列名1', '列名2'])
# OR
df.drop(['列名1', '列名2'], axis=1)
# del方法(一次只能删除一列)
del df['列名']
# .pop()方法(一次只能删除一列)
df.pop('列名')
Example:删除 ‘B’ 和 ‘C’ 列
df.drop(['B', 'C'], axis=1)
# OR
df.drop(columns=['B', 'C'])
# OutputA D
0 0 3
1 4 7
2 8 11
2. 行删除
2.1 根据索引删除行
df.drop(['行名1', '行名2'])
Example:删除第0和1行
df.drop([0, 1])
# OutputA B C D
2 8 9 10 11
2.2 根据条件删除行
df.drop(df[条件].index)
Example:删除A列大于4的所有行
df.drop(df[df.A >= 4].index)
# OutputA B C D
0 0 1 2 3
3. 删除多级行标/列表的DataFrame
Example
midx = pd.MultiIndex(levels=[['speed', 'cow', 'falcon'],['speed', 'weight', 'length']],codes=[[0, 0, 0, 1, 1, 1, 2, 2, 2],[0, 1, 2, 0, 1, 2, 0, 1, 2]]) df = pd.DataFrame(index=midx, columns=['big', 'small'],data=[[45, 30], [200, 100], [1.5, 1], [30, 20],[250, 150], [1.5, 0.8], [320, 250],[1, 0.8], [0.3,0.2]])
# Outputbig small
lama speed 45.0 30.0weight 200.0 100.0length 1.5 1.0
cow speed 30.0 20.0weight 250.0 150.0length 1.5 0.8
falcon speed 320.0 250.0weight 1.0 0.8length 0.3 0.2
3.1 删除特定的索引组合
df.drop(index=('索引1', '索引2'))
df.drop(index='行名', columns='列名')
Example 1: 删除 ‘falcon’ 的 ‘weight’ 行
df.drop(index=('falcon', 'weight'))
# Outputbig small
lama speed 45.0 30.0weight 200.0 100.0length 1.5 1.0
cow speed 30.0 20.0weight 250.0 150.0length 1.5 0.8
falcon speed 320.0 250.0length 0.3 0.2
Example 2: 删除 ‘cow’ 行和 ‘small’ 列
df.drop(index='cow', columns='small')
# Outputbig
lama speed 45.0weight 200.0length 1.5
falcon speed 320.0weight 1.0length 0.3
3.2 按照行/列标删除
# 删除第 x+1 级行标, 默认为0
df.drop(index='行名', level=x)
# 删除第 y+1 级列标,默认为0
df.drop(columns='列名', level=y)
Example 1:删除第二级行标的 ‘length’ 行
df.drop(index='length', level=1)
# Outputbig small
lama speed 45.0 30.0weight 200.0 100.0
cow speed 30.0 20.0weight 250.0 150.0
falcon speed 320.0 250.0weight 1.0 0.8
Example 2:删除第1级行标的 ‘lama’ 行
df.drop(index='lama') # 默认 level=0
# Output:big small
cow speed 30.0 20.0weight 250.0 150.0length 1.5 0.8
falcon speed 320.0 250.0weight 1.0 0.8length 0.3 0.2
pandas行/列删除相关推荐
- python删除空值的行_python删除列为空的行的实现方法
python删除列为空的行的实现方法 发布时间:2020-07-17 17:26:54 来源:亿速云 阅读:112 作者:小猪 这篇文章主要讲解了python删除列为空的行的实现方法,内容清晰明了,对 ...
- pandas删除数据行中的重复数据行、基于dataframe所有列删除重复行、基于特定数据列或者列的作何删除重复行、删除重复行并保留重复行中的最后一行、pandas删除所有重复行(不进行数据保留)
pandas删除数据行中的重复数据行.基于dataframe所有列删除重复行.基于特定数据列或者列的作何删除重复行.删除重复行并保留重复行中的最后一行.pandas删除所有重复行(不进行数据保留) 目 ...
- pandas获得指定行_pandas取dataframe特定行/列
转自他人博客:https://blog.csdn.net/weixin_39586825/article/details/111758506 1.按列取.按索引/行取.按特定行列取 import nu ...
- pandas处理数据代码:分组聚合、保留重复行、删除重复行
txt转csv import numpy as np import pandas as pdtxt=np.loadtxt('1216.txt')txtDF=pDataFrame(txt) txtDF. ...
- R语言dplyr包移除dataframe数据行实战(Remove Rows):按照条件移除数据行、按照索引移除数据行、删除包含NA值的所有数据行、删除具体列包含NA值的数据行
R语言dplyr包移除dataframe数据行实战(Remove Rows):按照条件移除数据行.按照索引移除数据行.删除包含NA值的所有数据行.删除具体列包含NA值的数据行 目录
- python对csv数据提取某列的某些行_python pandas获取csv指定行 列的操作方法
pandas获取csv指定行,列 house_info = pd.read_csv('house_info.csv') 1:取行的操作: house_info.loc[3:6]类似于python的切片 ...
- python pandas读取csv文件指定行_python pandas获取csv指定行 列的操作方法
python pandas获取csv指定行 列的操作方法 pandas获取csv指定行,列 house_info = pd.read_csv('house_info.csv') 1:取行的操作: ho ...
- VBA-常用函数集锦-13-Excel多行或多列删除
系统:Windows 7 软件:Excel 2010 这个系列集锦了一些常用功能 今天说说对多行多列的删除操作 重点强调如何表示多行或者多列 数据源形式 Part 1:多行删除 通过Rows和Rang ...
- Python Pandas 行数据筛选方法汇总
Pandas 行数据筛选 一.准备数据 二.通过逻辑规则筛选(大于/小于等) 三.删除重复元素 三.显示最前面 / 最后面的 n 行 3.1 显示前面 n 行 3.2 显示后面 n 行 四.随机抽取 ...
最新文章
- 分享EOS加拿大的文章《REX——从源代码做技术解析》
- 实验三 ShellShock 攻击实验
- python海贼王logo_Python实现的下载op海贼王网的图片
- 一段话系列-Java是否是解释执行语言?
- python调用perl_在Perl、Shell和Python中传参与输出帮助文档
- mybatis源码阅读(五) ---执行器Executor
- Java面试题!java面向对象程序设计答案
- 2021-2025年中国船用辅机行业市场供需与战略研究报告
- 【系统自启动】使用windows自带工具管理开机启动项
- 微信小程序制作-随笔4
- 利用Dojo和JSON建立无限级AJAX动态加载的功能模块树
- 值类型和引用类型 是什么 区别
- C# xml压缩包不解压的情况下解析xml内容
- Burp Suite使用介绍说明
- 《CSS世界》学习感想(持续更新)
- 在旭日X3派开发板上使用USB Wifi来提高网络速度
- levene ttest
- 老毛桃u盘装系统linux,老毛桃U盘装系统综合教程
- 卡耐基沟通成功学—戴尔·卡耐基
- 拍照爱摆“剪刀手”?呵呵,1.5米内100%还原指纹
热门文章
- Cortex-M4操作模式
- 记应聘:华为 可信理论、技术与工程实验室 产品数据工程师
- 移动硬盘部分分区不能识别解决方法
- Ubuntu 20.04 grub更换windows10为默认启动项
- 如何从 GRUB rescue 恢复 Win7,win7 USB恢复盘制作
- 报错:version magic ‘3.10.0_hifone SMP mod_unload ARMv7 p2v8 ‘ should be ‘3.10.0_s40 SMP mod_unload ARM
- 理想低通滤波器(频率域滤波)
- 2018华为暑假实习面试
- 常用的hook js
- ParaView-1