列表数据清洗遇到问题的记录——set用法和remove方法的缺陷

数据清洗不是预处理,而是模型性能的隐形天花板 数据清洗是机器学习中保障模型泛化能力与业务可信度的基础环节,其本质在于识别并修复数据生成链路中的语义偏差与采集噪声。不同于传统ETL的规则校验,现代AI场景下的清洗需融合领域知识、特征语义分析与模型反馈闭环,核心目标是提升数据‘可信度’而非仅满足格式合规。Cleanlab等标签纠错工具、聚类发现采集异常、预测对比标注法等技术路径各有适用边界,关键在于构建可追溯、可量化、可迭代的数据质量治理框架。本文聚焦工业级实践,覆盖数据质量仪表盘设计、梯度处置策略、时间衰减置信度建模及清洗副作用规避,助力算法工程师从调参 阅读详情

爬虫过程中会由于各种原因导致数据重复以及确实,如网络中断,网络质量差,ip限制等等,因而进行数据清洗十分必要。
在这个爬虫中,由于ip限制,为了尽量保证数据的完整性,尽量收集最多的数据,因而具有明显的重复率。
重复率清洗的思路:
1、初始的思路是按照选择排序法进行删重(刚刚学了选择排序法想用一下且没有想起set)
对选择排序法进行改造
在这里插入图片描述
初始的想法就是将 if data[i] > data[j]:这个if语句改为if data[i] == data[j]:,以实现重复内容的删除。
问题:
这里遇到的问题就是没有正确理解选择排序法的含义,将i的取值等于整个数据列表的长度而不是该长度-1 ,因为i代表前一个元素,因而其不能遍历到最后一个元素,因而对i的赋值需要比元素的个数少一个;而与之相反,j的取值则需要减少第一个元素而保留最后一个元素,因而为for j in (i+1,len(url)):

这个问题的失误导致报错:IndexError: list index out of range
示例:
在这里插入图片描述
IndexError: list index out of range的解决:
许多博文都提到,这个报错是由于越界或者空值,即列表索引超出列表元素个数的数组越界和该索引的元素为空值,而在这个爬虫中明显不可能是空值,因而只可能是数组越界,也是由此才重新去细看了选择排序法并理解了它。
其次,为remove语句存在的问题,
报错:ValueError: list.remove(x): x not in list
找了许多文章,很多都没有用,比如
《pycharm的python文件报“ValueError: list.remove(x): x not in list”错误》的方法其实就是一个掩耳盗铃的方法,一般使用了grep console的报错会有颜色,这篇文章的解决方法就是要颜色不要显示!!!

在这里插入图片描述
以下这篇为有用的博文:
《python:在for遍历list时使用remove出现的问题以及解析》
我的理解为:列表元素删除后产生一个新列表,就是原列表的删除元素后组成的列表,每次删除都会形成这样一个新列表;但是索引仍为原列表索引就是遗漏。

虽然找到了remove的局限性,并参照另一篇《Python列表的remove方法的注意事项》进行尝试解决,但是我没有用其中的方法,而是尝试对原列表进行了复制
在这里插入图片描述
然后依据原列表的重复元素在副本列表中进行删除
在这里插入图片描述
但是这个报错还是出现了,大致在第13个重复元素中,照理说并应该存在问题——希望大神能够指出!!!!!!!!!!!!!!!!!!!!!!!!

于是我用try: except:进行异常的跳过,跳过后重复元素确实删除了,但是不知道为什么多删了一个不重复的元素。

在这条路走不通后,突然想起了set函数,现在终于解决了!!!!
但是对于第二个报错始终不理解,留待后续。。。。。。。。。

[1]https://blog.youkuaiyun.com/circle2015/article/details/64444300?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522158678637719724845025972%2522%252C%2522scm%2522%253A%252220140713.130102334…%2522%257D&request_id=158678637719724845025972&biz_id=0&utm_source=distribute.pc_search_result.none-task-blog-soetl_SOETLBAIDU-3

[2]http://blog.sina.com.cn/s/blog_678b56660102w6tp.html

[3]https://blog.youkuaiyun.com/qq_41612692/article/details/88833386?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522158678637719724845025972%2522%252C%2522scm%2522%253A%252220140713.130102334…%2522%257D&request_id=158678637719724845025972&biz_id=0&utm_source=distribute.pc_search_result.none-task-blog-soetl_SOETLBAIDU-2

Python集合性能原理与高阶实战:从去重到权限校验 集合(set)是Python中基于哈希表实现的内置数据结构,核心特性为O(1)平均时间复杂度的成员判断、天然去重与无序存储。其底层依赖可哈希性约束和开放寻址哈希冲突处理机制,决定了它在数据清洗、权限校验、ETL去重等场景中不可替代的技术价值。相比列表的O(n)线性查找,集合在百万级用户ID匹配、技能存在性检查、角色权限交集计算等工程任务中可提速百倍以上。本文深入解析集合的内存布局、可哈希性铁律、frozenset嵌套方案及生产环境十大陷阱,覆盖从初始化、数学运算到线上压测的完整实践链路。 阅读详情

相关推荐

Python四大核心数据结构选型与性能契约解析

Python的数据结构不是语法糖,而是定义程序行为与性能的底层契约。list、tuple、dict、set分别代表线性序列与映射集合两大范式,其设计直指内存模型、时间复杂度和安全语义。理解它们的可变性声明、哈希约束、顺序保证与查找效率,是写出高效、健壮代码的基础。在日志处理、配置管理、用户分群、API响应等真实工程场景中,错误选型会导致P99延迟飙升、内存泄漏或静默逻辑错误。本文聚焦list的动态扩容机制、tuple的不可变快照价值、dict的哈希查找原理及set的集合运算能力,揭示如何依据‘是否需键值映射

cishan3804的博客 471

Python集合set实战:数据去重、权限校验与高性能成员检测

集合(set)是Python中基于哈希表实现的无序唯一容器,其O(1)平均时间复杂度的成员检测能力,使其成为高频‘存在性判断’场景(如黑名单校验、权限比对、去重清洗)的首选数据结构。相比列表的O(n)线性查找,set通过哈希定位规避遍历开销,在电商风控、SaaS权限系统、日志分析等真实工程场景中可将响应延迟降低数十倍。它天然支持交并差等集合论运算,语义清晰且性能优越;但需严格满足元素可哈希性、唯一性与无序性约束。本文聚焦set在数据清洗与RBAC权限校验中的落地实践,涵盖初始化避坑、discard与remo

csdndownload11123的博客 451

Python元组完全指南:从创建、增删改到性能优化与实战应用

在Python编程中,数据结构是构建程序的基础。列表和字典因其灵活性而被广泛使用,但元组(tuple)凭借其不可变性(immutable)特性,在特定场景下提供了数据安全和性能优势。其核心原理在于,一旦创建,元素便无法被修改,这为数据完整性提供了保证,并使其可作为字典的键(hashable)。从技术价值看,元组在多线程数据共享、函数多返回值、配置项定义等场景中,能有效避免意外数据竞争,提升代码健壮性。结合“python安装”和“环境配置”等高频场景,元组常用于定义如数据库连接参数等固定配置。本文深入探讨了元

weixin_34128839的博客 416

remove方法缺陷补全:续《列表数据清洗遇到问题的记录——set用法和remove方法的缺陷》

remove方法缺陷补全:续《列表数据清洗遇到问题的记录——set用法和remove方法的缺陷》一、问题二、解决方法 一、问题 remove方法缺陷:需要删除的内容没有办法完全删除 现象:见上一篇文章《列表数据清洗遇到问题的记录——set用法和remove方法的缺陷》,链接: link. 上一次的可以通过set进行重复值剔除,但是此次不是重复值剔除,不能运用set方法,出现了剔除不干净 这次是我在进行jieba分词的停用词处理时遇到的问题,不能用set方法的重复值剔除。 如下,停用词中加入了“本院”, 希

python__reported的博客 2942

Codex CLI 安装与配置全指南:Node.js 开发者高效接入大模型

命令行工具(CLI)是现代软件开发中连接开发者与自动化能力的核心接口,其本质是将复杂逻辑封装为可复用、可脚本化的终端指令。理解 CLI 的工作原理,需从 Node.js 运行时环境、npm 包管理机制及系统 PATH 路径解析等底层机制入手——这决定了工具能否真正融入日常开发流。技术价值在于将大模型能力从浏览器对话框下沉为 IDE 外的‘副驾驶’,实现自然语言到可运行代码的秒级闭环。典型应用场景包括 Git Hook 自动化、代码解释、本地模型对接(如 DeepSeek)及 API 驱动的智能生成。本文聚焦

weixin_34337381的博客 589

破解拼多多网页字体加密的Python实现(静态)

爬取或者复制粘贴出来发现数字不是6372,而是这样的一个东西 ""从上图我们可以看出数字是一行的空白,后面被浏览器渲染后才展现的数字。我们可以用这个代码查看十六位进制对应的十进制,为什么要看十进制呢?​,而字体文件中的字符映射关系(cmap)也是以十进制存储的。我们搜索这个属性我们可以看到第一个这样的属性有一个URL,这个就是解密的字体包。然后我们构造一个这样的映射字典 key就是对应的十进制,后面的值就是对应的数字。然后我们需要封装一个函数,将加密文字和映射字典传入,返回解密后的数字。

weixin_64179111的博客 3539

关于Java的坑问题来源于占小狼公众号今天发的几个问题

今天看公众号的时候,看到占小狼公众号有篇文章叫Java中的坑,然后就点进去看了,我先罗列一下问题:``` Set<Integer> set = new HashSet<>(); for (int i = 0; i < 100; i++) { set.add(i); set.remove(i-1); } System.out.println(set.size()); ```

墨笙弘一 617

手把手教你用Cadence VPWLF源和参数扫描:搞定非周期激励与gmid曲线绘制(避坑指南)

本文详细介绍了如何在Cadence Virtuoso中使用VPWLF源生成复杂非周期激励信号,并结合gmid方法进行双参数扫描优化电路设计。通过实战案例和避坑指南,帮助工程师高效解决波形生成和参数可视化难题,提升模拟电路设计效率。

weixin_29260291的博客 424

记一次多线程错误的坑

总所周知,java.util.concurrent包为我们提供了一系列并发处理工具,其中BlockingQueue是我们实现生产者消费者模式较为便利的工具,其主要方法有: add增加一个元索如果队列已满,则抛出一个IIIegaISlabEepeplian异常 remove移除并返回队列...

我的头发呢? 248

在 Kubernetes 上部署 Label Studio

Label Studio 是一款开源的数据标注工具,支持多种标注任务,如文本标注、图像标注、音频标注等。

啥都会一点 668

postman响应体:“msg“: “请求缺失签名Sign“、 “msg“: “请求缺失时间戳“

请求标头有Sign、Timestamp,但是直接将网址复制到postman时,Headers没有自动生成这两个参数,所以运行时会报错。

m0_46862648的博客 1706

HashSet.remove()失效

如果重写了添加元素的hashCode()和equasl()方法,修改添加元素的属性值后再把该元素remove掉,可能会操作失败 // 代码分析 @SuppressWarnings({"all"}) public class HashSetTest2 { public static void main(String[] args) { HashSet<Object> pe = new HashSet<>(); // pe添加两个元素

还是要稳扎稳打 1200

Isaac Sim 车辆动力学:从参数调优到户外仿真的挑战与实战

本文深入探讨了Isaac Sim在车辆动力学仿真中的应用,从参数调优到户外场景模拟的实战经验。详细解析了悬架系统、轮胎物理模型等核心参数的设置技巧,并分享了应对户外仿真挑战的实用方案。通过Vehicle Wizard高级使用和传感器配置,帮助开发者高效完成车辆仿真与算法开发。

weixin_29192211的博客 404

机器学习工业落地的5个核心工作流:从数据清洗到业务解释

机器学习并非算法竞赛,而是端到端的工程闭环——其本质是将原始数据转化为可信赖、可干预、可运维的业务决策。核心原理在于:用领域知识校准数据分布、以因果逻辑构建时序特征、借时间切分模拟真实部署压力、靠贝叶斯先验约束超参搜索、通过Partial Dependence Plot实现业务可操作解释。这些技术价值不在于提升0.01的AUC,而在于降低误报率、压缩上线周期、支撑现场调控。典型应用场景覆盖设备故障预测、供应链需求拆解与医疗影像初筛等强业务耦合任务。本文聚焦特征工程与验证策略两大高频卡点,揭示工业级模型稳健性

weixin_34189116的博客 432

消息平台接入实战:Hermes Agent 实现微信/钉钉日常任务自动化的 4 步配置

揭示 Hermes Agent 接入微信/钉钉时高频失效的根本原因——非 API 调用问题,而是上下文边界缺失;详解通过 soul.md 锁定人格基线、skills/ 目录原子化封装技能、CLAUDE.md 控制记忆节奏、Docker 环境适配四步构建可信赖自动化信任链,并给出身份证号过滤、中文标点

weixin_42520239的博客 163

某城商银行生产容器云平台详细设计方案分享及经验总结

AS3模式的CIS容器部署在K8S集群内,作为F5的控制器,CIS容器通过对K8S集群内Configmap资源进行监控,将Configmap资源中的内容转化为F5的配置,将配置推送给 F5 ,CIS容器还通过K8S标准的API接口完成业务发现和实时监听集群内Pod的变化,一旦Pod发生变化,相应的更新会及时推送给F5,并完成更新。容器技术发展非常迅速,现在应用大多以容器作为承载介质,前两年在容器云上承载的应用类型主要是Web类,随着容器云领域的不断发展,越来越多的应用类型将迁移至容器云,包括有状态应用。

qq_61890005的博客 856

大模型全链路实操地图:从数据清洗到生产监控的工程化路径

大模型落地不是调用API或复现论文,而是覆盖数据、模型、推理、系统四阶的端到端工程实践。其核心原理在于:数据质量决定性能上限,模型选型需匹配业务分布与硬件约束,推理优化依赖对vLLM/PagedAttention等底层机制的理解,系统集成则要求与业务流水线建立可审计的数据契约。技术价值体现在显存可控、延迟可测、效果可溯——例如LoRA微调参数组合、KV Cache复用率、RAG chunk语义完整性等关键指标,均需在真实GPU环境(如A100/H100)中实测验证。典型应用场景包括金融问答、设备日志摘要、教

weixin_33743880的博客 382

使用Python爬虫获取Facebook帖子和评论数据

Web爬虫是用于自动抓取网页数据的程序。它通过发送HTTP请求,获取网页的HTML源代码,再对源代码进行解析,提取所需的内容。爬虫常用于数据收集、信息提取、数据分析等应用。

2201_76125261的博客 1998

大模型微调中词向量演化的动态可视化方法

词向量是大语言模型语义理解的核心载体,其在微调过程中的高维空间演化直接反映模型认知结构的重构。理解这一演化需突破静态快照局限,借助降维、时序建模与可视化技术,将抽象向量位移转化为可解释的动态轨迹。UMAP因其跨帧坐标一致性成为生产首选,配合语义感知采样与运动学插帧,能真实还原嵌入层的‘相变点’与‘漂移趋势’。该技术不仅支撑算法调试(如识别‘心梗’与‘胸痛’异常靠近),更赋能产品经理、领域专家等非技术角色参与模型评估——通过观察‘高血压’‘糖尿病’等临床术语的相对距离变化,实现对微调语义合理性的快速判断。

weixin_30256901的博客 340

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

数据科学五大核心Python库实战指南

在数据科学工程实践中,pandas、NumPy、scikit-learn、Matplotlib/Seaborn和Statsmodels构成稳定可靠的技术基座。它们分别支撑数据清洗、数值计算、机器学习建模、可视化表达与统计推断四大基础能力,其设计哲学强调可复现性、内存可控性与接口一致性。相比前沿深度学习框架,这五个库覆盖了80%以上生产级项目的真实工作流——从千万行销售数据的向量化处理,到时间序列预测的残差诊断,再到端到端Pipeline部署与自动化PDF报告生成。尤其pandas的query链式操作与sci

weixin_33802505的博客 418

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

朴素贝叶斯DNA序列分类:k-mer特征与生物可解释性实践

DNA序列功能注释本质上是离散符号序列的多类别文本分类问题。其核心原理在于将碱基串转化为具有生物学判别力的局部模式(如k-mer),再通过概率建模建立模式与基因家族标签间的统计关联。朴素贝叶斯凭借对稀疏计数特征的天然适配性、极低计算开销和强可解释性,成为小样本生信场景下高效可靠的技术选择。它无需GPU即可在普通笔记本完成训练,输出结果可直接映射至启动子、结合域等真实生物学元件,支撑假说生成与湿实验验证。本文聚焦于k-mer编码、CountVectorizer稀疏向量化及alpha=0平滑策略等关键工程实践,

abo1977的博客 471

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

R语言H-1B数据爬取与清洗实战:从USCIS反爬到结构化分析

H-1B签证数据是研究美国劳动力市场与移民政策的关键非结构化政府公开数据,其核心挑战在于数据‘公开但难取’——源头分散于PDF、动态HTML及受控JSON API,且普遍采用Referer校验、分页Token和反爬限流等机制。理解HTTP会话管理、XHR请求模拟与文本语义清洗原理,是实现稳定抓取的技术基础;而rvest+httr2组合凭借细粒度协议控制与生态内联分析能力,在处理薪资单位换算、职位标题标准化、地理编码等清洗任务时展现出显著工程优势。本文聚焦真实USCIS H-1B Employer Data

anjueci1221的博客 352

R语言中文音乐文本分类实战:LDA主题建模与可解释机器学习

主题建模是将非结构化文本转化为结构化语义特征的核心技术,其原理基于词项-文档共现统计与概率隐变量推断,技术价值在于无需标注即可发现潜在语义维度,并支持跨模态特征融合。在内容理解场景中,它被广泛应用于音乐风格识别、乐评情感解析、文化符号挖掘等任务,尤其适合中小规模、高业务可解释性要求的NLP项目。本文聚焦R语言生态下的中文音乐文本处理实践,深度融合quanteda中文分词控制与LDA主题建模,解决扫描PDF乐评OCR噪声、文化专有名词识别、修辞特征量化等真实工程难题,实现歌词与音频双通道驱动的可回溯分类。

weixin_30237719的博客 342

LangChain Pandas Agent实战:用自然语言分析Excel数据

Pandas是Python数据分析的核心库,而LangChain Agent则代表了大模型与代码执行深度协同的新范式。其核心原理在于构建‘思考-行动-观察’的闭环决策链,将自然语言问题动态编译为pandas、matplotlib等可执行代码,在安全沙箱中完成数据清洗、统计分析、可视化与建模。这种具身智能架构显著降低了数据分析门槛,使业务人员无需掌握SQL或Python即可探索数据,尤其适用于销售报表解读、运营异常检测、跨部门临时取数等高频轻量场景。本文聚焦LangChain Pandas Agent的工程化

weixin_30421809的博客 367

多标签文本分类实战:基于LabelPowerset的Stack Overflow标签推荐系统

多标签文本分类是自然语言处理中处理一个样本对应多个语义类别的核心任务,其本质在于建模标签间的依赖关系与共现模式,而非简单叠加多个二分类器。技术原理上,它需突破单标签分类的互斥假设,通过结构化输出空间(如标签组合编码)或相关性建模(如图神经网络、条件概率加权)来捕捉语义协同。该技术具备显著工程价值:提升标注效率、增强模型可解释性、支撑长尾标签识别,并广泛应用于技术社区标签推荐、内容多维度打标、医疗诊断辅助、电商商品属性抽取等场景。本文聚焦真实工业级落地,深入解析LabelPowerset策略如何解决标签耦合、

weixin_34115824的博客 457
上一篇: pycharm精选插件实测推荐---持续更新中
下一篇: Python IDE简单测试推荐
python__reported
博客等级 码龄7年 249粉丝 141原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值