Pandas csv 文件,按条件删除行

参考:Pandas怎样按条件删除行?

直接上代码:

import pandas as pd
import glob

csv_path = glob.glob("*.csv")[0]
df = pd.read_csv(csv_path)
df.sort_values("model-index", inplace=True)

# 按条件筛选待删除的行索引,以下三行脚本分别是单条件,双条件取交集,双条件取并集
row_indexs = df[df["model-index"]%5000!=0].index
# row_indexs = df[(df["model-index"]%5000!=0) & (df["loss_pixel"]<0.5)].index
# row_indexs = df[(df["model-index"]%5000!=0) | (df["loss_pixel"]<0.5)].index

# 执行删除
df.drop(row_indexs,inplace=True)

print(df)

csv示例文件:

my_data.csv

,model-index,loss_pixel,temp_loss,Global_loss
0,100000,0.7922,0.5662,0.7922
1,10000,0.7537,0.34,0.7537
2,1000,0.6327,0.4529,0.6327
3,11000,0.7621,0.3232,0.7621
4,12000,0.7677,0.3061,0.7677
5,13000,0.7746,0.2945,0.7746
6,14000,0.7819,0.2826,0.7819
7,15000,0.7864,0.2832,0.7864
8,16000,0.7904,0.2746,0.7904
9,17000,0.792,0.2802,0.792
10,18000,0.7955,0.2898,0.7955
11,19000,0.7985,0.2933,0.7985
12,20000,0.7963,0.2953,0.7963
13,2000,0.6529,0.4596,0.6529
14,21000,0.7992,0.2925,0.7992
15,22000,0.7972,0.3098,0.7972
16,23000,0.8017,0.3102,0.8017
17,24000,0.8007,0.3246,0.8007
18,25000,0.8006,0.3457,0.8006
19,26000,0.8014,0.3576,0.8014
20,27000,0.8046,0.3747,0.8046

 

  • 3
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值