pandas数据分析实战指南:从数据清洗到分组聚合全掌握
1. 为什么数据分析入门第一站是pandas而不是别的工具我第一次正儿八经用pandas是一个周五下午。手里的Excel表格已经到了30多万行每次筛选都要卡十几秒同事在旁边等数据等得直叹气。那时候我还不会写什么复杂的代码唯一会的就是在单元格里拖公式拉到怀疑人生。刚好一个前辈路过看了一眼说“拿pandas处理一下就行你这情况就是它的主场。”当天晚上我熬夜装了环境照着别人的代码把数据读进来、按条件筛出来、按日期一汇总那种感觉怎么说呢——就像你一直用手工锯木头突然有人塞给你一把电锯。后来这些年我带过的实习生、转行的同事基本也都是从pandas入门的。如果你是想做数据分析但还没定下来学什么工具的人我建议你认真把pandas学一学。它不是唯一的选择但绝对是最友好、覆盖面最广的起点之一。它能帮你解决表格数据读取、清洗、筛选、分组、合并、输出这一整个流程里九成以上的问题而且语法足够直观即使你只有一点点Python基础也能很快上手。不过先得说清楚一件事pandas不是万能的。它最适合处理的是“结构化表格数据”就是你脑子里想象的那种行和列整整齐齐的数据。图像、音频、文本这类非结构化数据它有专门方法但不算强项亿级以上的超大数据集它也会有内存压力。所以这篇分享的定位就是入门和日常高频操作把最实在的用法讲透。我想用这篇文章把pandas里最核心、最常用的东西串一遍。不管是完全零基础的小白还是已经会用Excel但想升级效率的同学都可以照着操作走一遍。文中会穿插我自己踩过的坑和实际工作里总结下来的习惯这些是你在语法文档里不太容易看到的也是我觉得最值钱的部分。2. 先把两个核心数据结构搞明白Series和DataFrame很多人在学pandas的时候容易一上来就背函数遇到一个记一个记一个忘一个。我建议反过来先把底层的数据结构搞明白。pandas本质上就是围绕两种数据结构在转Series和DataFrame。理解了它们后面所有操作都是在做“对这两种结构进行变换”。2.1 Series带标签的一维数组Series可以理解成一个“带名字下标”的一维数组。普通Python列表只有位置下标0、1、2……而Series多了一个索引index你可以把它当作每行数据的“标签”。import pandas as pd s pd.Series([85, 92, 78], index[张三, 李四, 王五]) print(s) print(s[李四]) # 92看到这里你可能会想这跟Python的字典有什么区别功能上有相似之处但Series的底层实现更适合做批量运算。比如你有一个分数Series想统一加5分s 5一行代码直接全部搞定而且性能远超手写循环。Series之所以是pandas的地基是因为它把“数据”和“标签”绑在了一起运算、筛选、对齐都会自动带上标签逻辑。2.2 DataFrame由多个Series拼成的二维表格DataFrame才是你日常打交道最多的东西。说白了它就是一张表格有行有列每一列都是一个Series。你可以把它想象成Excel里的一个工作表行是记录列是字段。df pd.DataFrame({ 姓名: [张三, 李四, 王五], 语文: [85, 92, 78], 数学: [93, 88, 95] }) print(df)三列数据列名分别是“姓名”“语文”“数学”。每一列内部的数据类型是统一的不同列之间类型可以不一样——这个特性非常重要也是它比二维数组比如NumPy数组更适合处理真实业务数据的原因。真实的数据文件里怎么可能全是数字总有姓名、日期、备注这些乱七八糟的列。2.3 loc和iloc两种最常见的取数方式新手最容易混淆的就是loc和iloc。一句话总结loc按标签取iloc按下标取。# 按标签取“李四”那行 df.loc[1] # 按下标取第1行从0开始计 df.iloc[1]上面这个例子里DataFrame的行标签恰好是0、1、2所以两个结果看起来一样。一旦你自定义了行索引差别立刻就会体现出来df2 df.set_index(姓名) df2.loc[李四] # 成功 df2.iloc[1] # 也是“李四”因为第二行的位置下标就是1我的经验是如果你写的是“取某一行的名字叫XXX的数据”用loc如果你写的是“取第几行的数据”用iloc。不要把两者混着用不然等索引一乱排查起来会非常痛苦。3. 把数据拿进来read_csv和read_excel的真实使用细节数据处理的第一步永远是“把数据读进来”。pd.read_csv()估计是你们用到最多的函数但很多人的用法就停留在pd.read_csv(文件名.csv)一旦文件有点小脾气直接就报错。这里我把自己平时一定会检查的几个参数分享出来。3.1 编码问题最常遇到的第一道坎读CSV报UnicodeDecodeError基本是编码问题。国内Excel导出的CSV文件经常是GBK或者GB2312编码而pandas默认用utf-8去读自然就崩了。解决方法很简单df pd.read_csv(data.csv, encodinggbk)如果你的文件是gb2312但读出来有错乱字符可以试试encodinggb18030gb18030是gb2312的超集兼容性更好。实在不确定文件编码的时候可以用文本编辑器打开看一眼或者直接在一个循环里试几种常见编码for enc in [utf-8, gbk, gb18030, latin1]: try: df pd.read_csv(data.csv, encodingenc) print(f成功{enc}) break except UnicodeDecodeError: continue3.2 dtype和parse_dates让数据类型一步到位读进来之后你会发现有些列明明应该是数字结果却是字符串明明是日期结果也成了字符串。这通常是因为源文件里混了特殊字符或者日期格式不规范。我的习惯是在读取的时候就提前指定dtype宁可先看一下文件长什么样再写读取代码也绝不放任它自动推断df pd.read_csv( data.csv, dtype{用户ID: str, 金额: float}, parse_dates[下单时间] )parse_dates这个参数特别好用它能把包含日期的列直接解析成pandas的datetime类型。一旦列变成datetime类型后面按年、月、日做分组统计就会非常顺滑。比如统计每个月的销售额一句df.groupby(df[下单时间].dt.to_period(M))就搞定了。提示如果CSV文件特别大几十万行以上建议在读取时加上nrows1000先读一部分看看结构确认没问题再全量读取。别一上来就全量读等五分钟才发现列名不对时间全浪费了。3.3 Excel文件怎么读pd.read_excel()需要确认电脑里装了openpyxl读取xlsx格式或xlrd读取xls格式。用起来和read_csv很像但有两个额外参数值得注意df pd.read_excel(报表.xlsx, sheet_name1月, header0)sheet_name指定工作表。如果Excel文件里有很多sheet不指定默认只读第一个。header指定哪一行作为列名。很多公司出的Excel报表前两行是标题和说明这时候header就派上用场了。有人可能会问为什么不直接把数据从Excel复制粘贴到CSV里能这么做但问题在于Excel文件可能存在多个sheet、公式、合并单元格复制粘贴时数据错位的概率很高而且没法自动重复执行。pandas读取的方式一次写好以后每次更新数据重新运行一遍脚本就行——这才是效率的根源。4. 清洗数据缺失值、重复行、类型错乱的处理思路真实世界的数据永远是脏的。我从没见过哪个数据集拿过来就能直接用基本上都要过一遍清洗。这一节我梳理几种最常遇到的情况以及我的处理套路。4.1 缺失值先问“为什么缺失”再决定怎么处理缺失值在pandas里显示为NaN。很多初学者一看到NaN就想着dropna()删掉我只能说这是最简单的办法但不一定是对的。正确顺序应该是先搞清楚这条数据为什么缺失如果缺失是因为这个字段对这条记录本来就不适用比如“未婚人士的配偶姓名”那直接保留NaN反而更合理如果缺失是因为采集遗漏比如用户忘了填年龄那取决于后续分析的需要# 删除所有包含缺失值的行 df_clean df.dropna() # 删除某一列包含缺失值的行 df_clean df.dropna(subset[年龄]) # 用固定值填充 df[年龄] df[年龄].fillna(0) # 用当前列的平均值填充 df[年龄] df[年龄].fillna(df[年龄].mean())这里最需要警惕的是“删除”和“填充”的选择不能拍脑袋。如果你正在做用户画像把缺失年龄的人全部填成平均年龄可能掩盖了某部分人群的真实差异。我在实际项目中倾向先看缺失比例缺失超过一半的列直接把整列删掉缺失比较少的再根据业务判断是填还是删。# 统计每列缺失比例 missing_ratio df.isnull().mean() print(missing_ratio)这个isnull().mean()是我用得最频繁的检查技巧没有之一。它会把每一列的空值占比直接算出来一眼就能看到哪些列需要重点处理。4.2 重复行不只要看完全重复还要看关键列重复df.drop_duplicates()可以删掉完全重复的行但真实业务里更常见的情况是两行数据虽然其他列不一样但“用户ID”重复了这才真正需要处理。# 按用户ID去重保留第一次出现的记录 df df.drop_duplicates(subset[用户ID], keepfirst)keep参数有三个可选值first保留第一个出现的last保留最后一个出现的False一个都不要。选择哪个取决于业务逻辑——比如“保留最新的状态”可能就应该用last。有个小坑提醒一下默认情况下drop_duplicates是在整行所有列都一模一样的时候才去重。如果你只看数据前几行觉得“这两行明明重复了”但去重后行数没变化很可能就是后面某列的值不一样只是你没看到而已。这时候可以先用df[df.duplicated(subset[用户ID])]把重复项筛出来看看到底哪几列不同。4.3 类型错乱字符串数字混合的列怎么办这个场景我遇到太多次了。Excel里你看着是数字读进来却是字符串甚至有的单元格里带空格、带“元”字、带人民币符号。处理套路很固定# 去掉空格再替换掉特殊字符 df[金额] df[金额].astype(str).str.strip().str.replace(,, ).str.replace(元, ) # 转成数值类型errorscoerce 会把无法转换的变成 NaN df[金额] pd.to_numeric(df[金额], errorscoerce)errorscoerce这个参数值得专门记一下。它不会因为某个单元格格式不对就报错中断而是把非法值变成NaN等后续再统一处理。这样既保留了大部分能转换的数据又能通过isnull()快速定位异常行非常实用。5. 拆解查询与分组聚合从“看数据”到“问数据”数据读进来、清洗完了下一步就是“问数据”。这个过程的核心说白了就是两件事想拿哪些行想算什么数我见过很多人卡在这一步其实是没有把查询和聚合拆开理解。5.1 布尔索引和query方法怎么选“筛选出所有北京地区、消费金额大于1000的用户”这个操作用布尔索引写result df[(df[城市] 北京) (df[消费金额] 1000)]两个条件加括号是很多新手会犯的错——两侧必须都有括号不然优先级会出问题。用and连接也不行pandas里不能用Python的and必须用。如果条件特别多、特别长我会改用df.query()result df.query(城市 北京 and 消费金额 1000 and 注册时间 2023-01-01)query写起来确实更像自然语言长短条件都好维护。不过它在某些复杂场景下有个限制没法直接引用外部变量需要用变量名的写法city 北京 result df.query(城市 city)我的实际偏好是简单条件用布尔索引复杂条件用query。两者都要会因为看别人的代码时两种风格都常见。5.2 groupby分组聚合的万能套路分组聚合是数据分析里最核心的操作没有之一。它解决的是这类问题每个城市的平均消费是多少每个月的订单量是多少每个品类的销售额占比如何标准写法是df.groupby(分组列)[计算列].聚合方法()# 每个城市的平均消费金额 df.groupby(城市)[消费金额].mean() # 每个月订单数量 df.groupby(pd.Grouper(key下单时间, freqM))[订单号].count() # 每个城市、每个性别的人数 df.groupby([城市, 性别]).size()这里有个容易绕晕的点groupby之后你到底用哪个聚合函数。我列一个常用的对照表业务问题聚合方法示例平均值mean()平均消费金额求和sum()总销售额计数count()订单数量去重计数nunique()独立用户数最大值/最小值max()/min()最高/最低单笔金额中位数median()更稳健的平均水平如果你想一次算出好几种统计量用aggdf.groupby(城市)[消费金额].agg([count, mean, sum, max])这里返回的列名会变成count、mean这些如果你想要更可读的中文列名可以这样写df.groupby(城市)[消费金额].agg( 订单量count, 平均消费mean, 总消费sum )5.3 透视表pivot_table是groupby的另一种形态如果你用过Excel的透视表那这个功能你会非常喜欢。pivot_table的本质和groupby类似但它把“行”“列”“值”的关系直接铺成一张二维表更适合对比查看。pd.pivot_table( df, index城市, # 行方向 columns性别, # 列方向 values消费金额, # 要计算的值 aggfuncmean, fill_value0 # 空值填0 )我还是拿消费场景举例行是城市列是性别单元格里是平均消费金额。这么一张表看下去哪个城市哪个群体消费高一目了然。fill_value0这个参数建议写上不然没有数据的交叉组合会出现NaN表格视觉上不好看。6. 实操最容易栽的坑视图陷阱、链式赋值和merge冲突语法用熟了之后接下来困扰你的不是“不会写”而是“写出来结果不对”。我把这几年自己踩过、也看别人反复踩的三个坑集中说一下每一个都能让你排查半天。6.1 SettingWithCopyWarning到底在警告什么很多新手都会遇到这个警告df[df[消费金额] 1000][备注] 高消费有时候这行代码确实修改了数据但有时候没改进去你就看到警告然后陷入深深的自我怀疑。这个警告的根源在于pandas里有一个“视图和副本”的机制你从一个DataFrame里筛选出子集这个子集可能是个独立的副本也可能只是一个视图。往视图上赋值改的可能是临时副本原数据根本没动。我的处理原则非常简单需要修改数据时一律先复制再修改。# 先筛选再复制 high_spend df[df[消费金额] 1000].copy() high_spend[备注] 高消费如果确实想改原表不要链式操作df.loc[df[消费金额] 1000, 备注] 高消费上面这句是安全且推荐的写法loc可以同时完成“定位行、定位列、赋值”三件事一步到位不会触发视图副本混淆的坑。提示看到SettingWithCopyWarning不要直接忽略。它不一定是致命的但往往意味着你的赋值行为和你想象的不一致。早点养成.copy()的习惯这个警告基本就不会再见了。6.2 merge连接时最容易忽略的重复键问题合并两张表是另一个高频操作。pd.merge()类似于SQL里的join但这个函数有个非常隐蔽的坑当两张表的连接键都不是唯一值时会产生笛卡尔积——本来只想匹配一条结果匹配出好几条行数莫名其妙暴增。我遇到过一个真实的例子有一张订单表和一张退款表两张表都按“订单号”关联但退款表里同一个订单号出现了多笔退款记录。merge之后订单行被复制了多次后面统计平均订单金额的时候数字全偏了。我的建议是在merge之前先确认连接键是否唯一print(df1[订单号].is_unique) # True/False print(df2[订单号].is_unique)如果唯一性有问题先想清楚业务逻辑你要的一对多、多对一还是多对多merge默认是inner join其他方式可以用how参数控制merged pd.merge(df1, df2, on订单号, howleft)inner两边都有的才保留left左边全部保留右边没有的补NaNright右边全部保留outer两边都保留这个顺序建议记牢实际工作中left用的非常多但很多人上来就用默认的inner结果发现数据少了一大截。6.3 修改整列的值用什么方式才靠谱除了前面说的loc赋值还有一个高频场景是“把这列的值整体改一改”。比如折扣后重新计算金额df[折后金额] df[金额] * 0.8直接生成新列没问题。但如果想覆盖原列并同时做条件判断我会继续配合np.where()或df.loc来写import numpy as np df[金额等级] np.where(df[金额] 1000, 高, 低)这种方式干净利落比用applylambda去写要快。就我个人经验来说很多初学者一碰到“逐行处理”就想到apply性能差不说代码可读性也一般。能用向量化写法解决的尽量别用循环思维。7. 一个上手就能用的综合练习把以上所有环节串起来看再多文档不如亲手跑一遍。我设计了一个小练习把前面所有知识点串起来。这个练习我给了很多人做基本做熟了就能应付出入职场的日常任务。假设你现在拿到一张名为sales_data.csv的文件字段包括客户ID、姓名、城市、下单时间、订单号、商品类别、商品数量、单价、金额。要求读取数据并把“下单时间”解析成日期时间类型查看数据的行数列数、每列类型和缺失值占比删除“姓名”缺失的行把“金额”列转成数值类型出错的值自动变NaN再删除筛选出”上海“和”深圳“两个城市、金额大于500的记录按城市统计订单数、独立客户数、总销售额、平均单笔金额用透视表对比每个城市和商品类别的销售总额。如果你能独立完成这六步pandas的基础操作就已经覆盖得七七八八了。我在带人的时候通常让他们把每一步的代码都写到脚本里最后再自己加一步把结果输出成一个新的Excel文件。result.to_excel(结果表.xlsx, indexFalse)注意indexFalse这个参数一定要记得不然pandas会把行索引作为一列写进Excel你就看到左侧多了一列莫名其妙的数字。我在这里给你一个参考答案的逻辑框架不直接贴全部代码因为自己动手敲一遍比照抄记得牢import pandas as pd df pd.read_csv(sales_data.csv, parse_dates[下单时间]) print(df.shape) print(df.dtypes) print(df.isnull().mean()) df df.dropna(subset[姓名]) df[金额] pd.to_numeric(df[金额], errorscoerce) df df.dropna(subset[金额]) city_list [上海, 深圳] df_filter df[df[城市].isin(city_list) (df[金额] 500)] summary df_filter.groupby(城市).agg( 订单数(订单号, count), 独立客户数(客户ID, nunique), 总销售额(金额, sum), 平均单笔金额(金额, mean) ) pivot pd.pivot_table( df_filter, index城市, columns商品类别, values金额, aggfuncsum, fill_value0 ) pivot.to_excel(结果表.xlsx)isin()这个方法建议重点记一下它是“多个值做同一条件筛选”的最简洁写法。如果你用or去连多个等值条件代码马上变得又臭又长。8. 日常使用中我比较在意的几个习惯和小技巧最后分享几个我自己长期使用的习惯算不上什么高深技术但真的能帮你少走弯路。第一拿到数据集先别急着分析先花一分钟看结构。我每次拿到新数据第一件事永远是跑这三行print(df.shape) print(df.dtypes) print(df.head())行数列数、每列类型、前几行内容这三样东西看完你对这张表的理解大概就有了六成。很多人上来就groupby跑完发现结果和自己预期不一样回头才发现某列是字符串或者有大量空值——这些本质上都是没先看结构。第二处理好一列的通用规则就写成一个小的函数存下来。比如清洗金额、清洗电话号码、清洗日期这些操作在多个项目里反复出现。你可以在自己的工具脚本里维护一批小函数下次直接调用。这个习惯能省掉大量重复劳动。第三读取数据后立刻备份一份原始的df副本。我常年习惯是df_raw df.copy()后面随便怎么折腾心里都有底。万一改坏了数据回退到原始副本重新走一遍流程就好不用从头重新读文件。这个习惯在有导师带你、或者需要跟同事协作时尤其重要因为别人拿着你的脚本时也希望能有一个干净的原始数据参照。第四多花点时间理解datetime索引。时间序列数据处理是pandas的强项很多业务分析的核心维度就是时间。如果能熟练用好pd.to_datetime()、dt.year、dt.month、to_period()这几个方法你会发现自己能解决的分析问题瞬间多了一倍。我自己学了这么久pandas最大的体会是它不是靠背出来的是靠“处理真实数据”练出来的。你今天拿一个真实的销售表跑一遍清洗汇总比你看十遍教程都管用。而且提升速度最快的路径往往是找个自己感兴趣的数据集问自己几个问题然后用pandas去回答。只要把上面这些基础环节练熟了日常的数据处理任务大概率已经难不倒你了。

相关新闻

Shell脚本实战:系统日志错误分析与自动化巡检

Shell脚本实战:系统日志错误分析与自动化巡检

最近在整理一批shell的高级用法练习题,发现“系统日志错误分析”这个主题特别值得展开。平时我们排查系统故障,第一反应都是登录服务器、翻日志、grep关键词,但真到了日志量一大、机器一多、报错一密集,手敲命令那套流程就完全撑不…

2026/10/11 12:34:28 阅读更多 →
Node.js登录注册ZIP包:密码加密、Session会话与认证闭环实战

Node.js登录注册ZIP包:密码加密、Session会话与认证闭环实战

简介:本资源是一套基于Node.js实现的完整登录注册系统前端与后端工程,面向Web全栈初学者及JavaScript进阶开发者,聚焦用户认证核心功能的工程化落地。资源涵盖HTML表单构建、Ajax异步交互、Express服务端路由、密码加密存储(bcryp…

2026/10/11 12:34:28 阅读更多 →
IE Tab Multi离线扩展:让Chrome/Edge重获IE内核兼容能力

IE Tab Multi离线扩展:让Chrome/Edge重获IE内核兼容能力

简介:《IE Tab Multi (Enhance)》是一款针对Chrome浏览器的IE兼容性扩展,面向需要借助ActiveX控件访问老式网页、网银、政务平台或企业内部系统的用户,让Chrome无需切换即可模拟IE内核运行。此12.2.12.1-0版本的离线安装包专为无法直接访问Ch…

2026/10/11 12:33:28 阅读更多 →

最新新闻

Visual Studio+Access的KTV点歌系统:源码解析与避坑指南

Visual Studio+Access的KTV点歌系统:源码解析与避坑指南

简介:基于Visual Studio的KTV点歌系统完整源码,采用Access数据库存储,面向C# WinForms开发者,尤其适合课程设计、毕业设计或KTV相关项目参考。系统后台数据维护涵盖明星信息、歌曲信息、歌曲类型及用户管理,前台支持按…

2026/10/11 15:52:18 阅读更多 →
第七篇:代码生成与编译运行:多语言自动完成设计方案与 TaoToken 统一 Key 接入实践

第七篇:代码生成与编译运行:多语言自动完成设计方案与 TaoToken 统一 Key 接入实践

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/11 15:52:18 阅读更多 →
Claude Sonnet 4.5深度解析:编码大模型的革命性突破与实测挑战|TaoToken统一Key实测

Claude Sonnet 4.5深度解析:编码大模型的革命性突破与实测挑战|TaoToken统一Key实测

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/11 15:52:18 阅读更多 →
【claude|codex|claude code】AI 精华技能库使用指南:Skills 安装与集成标准流程(TaoToken 统一 Key 接入版)

【claude|codex|claude code】AI 精华技能库使用指南:Skills 安装与集成标准流程(TaoToken 统一 Key 接入版)

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/11 15:52:18 阅读更多 →
无人机测绘实训招生|真机实战!大疆M400实地作业全程教学

无人机测绘实训招生|真机实战!大疆M400实地作业全程教学

随着实景三维建设、国土勘测、工程测绘、地形监测等行业高速发展,无人机测绘已经取代传统人工测绘,成为测绘领域的主流技术,市场专业人才缺口持续扩大。零基础入行、技能提升、岗位增收,无人机测绘已然成为低门槛、高前景的优质就…

2026/10/11 15:52:17 阅读更多 →
SunnyUI 控件库实战:从拆包到自定义 WinForm 界面

SunnyUI 控件库实战:从拆包到自定义 WinForm 界面

简介:这份资源是面向C# Winform开发者的自定义控件合集,适合希望快速提升桌面应用界面质感与交互体验的中级开发者。包内以SunnyUI控件库为核心,涵盖自定义Button、进度条、对话框与提示框等常用组件,并配套一套统一的外观设计方案…

2026/10/11 15:51:17 阅读更多 →

日新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/11 0:00:27 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/11 0:00:27 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/11 0:00:27 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/11 0:00:27 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/11 0:00:27 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/11 0:00:27 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/11 10:45:37 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/11 14:36:53 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/11 14:36:54 阅读更多 →