行业资讯
📅 2026/7/8 17:39:34
天猫双十一美妆销售数据清洗与可视化实战包(含pandas处理+matplotlib图表生成)
本文还有配套的精品资源点击获取简介直接上手练的电商数据分析资源用真实天猫双十一大促期间美妆商品销售数据做全流程实操。里面包含原始未处理CSV文件、清洗后结构化Excel表格、带详细注释的Jupyter Notebook分析脚本还有导出好的HTML报告和等效Python脚本。整个流程覆盖数据加载、缺失值处理、异常值识别、字段标准化、销量聚合统计、品牌占比计算、价格区间分布、地域销售热力图、满减/折扣效果对比等10多种常见分析任务所有图表都用matplotlib完成不依赖Seaborn或其他高级库。配套有requirements.txt明确列出numpy/pandas/matplotlib等必需依赖还附带压缩版安装指南和使用说明txtPython 3.8及以上版本可直接运行。适合零基础新手边学边练也适合作为课程作业、毕业设计的数据分析模块或求职时展示数据处理能力的作品素材。1. 项目概述为什么这套美妆数据包值得你花两小时完整跑一遍你有没有过这种体验在B站或小红书刷到“三步搞定电商数据分析”的教程点进去发现数据是编的、字段名叫col1,col2清洗逻辑跳过缺失值直接dropna()图表就一张柱状图加个标题——最后导出的HTML报告里连坐标轴标签都糊成一团我带过六届数据科学方向的毕业设计每年都有学生拿着这类“玩具数据”去答辩被老师一句“这个销量突增是系统刷单还是真实爆发”问得哑口无言。而这次你要处理的是真实天猫双十一期间抓取的美妆类商品销售快照含32768条记录、47个原始字段从商品ID、店铺名称、省份地址、促销类型满300减50/跨店满减/前N件折上折、实际成交价、销量、收藏数、评论数到详情页图片URL、是否为旗舰店、是否支持七天无理由……全都在双十一淘宝美妆数据.csv里躺着。它不完美——有空字符串代替缺失值、价格字段混入“¥199”和“199.00”两种格式、销量列存在明显异常值比如某款面膜标价9.9元却显示月销999999件、省份字段写成“广东省”“广东”“粤”三种形式——但正是这些毛边才是真实业务数据的呼吸感。这套资源包的价值不在于给你一个“结果正确”的答案而在于提供一套可追溯、可复现、可质疑的完整分析链路从pd.read_csv()加载那一刻起每一步清洗都有注释说明“为什么这里用str.extract(r(\d\.?\d*))而不是astype(float)”每个图表生成都标注“横轴按销量分位数切五档而非等宽分组因尾部长尾效应显著”。它适合谁如果你是零基础刚学完pandas基础语法想找个不烧脑又能出成果的练手项目如果你正在赶课程作业 deadline需要一段能直接放进报告附录的、带中文注释的分析代码如果你在准备求职作品集需要一个能讲清楚“我如何识别并处理业务异常值”的案例——那它就是为你量身定做的实战沙盒。关键词里的“天猫美妆数据”不是噱头“双十一销售分析”不是泛泛而谈“pandas数据清洗”和“matplotlib可视化”更不是贴标签——它们是贯穿整个.ipynb脚本的每一行代码、每一个函数调用、每一张图表坐标的底层支撑。2. 数据整体设计与思路拆解从混乱CSV到结构化Excel我们到底在解决什么问题2.1 原始数据的“脏”在哪里先看三个典型现场打开双十一淘宝美妆数据.csv第一眼就会被字段数量震慑住——47列。但真正动手处理时你会发现问题集中在三类“脏点”上它们不是随机噪声而是电商平台数据采集和商家运营行为共同留下的指纹字段语义污染比如price列既有¥199.00、199、199.0还有面议、暂无报价、甚至空格加换行符\n \t。这不是数据录入错误而是商家为规避平台比价规则故意用非数字字符模糊标价。若直接astype(float)会报错若粗暴fillna(0)则把“面议”商品全部归为免费彻底扭曲价格分布。我们的方案是先用正则str.extract(r(\d\.?\d*))提取所有数字片段再对提取失败的行单独标记为price_source_typenegotiable保留业务含义。地域信息碎片化province字段出现“广东省”“广东”“粤”“GD”“guangdong”五种写法。这背后是商家后台填写习惯差异——大品牌用全称中小卖家图省事缩写还有部分用拼音首字母。若简单replace()映射会漏掉拼音变体若用fuzzywuzzy匹配又过度复杂。我们采用“主干词典规则兜底”策略预置标准省份简称表如{广东:广东省,粤:广东省,GD:广东省}对未匹配项再用str.contains(广东|粤|gd, caseFalse)二次捕获最后统一转为国家标准代码广东省→440000为后续地理热力图打下结构化基础。销量异常值的业务合理性判断sales_monthly列中999999出现频次高达173次。新手常误以为这是刷单直接clip()截断。但结合shop_name和item_title字段交叉验证发现其中121条属于“某国际大牌旗舰店”的“明星单品”其详情页明确标注“双十一大促期间销量实时更新显示为‘爆’字替代具体数值”。也就是说999999是平台前端展示逻辑的后端映射本质是“高销量占位符”。我们的处理是新增sales_flag列将999999标记为high_volume_placeholder并在后续聚合统计中将其替换为该品牌同类商品销量中位数而非均值避免被其他异常值拉偏既保留高热度信号又不失统计稳健性。提示这种“脏”不是缺陷而是业务逻辑的镜像。清洗的本质不是让数据变“干净”而是让数据背后的业务故事变得可读、可验证、可推演。2.2 为什么坚持纯pandasmatplotlib放弃Seaborn和Plotly的底层考量资源包明确声明“不依赖Seaborn或其他高级库”这并非技术保守而是基于三个硬性约束的主动选择教学穿透力优先Seaborn的sns.histplot()一行代码能出图但新手无法理解bins20和statdensity如何影响Y轴刻度含义。而用plt.hist()手动计算weightsnp.ones(len(df))/len(df)再plt.ylabel(Probability Density)虽然多写5行却强制你思考“概率密度函数”的数学定义。在天猫双十一美妆销售数据分析.ipynb的“价格区间分布”章节我们特意对比了两种实现Seaborn版本用kdeTrue自动拟合曲线pandasmatplotlib版本则用scipy.stats.gaussian_kde手动计算核密度并在图中标注带宽参数bw_method0.3的选择依据经cross_validation验证此值使MSE最小。这种“慢功夫”才是建立数据直觉的关键。环境兼容性兜底某次帮学生调试代码发现其服务器仅开放Python 3.8基础环境pip install seaborn因依赖statsmodels0.12触发升级冲突导致整个分析流程中断。而matplotlib作为Python事实标准绘图库其2.2.5版本在CentOS 7/Ubuntu 18.04/Windows Server 2016等老旧生产环境均有稳定二进制包。资源包中的requirements.txt严格限定matplotlib3.5.32022年LTS版本确保在阿里云ECS轻量应用服务器、腾讯云CVM等主流云主机上pip install -r requirements.txt一次成功。图表可控性刚需电商分析中很多图表需精确控制元素层级。例如“促销效果对比图”需将满减商品销量柱状图置于底层折扣商品折线图叠加其上并用不同透明度区分。Seaborn的barplot()和lineplot()无法在同一axes中混合绘制且保持图例自动合并而matplotlib的ax.bar()和ax.plot()可自由组合通过zorder参数精细调控渲染顺序。在配套HTML报告中所有图表均导出为SVG格式非PNG确保放大查看时坐标轴刻度、文字标签依然锐利——这对求职作品集展示至关重要。2.3 流程分块设计的底层逻辑为什么是“加载→清洗→探索→建模初探→可视化→结论提炼”这个六阶段链条不是教科书式的理想模型而是我在某头部美妆MCN机构做数据顾问时被业务方反复追问“这个结论怎么来的”倒逼出的可审计路径加载阶段必须记录原始SHA256哈希值在.ipynb开头我们执行hashlib.sha256(open(双十一淘宝美妆数据.csv,rb).read()).hexdigest()并存入变量raw_data_hash。这样当业务方质疑“你们用的数据是不是最新版”只需比对哈希值即可证伪避免陷入“你说你用了我说我没看到”的扯皮。清洗阶段强制输出clean_beautymakeup.xlsx这个Excel文件不仅包含清洗后数据还额外增加cleaning_log工作表逐行列出每条清洗规则如“第127行price字段正则提取失败率3.2%”“第201行province标准化映射成功率98.7%”。它让清洗过程从“黑箱操作”变为“白盒日志”方便团队协作时快速定位问题。探索阶段嵌入业务假设验证比如针对“高端美妆是否更依赖满减而非折扣”的假设我们不直接画图而是先用crosstab计算price_bin按价格分五档与promotion_type满减/折扣/无促销的联合分布再用卡方检验scipy.stats.chi2_contingency()给出p值。只有p0.05才进入可视化环节。这避免了“先画图再找解释”的确认偏误。建模初探仅限线性回归资源包中modeling_demo.py只实现sklearn.linear_model.LinearRegression预测销量且特征仅限price、collection_count、is_official_shop三个业务强相关变量。不引入XGBoost或神经网络是因为电商销量受外部因素如KOL直播、热搜话题影响远大于模型复杂度过度拟合反而误导业务决策。这种设计让整个分析过程像一份可签字的审计报告而非炫技的PPT。3. 核心细节解析与实操要点那些文档里不会写的“踩坑现场”3.1 缺失值处理为什么不用fillna(methodffill)而用业务规则填充原始数据中brand_name字段缺失率达18.7%。常见教程会建议用df[brand_name].fillna(methodffill)即用上一行品牌名填充。但在电商数据中这会导致灾难性错误比如第100行是“兰蔻精华”第101行缺失第102行是“雅诗敦眼霜”ffill会把第101行也填成“兰蔻精华”而实际上它可能是“露得清洁面乳”。我们采用“三级填充策略”一级基于店铺名反推若shop_name含“兰蔻官方旗舰店”则brand_name强制赋值为“兰蔻”。代码实现python df.loc[df[shop_name].str.contains(兰蔻.*旗舰, naFalse), brand_name] 兰蔻二级基于商品标题关键词匹配预置品牌关键词库{雅诗敦:[雅诗敦,Esthederm],修丽可:[修丽可,SkinCeuticals]}遍历item_title字段用str.contains()匹配。注意使用regexFalse避免特殊字符报错并设置caseFalse忽略大小写。三级众数填充仅限同品类对仍为空的行按category_level1一级类目如“护肤”“彩妆”分组取该组内brand_name众数。关键代码python brand_mode df.groupby(category_level1)[brand_name].agg(lambda x: x.mode().iloc[0] if not x.mode().empty else Unknown) df[brand_name] df.apply(lambda row: brand_mode[row[category_level1]] if pd.isna(row[brand_name]) else row[brand_name], axis1)实操心得填充不是补洞而是注入业务知识。每次fillna()前先问自己“如果我是这个店铺的运营我会怎么填这个品牌名”3.2 异常值识别IQR法失效时如何用“业务分位数”破局sales_monthly列用传统IQR四分位距法识别异常值会失效——因为双十一期间真实销量分布极度右偏85%的商品月销500件而头部单品可达5万件。IQR计算出的上限Q3 1.5*IQR ≈ 2100会把所有销量2100的商品都判为异常显然不合理。我们改用“业务分位数法”步骤1按category_level2二级类目如“面膜”“精华”“粉底液”分组步骤2对每组计算sales_monthly的95%分位数非IQR步骤3将销量该分位数的商品标记为sales_outlier_flagTrue并记录其分位数值代码实现# 计算各二级类目的95%分位数 q95_by_cat df.groupby(category_level2)[sales_monthly].quantile(0.95).to_dict() # 应用标记 df[sales_outlier_flag] df.apply( lambda row: row[sales_monthly] q95_by_cat.get(row[category_level2], 0), axis1 )这样“面膜”类目的异常阈值是8500件因面膜是爆款集中地“唇膏”类目则是1200件阈值随业务场景动态变化。在后续“地域热力图”中我们只对非异常值商品计算各省销量占比避免头部单品扭曲区域分布认知。3.3 字段标准化为什么把“广东省”转成“440000”而不是“广东”province标准化看似简单但直接影响地理可视化质量。若只转为“广东”matplotlib的basemap或cartopy库无法直接渲染中国省级行政区划——它们需要国家标准代码GB/T 2260。我们采用cnarea库轻量级无GIS依赖进行转换from cnarea import get_area # 获取广东省代码 guangdong_code get_area(广东省) # 返回440000 # 批量转换 df[province_code] df[province].apply(lambda x: get_area(x) if pd.notna(x) else None)此举带来两个关键收益1.热力图精准锚定用province_code作为geopandas读取的中国地图shp文件的id字段确保“广东”区块严格对应珠三角粤东粤西粤北全域而非仅广州市辖区2.避免拼音歧义“广西”和“广州”拼音首字母都是“GZ”但450000广西和440100广州绝无混淆可能。注意cnarea库需手动安装pip install cnarea已在requirements.txt中声明但因其非主流库我们在说明.txt中特别提醒“若导入报错请先运行python -m cnarea update更新行政区划数据”。3.4 可视化细节魔鬼matplotlib里那些让图表“专业感”飙升的5个参数资源包中所有图表均通过matplotlib原生API实现以下5个参数是提升专业度的核心plt.rcParams[font.sans-serif] [SimHei, Arial Unicode MS]解决中文乱码。SimHei黑体是Windows默认中文字体Arial Unicode MS是Mac/Linux备选双保险确保跨平台正常显示。ax.spines[top].set_visible(False); ax.spines[right].set_visible(False)隐藏顶部和右侧边框。这是Tufte原则的实践——减少非数据墨水non-data ink让读者注意力聚焦在数据本身。plt.xticks(rotation30, haright)X轴标签旋转30度并右对齐。避免长省份名如“内蒙古自治区”重叠haright保证旋转后文字右端对齐坐标轴视觉更稳。ax.bar(..., edgecolorwhite, linewidth0.5)柱状图添加白色细边框。在浅色背景上这能清晰分割相邻柱子尤其当颜色相近时如不同品牌的蓝色系。plt.tight_layout(pad1.2)全局紧凑布局。pad1.2指定子图间最小间距为1.2英寸避免标题被截断或图例压住坐标轴——这是导出HTML报告时最易被忽视的细节。这些参数看似微小但当你把天猫双十一美妆销售数据分析.html发给面试官他滚动鼠标看到的每一张图都具备出版级排版精度时你的专业形象已悄然建立。4. 实操过程与核心环节实现从Jupyter Notebook到HTML报告的完整流水线4.1 环境搭建为什么推荐conda而非pip一个被低估的稳定性陷阱尽管requirements.txt支持pip install -r requirements.txt但我们强烈推荐用conda创建独立环境。原因在于numpy和pandas的底层依赖OpenBLAS、Intel MKL在pip安装时易产生ABI不兼容场景重现某学生在Ubuntu 20.04上用pip install numpy1.21.6 pandas1.3.5运行df.groupby().agg()时抛出Illegal instruction (core dumped)。根源是pip安装的numpy默认链接系统OpenBLAS而该系统库版本过旧。conda方案conda create -n tmall-beauty python3.9 numpy1.21.6 pandas1.3.5 matplotlib3.5.3conda会自动匹配经过严格测试的二进制包组合且所有库链接同一套MKL加速库。配套的使用说明含常用包及安装方法.zip中我们提供了environment.yml文件name: tmall-beauty channels: - conda-forge - defaults dependencies: - python3.9 - numpy1.21.6 - pandas1.3.5 - matplotlib3.5.3 - jupyter1.0.0 - cnarea1.0.2执行conda env create -f environment.yml即可一键复现环境。这是保障“开箱即用”的最后一道防线。4.2 Jupyter Notebook核心模块详解以“销量趋势图”为例的逐行拆解打开天猫双十一美妆销售数据分析.ipynb定位到“3. 销量趋势分析”章节。这里生成的不是简单的时间序列线图而是融合了业务洞察的复合图表。关键代码段如下# 步骤1构造时间维度原始数据无日期字段用crawl_time近似 df[crawl_date] pd.to_datetime(df[crawl_time]).dt.date # 步骤2按日期聚合总销量注意此处用sum而非mean因目标是大盘热度 daily_sales df.groupby(crawl_date)[sales_monthly].sum().reset_index() # 步骤3计算7日移动平均平滑双十一当天脉冲噪声 daily_sales[sales_ma7] daily_sales[sales_monthly].rolling(window7, min_periods1).mean() # 步骤4绘制双Y轴图——左侧为原始销量右侧为移动平均 fig, ax1 plt.subplots(figsize(12, 6)) ax2 ax1.twinx() # 主销量柱状图强调每日绝对值 bars ax1.bar(daily_sales[crawl_date], daily_sales[sales_monthly], alpha0.7, label日总销量, color#4A90E2) # 移动平均折线图强调趋势 line ax2.plot(daily_sales[crawl_date], daily_sales[sales_ma7], r-, linewidth2.5, label7日移动平均) # 步骤5添加双十一关键节点标记 ax1.axvline(pd.Timestamp(2023-11-11), colororange, linestyle--, alpha0.8, label双十一当日) # 步骤6优化图例位置避免遮挡数据 ax1.legend(locupper left) ax2.legend(locupper right) plt.title(天猫美妆类商品日销量趋势含7日移动平均, fontsize14, pad20) plt.show()这段代码的精妙之处在于- 用craw_time近似交易时间虽不完美但比虚构日期更贴近业务现实-rolling(window7, min_periods1)确保首6日也能计算移动平均min_periods1避免数据断层- 双Y轴设计让“绝对值”和“趋势”同时可读且通过alpha0.7降低柱子透明度防止遮挡折线-axvline标记双十一当日用虚线橙色突出业务事件这是分析师向业务方讲故事的关键锚点。4.3 HTML报告生成如何让静态图表具备交互灵魂资源包导出的天猫双十一美妆销售数据分析.html并非简单nbconvert产物。我们通过jinja2模板深度定制动态目录导航在HTML顶部生成浮动目录点击“4. 品牌分布分析”直接跳转至对应图表区块代码基于Notebook中# %%魔法命令自动生成图表响应式适配所有img标签包裹在div classchart-container中CSS设置max-width: 100%; height: auto;确保在手机端查看时图表自动缩放关键结论高亮在每个图表下方用blockquote classconclusion标签嵌入业务结论如“国货品牌销量占比达37.2%较去年提升9.5个百分点”字体加粗浅蓝底纹一眼抓住重点代码折叠功能所有分析代码块默认折叠点击“显示代码”按钮才展开兼顾报告阅读者关注结论和技术评审者查验逻辑两类受众。生成命令在.py脚本末尾import nbconvert from nbconvert.exporters import HTMLExporter exporter HTMLExporter(template_filebasic) (body, resources) exporter.from_filename(天猫双十一美妆销售数据分析.ipynb) with open(天猫双十一美妆销售数据分析.html, w, encodingutf-8) as f: f.write(body)模板basic已预置上述所有定制化CSS和JS逻辑确保导出即用。4.4 Python脚本等效性验证为什么.py文件不是.ipynb的简单导出天猫双十一美妆销售数据分析.py不是用jupyter nbconvert --to python生成的。它是完全重写的、面向生产环境的脚本具备三大特性参数化入口支持命令行传参如python 天猫双十一美妆销售数据分析.py --input data.csv --output report.html --min_price 50便于集成到定时任务日志分级使用logging模块INFO级输出“开始清洗品牌字段”WARNING级提示“province字段标准化失败率2.1%”ERROR级捕获ValueError并打印原始行号异常安全退出所有try-except块末尾均调用sys.exit(1)确保CI/CD流水线检测到错误时立即中断避免生成残缺报告。这种设计让.py脚本不仅能本地运行更能无缝接入企业级数据管道——这才是求职作品集里最硬核的加分项。5. 常见问题与排查技巧实录那些深夜调试时救过命的独家经验5.1 典型问题速查表问题现象根本原因快速解决方案触发场景UnicodeDecodeError: utf-8 codec cant decode byte 0xb3CSV文件实际编码为GBK非UTF-8在pd.read_csv()中添加encodinggbk参数Windows系统导出的CSV常含中文乱码KeyError: province原始CSV列名含不可见空格如province 用df.columns df.columns.str.strip()清洗列名Excel另存为CSV时自动添加空格图表中文显示为方块系统缺失中文字体或rcParams未配置运行plt.rcParams[font.sans-serif] [SimHei]后重启内核Linux服务器无图形界面未预装中文字体sales_monthly列数据类型为object无法计算字段含非数字字符如“999”“销量过万”先str.replace(,).str.replace(万,0000)再astype(float)商家为营造热销氛围添加修饰符地理热力图显示为空白province_code与地图shp文件id字段不匹配检查shp文件id列是否为字符串类型用df[province_code] df[province_code].astype(str)强制转换geopandas读取shp时自动将数字ID转为float5.2 调试黄金三步法当代码报错时别急着Google我在带新人时总会强调这个现场验证法它比Stack Overflow更高效第一步冻结数据快照在报错行前插入python # 保存当前DataFrame状态便于离线分析 df_snapshot df.copy() df_snapshot.to_csv(debug_snapshot.csv, indexFalse, encodingutf-8-sig)这样即使环境崩溃你仍有原始出错时刻的数据副本。第二步单字段原子验证不要直接运行整段清洗逻辑。比如province标准化报错先单独测试python test_province df[province].head(10).tolist() print(原始值:, test_province) print(标准化后:, [get_area(x) for x in test_province])通常会发现某个值如“新疆建设兵团”不在cnarea库中此时只需手动映射{新疆建设兵团:659000}。第三步逆向追踪数据血缘当sales_monthly计算结果异常不要检查聚合代码而是回溯源头python # 查看销量异常值的原始记录 outlier_rows df[df[sales_monthly] 10000] print(outlier_rows[[item_title,shop_name,price,sales_monthly]].head())往往会发现这些记录共性price字段为0.0或NaN说明是赠品或运费链接应在清洗早期就过滤。5.3 零基础跟练避坑指南给第一次打开Jupyter的新手如果你从未用过Jupyter按这个顺序操作20分钟内必跑通先解压再进文件夹不要双击.ipynb文件右键解压使用说明含常用包及安装方法.zip将解压出的requirements.txt和environment.yml放到主目录终端里cd进去打开命令行Mac/Linux用TerminalWindows用Anaconda Prompt输入cd /path/to/your/unzipped/folder确保路径正确环境创建一步到位执行conda env create -f environment.yml等待10分钟首次会下载约300MB依赖激活环境再启动执行conda activate tmall-beauty然后jupyter notebook浏览器自动打开后点击天猫双十一美妆销售数据分析.ipynb按CtrlEnter运行单元格从第一个单元格开始逐个按CtrlEnterWindows/Linux或CmdEnterMac观察每个单元格输出。遇到红色报错暂停对照上表“典型问题速查表”处理。最后分享一个小技巧在Jupyter中按Esc退出编辑模式再按H键可呼出所有快捷键帮助面板。记住ShiftEnter运行并跳至下一单元格和M切换为Markdown模式这两个能让你效率翻倍。6. 结论提炼这套资源包教会你的远不止pandas和matplotlib当我把这份资源包的第一版交给某高校数据科学课程组时教授反馈说“学生交上来的作业终于不再是一堆没有业务上下文的图表了。”这恰恰点中了核心——工具只是载体思维才是内核。你在这套实战包里反复练习的是数据分析师最底层的能力在混乱中识别信号在噪声中锚定业务在代码中注入常识。比如处理price字段时你学会的不仅是正则表达式语法更是“商家为什么要用¥符号平台规则如何影响数据形态”的业务敏感度绘制地域热力图时你掌握的不仅是geopandas的API更是“为什么要把‘广东’转成‘440000’行政区划代码如何支撑合规审计”的工程严谨性。这些能力无法通过刷100道LeetCode获得只能在真实数据的毛边里打磨出来。所以别把它当成一个“做完就扔”的练习题。试着把clean_beautymakeup.xlsx里的数据替换成你家乡特产网店的销售记录用同样的清洗逻辑跑一遍或者把“美妆”类目换成“数码配件”调整价格分档策略看看结论是否依然成立。真正的成长始于你主动撕开这个资源包的边界把它变成自己解决问题的肌肉记忆。本文还有配套的精品资源点击获取简介直接上手练的电商数据分析资源用真实天猫双十一大促期间美妆商品销售数据做全流程实操。里面包含原始未处理CSV文件、清洗后结构化Excel表格、带详细注释的Jupyter Notebook分析脚本还有导出好的HTML报告和等效Python脚本。整个流程覆盖数据加载、缺失值处理、异常值识别、字段标准化、销量聚合统计、品牌占比计算、价格区间分布、地域销售热力图、满减/折扣效果对比等10多种常见分析任务所有图表都用matplotlib完成不依赖Seaborn或其他高级库。配套有requirements.txt明确列出numpy/pandas/matplotlib等必需依赖还附带压缩版安装指南和使用说明txtPython 3.8及以上版本可直接运行。适合零基础新手边学边练也适合作为课程作业、毕业设计的数据分析模块或求职时展示数据处理能力的作品素材。本文还有配套的精品资源点击获取