Pandas 删除 DataFrame 部分行:精准删除满足条件的数据

如果你只想删除部分满足条件的行,可以使用 Pandas 的布尔索引来选择满足条件的行,并删除它们。

示例:删除 DataFrame 中满足条件 'column_name' == 'value' 的部分行

import random

# 随机种子,保证每次运行结果一致
random.seed(42)

# 根据条件选择行
condition = df['column_name'] == 'value'
selected_rows = df[condition]

# 随机选择要删除的行的比例(这里假设删除50%的行)
delete_ratio = 0.5
rows_to_delete = selected_rows.sample(frac=delete_ratio)

# 删除选定的行
df.drop(rows_to_delete.index, inplace=True)

代码说明:

  • random.seed(42):为了保证每次运行结果一致。
  • df['column_name']:你要匹配的列名。
  • 'value':你要匹配的值。
  • selected_rows:满足条件的行。
  • sample() 函数:随机打乱行的顺序。
  • delete_ratio:要删除的行的比例,这里假设删除50%的行。
  • drop() 函数:删除选定的行。

注意:

  • drop() 函数会直接修改原始 DataFrame 对象,如果你不希望修改原始数据,可以将删除的行保存到另一个变量中。

希望这对你有帮助!

Pandas 删除 DataFrame 部分行:精准删除满足条件的数据

原文地址: https://www.cveoy.top/t/topic/j1m 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录