Pandas 删除 DataFrame 部分行:精准删除满足条件的数据
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 对象,如果你不希望修改原始数据,可以将删除的行保存到另一个变量中。
希望这对你有帮助!
原文地址: https://www.cveoy.top/t/topic/j1m 著作权归作者所有。请勿转载和采集!