数学建模国赛C题MATLAB代码:成分数据预处理与风化判别模型实现
简介2022数学建模国赛C题MATLAB代码包面向备战数学建模竞赛、希望参考优秀获奖方案实现细节的高校学生与建模爱好者。资源按问题一、问题二、问题三分别组织覆盖数据读取与预处理、分类与预测建模、结果输出与可视化等关键环节并配有自定义函数、混淆矩阵绘图脚本等辅助工具便于复盘和二次开发。包内共24个文件以13个.m脚本为主体配合6个.mat数据文件和5个.xlsx结果表整体压缩包约405KB结构紧凑、下载使用方便。代码基本只依赖MATLAB内置函数无需额外安装外部工具箱运行门槛较低三套子问题均有对应脚本和数据输出结果以Excel保存可结合获奖论文按步骤对照验证。目前已有1404人学习下载适合作为国赛C题从思路到落地的完整参考帮助理解数据处理、模型构建与结果分析的具体实现方式也可用于提升MATLAB实战建模能力。1. 从成分数据到分类结果这套MATLAB代码先帮你省掉两天杂活去年备赛建模的时候我印象最深的一件事不是模型调参而是第一天晚上我们的数据预处理还没跑通隔壁组已经用一套现成的代码把风化前后成分的均值、方差对比图和相关性热图全出完了。后来我才知道那一版就是网上流传的2022数学建模国赛C题代码一套用MATLAB写的完整分析流程。它解决的根本不是“建模思路”而是把从Excel原始表到判别模型输出这条链路里的脏活累活全部自动化。所以写这篇笔记之前我先说清楚如果你是第一次做这类成分分析和判别分类的题目想找一份能直接改用了、能看懂每一步在干嘛的MATLAB代码包那这份资源值得你花时间下载如果你只想抄一个“黑匣子”跑个结果就交差那它帮不了你多少。2. 赛题拆解与代码框架风化干扰与类型鉴别的双线逻辑2.1 先把赛题的“题眼”看穿这题不是成分分析是两层分类任务2022年国赛C题的表面任务是分析古代玻璃制品的成分数据但拿到赛题你会发现真正麻烦的是原始数据里混着“风化”和“未风化”两类样品。风化会改变玻璃表面的化学成分比例所以如果你直接把所有样品放一起做统计或训练分类器训练出来的结果大概率是“风化差异”而不是“类型差异”这是一开始组里最容易走偏的地方。这套代码的第一原则就是先把风化状态剥离开先分别统计风化组和未风化组的成分分布再用统计检验确认哪些成分在风化前后有显著差异。这一步做完后面再谈类型判别才有意义。代码里对应的处理方式是生成一个逻辑索引把数据按是否风化分成两个子集然后对每个子集做独立的描述性统计和相关性分析。你会发现铅钡玻璃和钾玻璃在风化前后的主成分变化完全不同这个结论本身就是问题一和问题二的核心论点。2.2 代码包的模块划分与运行顺序拿到压缩包解压后里面不是一堆乱乱的.m文件而是按流程排好序的脚本。我建议你按代码文件名开头的数字顺序运行不要跳着跑因为后面的脚本会依赖前面脚本生成的工作区变量。我把代码包的典型结构整理成了下面的表格你自己对号入座文件名前缀核心功能运行后生成的产物1_数据读取与清洗读Excel表、处理NaN、剔除异常列清洗后的数值矩阵、样品标签向量2_描述性统计按风化状态分组算均值/标准差分组统计表、对比柱状图3_相关性分析计算成分间Pearson相关系数相关性热图、显著相关成分对4_Fisher判别实现两类线性判别判别方向向量、分类准确率5_KNN分类交叉验证选k并输出混淆矩阵最优k值、测试集预测结果6_SVM对比RBF核SVM与网格搜索调参最优超参数、结果对比表注意最后三个脚本是并列关系跑完第4个之后第5和第6可以分别运行用来对比三种判别模型的准确率。这个设计很实用因为国赛论文里评审很看重“多模型对比”这一步你只需要把三个脚本的准确率和混淆矩阵都导出来再在论文里做一段对比分析就够了。2.3 运行环境与工具箱依赖这套代码要求MATLAB版本在R2020b及以上因为它用到了readtable的PreserveVariableNames参数旧版本里这个参数还没普及。另外必须安装Statistics and Machine Learning Toolbox因为fitcknn、fitcsvm、kfoldLoss这些函数都在这个工具箱里。如果学校电脑没装可以用categorical数组函数替代部分功能但交叉验证那块还是绕不开工具箱。我一般会在脚本开头用ver命令检查一下工具箱是否可用如果报错第一时间装好再往下跑不然跑到一半报“无法解析函数fitcknn”心态很容易崩。3. 数据预处理与描述性统计Excel进、矩阵出的关键三步3.1 用readtable读原始表保留中文表头避开第一个大坑很多人在第一步就翻车因为直接用xlsread会把Excel里的中文列名搞成一堆乱码变量名而且遇到空单元格返回NaN还伴随Warning刷屏。这套代码用的是readtable加PreserveVariableNames直接把原始表头存成元胞数组后续就算要引用“二氧化硅”这种中文列名也能直接用。第一步读取和清洗的典型写法是这样的% 读取原始附件表保留原始列名 raw readtable(附件.xlsx, PreserveVariableNames, true); % 查看前5行确认数据装载情况 head(raw, 5) % 提取类型和风化状态列转为分类数组 typeArr categorical(raw.类型); weathArr categorical(raw.风化); % 找到数值型成分列排除前4列非数值列 varNames raw.Properties.VariableNames; isNumCol varfun(isnumeric, raw, OutputFormat, uniform); numCols varNames(isNumCol); dataX raw(:, numCols);这段代码有两点值得说第一categorical转换可以把“风化”“未风化”变成1和0的逻辑索引后续做分组统计直接where weathArr 风化就行。第二varfun遍历整表去找数值列比手工指定列索引来得安全因为原题附件里化学成分的列顺序和数量跟网上流传的版本可能不一样你手工按列号取数换一份数据就错了。参数说明上PreserveVariableNames是R2020b才有的如果报错说明版本过低要么升级要么改成readcell再手动构建table。关于NaN的处理策略代码里没有无脑删行而是先逐列统计缺失个数给出提示让使用者决定。我自己的习惯是缺失率超过30%的列直接丢弃低于30%的列用同类样品同风化状态、同类型的均值填充这样对后续判别影响最小。你直接全删行的话样本量本来就不大删完可能只剩四五十个后面模型根本没法泛化。3.2 分组描述性统计平均值、标准差与风化影响的可视化数据清洗完下一步就是输出统计量和图表。这段脚本的核心逻辑是把所有成分列按风化状态拆成两组分别计算均值、标准差、中位数然后横向对比。对大分组的展示我建议用分组柱状图代码里用的是bar配合errorbar标准差以误差线的形式体现一眼就能看出哪些成分受风化影响较大。% 按风化状态分组计算均值和标准差 weathIdx (weathArr 风化); grp1 dataX(weathIdx, :); grp0 dataX(~weathIdx, :); meanW mean(grp1{:,:}, 1); stdW std(grp1{:,:}, 0, 1); meanN mean(grp0{:,:}, 1); stdN std(grp0{:,:}, 0, 1); % 选前10个成分列做对比 sel 1:min(10, width(dataX)); xPos 1:numel(sel); figure; bar(xPos - 0.2, meanW(sel), 0.4, FaceColor, [0.7 0.3 0.3]); hold on; bar(xPos 0.2, meanN(sel), 0.4, FaceColor, [0.3 0.5 0.7]); errorbar(xPos - 0.2, meanW(sel), stdW(sel), k, LineStyle, none); errorbar(xPos 0.2, meanN(sel), stdN(sel), k, LineStyle, none); set(gca, XTick, xPos, XTickLabel, numCols(sel), XTickLabelRotation, 45); legend({风化, 未风化}, Location, northeast); title(风化前后主要成分均值对比);这里有个容易被忽略的细节std第三个参数是0表示样本标准差除以n-1如果写成1就成了总体标准差两组数据量本来就20比47这种不均衡比例用总体标准差算出来的误差线会窄一截论文里写统计量时容易被答辩老师挑毛病。图出来后你观察现象就能发现SiO2和PbO在风化样品里波动特别大这为后续选特征进判别模型提供了依据。3.3 相关性分析与特征筛选别把20个成分全塞进分类器这题的成分列有十几个但不是每个成分都和类型判别强相关。代码里用corrcoef计算成分间的Pearson相关矩阵并用heatmap画热图目的是帮你找出与分类目标即玻璃类型相关性较高的特征同时筛掉内部相关系数极高的冗余对。比如SiO2和Al2O3在很多样品里高度负相关如果两个都进模型等于把同一个信息重复加权了一次对Fisher判别尤其不利。% 计算成分列之间的相关系数矩阵 corrMat corrcoef(dataX{:,:}); % 绘制热图 figure; heatmap(numCols, numCols, corrMat, Colormap, parula, ... Title, 成分间Pearson相关系数热图); % 找与类型列的相关系数把类型转为数值 typeNum double(typeArr) - 1; corrWithType arrayfun((c) corr(dataX{:, c}, typeNum), 1:width(dataX)); [~, sortIdx] sort(abs(corrWithType), descend); topFeat numCols(sortIdx(1:6));筛选特征的原则我建议定三条与类型相关系数绝对值大于0.3与已选特征的相关系数绝对值小于0.7缺失率低于30%。按这个逻辑筛完一般能留下五六个特征比如PbO、BaO、K2O、SiO2这些。注意后面训练判别模型时要用筛选后的特征矩阵代码里留了一个featIdx变量修改这个索引向量就能切换参与建模的特征组合。4. 三种判别模型实现Fisher、KNN与SVM的参数与坑4.1 Fisher判别为什么这题的首选仍然是最简单的线性方法Fisher判别的基本思想是找一个投影方向让两类样本投影后类间距离尽可能大、类内方差尽可能小。对C题这种样本量只有几十、特征维度十几个的情况线性方法往往比复杂的非线性方法更稳因为数据量不足以支撑高复杂度模型的参数拟合。代码里的实现没有直接用工具箱函数而是手写了一遍整个计算流程这对写论文“模型建立”部分特别有用因为你可以把公式和代码一一对应。% 用筛选后的特征矩阵做Fisher判别 Xsel dataX{:, featIdx}; X1 Xsel(weathIdx, :); X2 Xsel(~weathIdx, :); mu1 mean(X1, 1); mu2 mean(X2, 1); Sw cov(X1) cov(X2); % 类内散度矩阵 % Fisher判别方向 w inv(Sw) * (mu1 - mu2); % 全部样本投影 proj Xsel * w; % 阈值取两类投影均值的中点 thr 0.5 * (mean(proj(weathIdx)) mean(proj(~weathIdx))); % 预测 pred proj thr; acc mean(pred weathIdx); fprintf(Fisher判别准确率: %.2f%%\n, acc * 100);逻辑上这段代码把公式拆成了三块算类内散度Sw、求方向w、投影后定阈值。需要特别注意的是inv(Sw)求逆当特征间相关性极高时Sw可能接近奇异求逆结果会很不稳定。你要是算出来的w里出现几个异常大的数先回到相关性分析那步把相关系数超过0.9的特征对去掉一个再回来跑。参数层面没有需要用户调的唯一可能调整的是阈值如果两类样本量严重不平衡可以手动改成加权中点。4.2 KNN分类器交叉验证选k而不是拍脑袋定3KNN的原理不用多讲但k值得选择直接影响结果。这套代码里用了kfoldLoss循环遍历k从1到10每个k做5折交叉验证取平均损失最后选损失最小的k。这里存在一个容易被忽视的细节KNN对距离度量非常敏感成分数据各列的量纲虽然都是百分比但均值标准差的差异依旧大所以必须把Standardize设为true否则欧式距离会被PbO这种大数值变量主导。rng(2022); % 固定种子保证可复现 trainData Xsel(randperm(size(Xsel,1)), :); % 这里实际应按类别分层抽样 testData Xsel(testIdx, :); trainLabel typeNum(trainIdx); testLabel typeNum(testIdx); % 交叉验证选k rng(2022); cvErr zeros(1, 10); for k 1:10 mdl fitcknn(trainData, trainLabel, ... NumNeighbors, k, Standardize, true); cvErr(k) kfoldLoss(crossval(mdl, KFold, 5)); end [~, bestK] min(cvErr); % 用最优k重训并预测 mdlBest fitcknn(trainData, trainLabel, ... NumNeighbors, bestK, Standardize, true); predKnn predict(mdlBest, testData); accKnn sum(predKnn testLabel) / numel(testLabel);代码里有几个点容易出问题第一randperm做随机划分前必须先固定随机种子否则每次跑出来的训练集测试集划分不一样后面的准确率根本没可比性。第二这里交叉验证是在训练集内部做的数据划分要做好分层抽样不然某类样品在训练集里特别少交叉验证结果虚高。fitcknn里的Distance参数默认是欧式距离你如果换成cosine距离k折结果可能更好这取决于成分向量是否更该看方向而非大小。4.3 SVM对比模型RBF核与网格搜索的兜底方案Fisher和KNN都有明显的局限性Fisher只能找线性边界KNN对特征缩放的依赖较强。所以代码最后补了一个SVM作为非线性基准。SVM用的是fitcsvm配合RBF核需要调boxConstraint等价于C和KernelScaleRBF核的带宽。代码用了一个最简单的网格搜索选每组超参数做5折交叉验证最后取平均准确率最高的组合。% SVM网格搜索 rng(2022); boxC logspace(-2, 3, 6); kernelS logspace(-2, 2, 5); bestAcc 0; for b 1:numel(boxC) for k 1:numel(kernelS) mdl fitcsvm(trainData, trainLabel, ... KernelFunction, rbf, ... BoxConstraint, boxC(b), ... KernelScale, kernelS(k), ... Standardize, true); cvm crossval(mdl, KFold, 5); acc 1 - kfoldLoss(cvm); if acc bestAcc bestAcc acc; bestBox boxC(b); bestKS kernelS(k); end end end % 用最优参数训练最终模型 mdlSvm fitcsvm(trainData, trainLabel, ... KernelFunction, rbf, ... BoxConstraint, bestBox, ... KernelScale, bestKS, Standardize, true); predSvm predict(mdlSvm, testData); accSvm sum(predSvm testLabel) / numel(testLabel);RBF核一旦用上你最需要警惕的不是准确率低而是过拟合。训练数据就四五十条你用两个超参去搜总有一组参数能把训练集完美分类泛化效果其实很虚。所以看结果不能只报最优那一组还要留意同一boxC附近其他组合的准确率是否整体偏低。代码里如果加上一个记录所有参数组合准确率的表格写论文时就能画出热力图展示参数敏感性这个细节能让模型分析部分加分不少。5. 避坑与常见问题读入、编码与维度不一致的三类翻车5.1 读入Excel后整列都是NaN现象readtable读完附件某几列数据全变成NaN连表头里的中文列名都显示成乱码。原因原始Excel文件里有些单元格存的是文本格式的数字比如“12.34”前面带了个空格或撇号MATLAB在读取时把这些单元格整列识别成了元胞数组而非数值数组。解决readtable读进来以后先检查变量类型用isnumeric逐个列判断遇到元胞数组列用str2double把单元格内容强制转成数值转完再重新构造table。你的代码里如果全是直接变量引用遇到这种情况会白屏并抛错。5.2 训练集和测试集维度对不上predict函数报错现象用训练好的模型预测测试集报“维度不一致”或“预测所用特征数量与训练时不一致”。原因特征筛选时你改了featIdx但后面读取测试数据时没有同步使用同一组列索引导致训练和测试用的列数不同。解决把特征选择这一步单独封装成一个函数训练和测试都调用同一个函数来提取特征列。代码包里给你留了featIdx变量每次跑测试脚本前先执行一次特征选择脚本别只复制中间的模型训练段落不然维度一定对不上。5.3 每次跑KNN准确率忽高忽低现象同一个k值、同一份数据连续跑两次准确率差10%以上。原因数据划分时没有固定随机种子randperm每次生成不同的随机序列训练集测试集划分就变了。解决在所有涉及随机划分的脚本开头加rng(2022)固定种子。如果是在循环里对交叉验证划分还需要在循环外先固定一次否则每次迭代重排的结果又变。代码包里已经固定了2022你自己加新脚本时务必保持这个习惯。5.4 Fisher判别的w向量出现极端大数现象系数向量里某个特征的系数比其他特征大出两三个数量级分类结果几乎被这一个特征决定。原因特征间的相关性太高Sw矩阵接近奇异求逆时数值不稳定。最典型的是SiO2和Al2O3这类共线特征同时进了模型。解决回到相关性分析把相关系数绝对值超过0.9的特征对只保留一个或改用pinv伪逆替代inv来缓解数值问题。代码里的补丁注释就是建议你把inv(Sw)改成pinv(Sw)再跑多数情况两个方法的差距不大但在矩阵病态时能救你一命。5.5 特征数据接近100%要不要归一化现象SiO2等主要成分均值在50%以上而微量元素只有不到1%SVM和KNN的准确率比Fisher还差。原因KNN和SVM都依赖距离计算量级大的特征天然主导了相似度计算导致微量成分相当于被忽略。解决fitcknn和fitcsvm都设Standardize为true这是最简单的标准化方式。但要留意标准化应该在划分训练集测试集之后做而且训练集的均值和标准差要保存下来并用于测试集的变换不能全数据集直接标准化否则会造成信息泄露。代码里Standardize参数内部已经处理了重缩放所以你直接用fitcsvm的Standardize即可不需要自己再写标准化步骤。6. 赛后留存的一个实用习惯把结果自动送回Excel和图表比赛结束复盘时我发现做完分析后还有一半时间耗在把结果搬到论文里。后来我养成了一个固定习惯在所有脚本末尾加一段“结果导出”的收尾代码把准确率、混淆矩阵、关键统计量一次性写成Excel表格图表用saveas统一命名保存。这样论文组的队友可以直接拿去插图、填表不用翻命令窗口找数字。% 汇总所有模型结果为一张表 modelNames {Fisher, KNN, SVM}; accVec [acc, accKnn, accSvm]; resTab table(modelNames, accVec, VariableNames, {模型, 准确率}); writetable(resTab, 模型对比结果.xlsx); % 批量保存当前所有figure figList findobj(Type, figure); for f 1:numel(figList) saveas(figList(f), sprintf(result_fig%d.png, f)); end最后这一小段虽然简单但价值在于让你每个脚本都能“一键交付”。从那以后我每次建模都会强制走一遍数据清洗、特征筛选、模型训练、结果导出这套完整流程不会再边跑边截图记录数字。希望这套流程习惯也能帮到你省下那些不值得浪费的整理时间。本文还有配套的精品资源点击获取

相关新闻

Kettle 9.3 跨云ETL实战:S3/GCS连接、JDK17适配与Spoon启动避坑指南

Kettle 9.3 跨云ETL实战:S3/GCS连接、JDK17适配与Spoon启动避坑指南

简介:本资源为Kettle(Pentaho Data Integration)最新9.3版本的官方安装包百度网盘直链,面向数据工程师、ETL开发人员及大数据初学者,解决国内用户因网络限制难以获取国际开源ETL工具的问题。资源以1个14KB的docx文档形…

2026/10/13 18:28:31 阅读更多 →
AGENTS.md:给AI编程建一份项目记忆说明书

AGENTS.md:给AI编程建一份项目记忆说明书

不跟你绕圈子,这篇文章的出发点是我这段时间反复踩到的一个问题:我把同一个项目背景跟AI编程工具讲了不下十遍,每次新建会话它都像第一天上班一样,对我的代码库一无所知。模型的对话窗口装得下上下文,但它记住的东西在…

2026/10/13 18:28:31 阅读更多 →
MySQL到HBase实时同步:Maxwell+Kafka+Thrift生产实践

MySQL到HBase实时同步:Maxwell+Kafka+Thrift生产实践

1. 项目概述:为什么用 Maxwell Kafka Thrift 这套组合打通 MySQL 到 HBase 的链路在某数据中台的实际演进过程中,我反复遇到一个高频痛点:业务库 MySQL 里沉淀了大量高价值的实时交易、用户行为、订单状态变更数据,但这些数据天…

2026/10/13 18:28:31 阅读更多 →

最新新闻

鸽哒IM源码:生产级私有化即时通讯系统解析

鸽哒IM源码:生产级私有化即时通讯系统解析

简介:这是一套完整的跨平台即时通讯(IM)系统源码,面向中高级Java/Android/iOS开发者及全栈工程师,用于学习和搭建企业级实时通信服务。资源涵盖Web(WebSocketHTML5)、Android(JavaFC…

2026/10/13 21:08:58 阅读更多 →
Python+React低代码平台:元数据驱动的业务系统快速构建方案

Python+React低代码平台:元数据驱动的业务系统快速构建方案

简介:这是一套面向全栈开发初学者与低代码实践者的前后端一体化低代码平台学习资源,聚焦React前端框架与Python后端框架的协同开发模式,帮助非专业开发者快速构建可运行的Web应用,降低传统编码门槛。资源共229个文件,涵…

2026/10/13 21:08:58 阅读更多 →
2020数学建模B题沙漠穿越:Matlab动态规划与剪枝实战解析

2020数学建模B题沙漠穿越:Matlab动态规划与剪枝实战解析

简介:面向备战2020年数学建模B题的参赛者,完整Matlab源代码覆盖四关求解流程,从第一关基础路径规划到第四关随机天气下的最优策略,涉及距离矩阵处理、单目标优化、动态规划、数学期望与随机分布建模等方法。第二关重点解决双地图与…

2026/10/13 21:08:58 阅读更多 →
CEF4Delphi 控件:Delphi 与 JavaScript 双向通信及避坑指南

CEF4Delphi 控件:Delphi 与 JavaScript 双向通信及避坑指南

简介:CEF4Delphi控件是一套面向Delphi开发者的Chromium谷歌内核浏览器集成方案,适合需要在桌面程序中嵌入现代网页渲染能力的开发者,覆盖从Delphi 7到Delphi 10.2的多个版本,作者已亲自测试调试安装正常。资源包共462个文件&#…

2026/10/13 21:08:58 阅读更多 →
数据库大作业图书销售系统:核心是约束设计而不是页面数量

数据库大作业图书销售系统:核心是约束设计而不是页面数量

简介:面向数据库课程大作业的图书销售管理系统数据库设计文档,完整覆盖从问题描述、需求分析、概念模型设计、逻辑模型设计到建立数据库、录入数据及数据库操作的全过程,并配有全局与局部ER图、表结构、外键关系说明,以及实施中遇…

2026/10/13 21:08:58 阅读更多 →
Java 8 Stream 实战指南:从传统循环到声明式流水线

Java 8 Stream 实战指南:从传统循环到声明式流水线

如果你写过几年 Java 业务代码,大概率见过这类场景:一个方法里塞了三四个 for 循环,循环里面套 if,if 里面再往 List 或 Map 里 put 数据,看完要花好几分钟才理清楚这段逻辑到底在干嘛。这种代码不能说错,但…

2026/10/13 21:07:57 阅读更多 →

日新闻

物联网系统集成避坑指南:从选型到验收的关键要点

物联网系统集成避坑指南:从选型到验收的关键要点

做了这么多年物联网系统集成的项目,我最大的感受是,大部分坑不是出在技术前沿,而是出在一些看起来很平常的地方。设备选了便宜的、协议没问清楚、现场没摸透、验收标准写得含糊——这些细枝末节,最后都会变成延期、超支和扯皮的大…

2026/10/13 0:00:57 阅读更多 →
ESP32舵机控制全攻略:从PWM原理到高级玩法与常见故障排查

ESP32舵机控制全攻略:从PWM原理到高级玩法与常见故障排查

如果你玩ESP32有一阵子了,很难不碰到舵机控制这道坎。做智能小车要转方向,做机械臂要抬关节,做云台要偏航俯仰,背后都是同一个东西在干活:舵机。而我见过太多人卡在“代码能编译、舵机就是不听话”这个阶段&#xff0c…

2026/10/13 0:00:57 阅读更多 →
CAN总线原理与STM32实战:抗干扰、仲裁、错误处理全解析

CAN总线原理与STM32实战:抗干扰、仲裁、错误处理全解析

1. 为什么CAN总线至今仍是工业现场的“硬通货”?——从汽车底盘到智能温室的真实需求你有没有拆过一辆老款燃油车的中控台?或者调试过某高校实验室里那台跑着Modbus协议却频频丢帧的PLC控制柜?又或者,在某个农业物联网项目里&…

2026/10/13 0:00:57 阅读更多 →

周新闻

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

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

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

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

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

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

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

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

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

2026/10/13 1:58:08 阅读更多 →

月新闻

我发现了一个新思路:用 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/12 21:05:09 阅读更多 →
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/13 14:57:39 阅读更多 →
黑夜航拍船只数据集训练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/12 18:11:17 阅读更多 →