Python按条件删除嵌套列表中的元素

本文介绍了在深度学习数据预处理时,如何使用Python通过脚本按条件删除嵌套列表中的元素,包括两个步骤:遍历找到符合条件的元素并替换,然后在新的循环中使用remove()函数移除。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

今日在做深度学习过程中,数据采集的时候,因为粗心,coding有一个小bug没有看出,但是不影响数据采集。又因为数据采集量比较大,索性就按照出错的方式,直接写脚本对数据进行处理,将bug抵消掉。

思路:(1)for循环遍历,找出符合条件的元素,并将元素赋值成不会出现的数据,并做好count计数

            (2)再建立一个新的循环,在count中调用remove()函数

b=len(data)   #data是你要操作的嵌套列表
count = 0
for num in range(0,b):
    data_get = data[b-1-num]
    #print(data_get)
    data_len =len(data_get)
    #print(num)
    
    if data_len==12:    #符合的条件一
        data[b-1-num-1]='0'
        data[b-1-num-2]='0' 
        count=count+2   #
    elif data_len==8:   #符合的条件二
        
        data[b-1-num-1]='0'       
        count=count+1
    else:
        continue  
#删除元素
for i in range(1,sum+1):
    data.remove('0')
print(data)

CSV删除空白行:CSV有时候拿到的数据是一行数据一行空白,可以按以下方式处理。当然如果你的数据是自己获取,那么,在保存数据时,直接保存为无空白行的格式。

import csv
csv_read = csv.reader(open("/home/windme/1KAT-WALK-C/rawData_walk_C/Raw_Data/1.csv",'r'))#原文件
out=open('data_1.csv','a')#保存的文件
csv_write = csv.writer(out,dialect='excel')#写入文件
data = []
for i in csv_read:
    data.append(i)
    #print(len(i))
#print(len(data))
len_data = len(data)
print(len_data)
for i in range(1,int(len_data/2)+1):
    del data[i]
for data_in in data:
    csv_write.writerow(data_in)
print(len(data))
#print(data)

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值