如何利用Pandas删除某列指定值所在的行

作者:DonngZH 时间:2023-10-29 11:49:39 

前言

使用pandas对数据操作,筛选数据时,根据任务要求有时不仅要某列中存在空值的行,并且要删除某列中指定值所在行。

1.data.dropna()

默认参数:
data.dropna(axis=0, how='any', thresh=None, subset=None, inplace=False)

1-1 axis确定删除存在缺失值的行或者是列

#删除含有缺失值的行
axis=0或axis='index'
#删除含有缺失值的列
axis=1或axis='columns'

1-2 how 确定存在缺失值时,是否删除行或者列

how='all'或how=‘any'。

how='all'时表示删除全是缺失值的行(列)

how='any'时表示删除只要含有缺失值的行(列)

1-3 thresh=n表示保留至少含有n个非na数值的行

data.dropna(thresh=2)

1-4 subset确定要在哪些列中查找缺失值

#在source和target两列中查找缺失值
data.drop(subset = ["source","target"])

1-5 inplace确定是否直接在原DataFrame修改

#删除缺失值后不在原data上修改
inplace = False
#删除缺失值后在原data上修改
inplace = True

2.data.drop

默认参数:
data.drop(
   labels=None,
   axis=0,
   index=None,
   columns=None,
   level=None,
   inplace=False,
   errors='raise',
)

2-1 labels 指定行或者列的名称

#参数axis为0表示在0轴(列)上搜索名为“姓名”的对象,然后删除对象“姓名”对应的行。
data.drop("姓名",axis = 0)

#参数axis为0表示在1轴(行)上搜索名为“姓名”的对象,然后删除对象“姓名”对应的列。
data.drop("姓名",axis = 1)

2-2 index 指定要删除的行

#删除data中索引为0和1的行
data.drop(index = [0,1])

2-3 columns 指定要删除的列

#删除data中列名为“source”和“target”的列
data.drop(columns=['source', 'target'])

3.实例

任务需求:删掉“ZH_Term_len”列中值为0的全部行。

如何利用Pandas删除某列指定值所在的行

3-1 统计0的数量

#统计“ZH_Term_len”一列中有多少个0
data["ZH_Term_len"].value_counts()

如何利用Pandas删除某列指定值所在的行

3-2 找出0的索引

data[(data.ZH_Term_len == 0)].index.tolist()

如何利用Pandas删除某列指定值所在的行

3-3 使用drop函数以及index参数删除所在的行

data =  data.drop(index = data[(data.ZH_Term_len == 0)].index.tolist())

3-4 查看数据

data.info()

如何利用Pandas删除某列指定值所在的行

3-5 将索引重新排序

#会将标签重新从零开始顺序排序,使用参数设置drop=True删除旧的索引序列
data = data.reset_index(drop=True)

3-6 统计“ZH_Term_len”列中值的数量

如何利用Pandas删除某列指定值所在的行

 统计后发现,“ZH_Term_len”列中值为0的行已经全部被删除掉。

来源:https://blog.csdn.net/weixin_44750512/article/details/122436249

标签:pandas,删除,指定值
0
投稿

猜你喜欢

  • pycharm配置当鼠标悬停时快速提示方法参数

    2022-12-07 09:24:41
  • Python:slice与indices的用法

    2021-09-10 22:31:09
  • Windows下anaconda安装第三方包的方法小结(tensorflow、gensim为例)

    2021-09-14 00:22:11
  • ASP+SQLServer2000 经验积累

    2008-02-03 15:16:00
  • vue3.0如何使用computed来获取vuex里数据

    2024-04-28 09:24:20
  • 四行Python3代码实现图片添加美颜效果

    2021-01-25 10:29:30
  • Access数据库出现0x80004005问题的解决方法

    2008-11-28 14:25:00
  • .Net中控件的命名规则

    2024-06-05 09:25:15
  • python 安全地删除列表元素的方法

    2022-11-20 16:21:35
  • Python的进制转换和ASCLL转换你了解吗

    2021-09-18 05:33:59
  • JavaScript动态调整图片尺寸

    2009-11-23 12:20:00
  • jupyter notebook内核启动失败问题及解决方法

    2022-09-21 02:31:04
  • python删除文件、清空目录的实现方法

    2021-06-02 02:53:06
  • Matplotlib使用字符串代替变量绘制散点图的方法

    2021-04-18 06:10:11
  • 详解pandas删除缺失数据(pd.dropna()方法)

    2021-03-26 04:36:33
  • python求列表对应元素的乘积和的实现

    2023-05-13 15:10:24
  • PHP中__LINE__,__FILE__,__DIR__等常用魔术常量实例讲解

    2023-06-13 23:42:32
  • mysql 中如何取得汉字字段的各汉字首字母

    2024-01-12 20:08:57
  • sql server如何去除数据中的一些无用的空格

    2024-01-18 02:22:22
  • Python算法应用实战之队列详解

    2022-08-21 11:49:33
  • asp之家 网络编程 m.aspxhome.com