id: 0a60483e98974ee5b8a173ad3d6a38ef
parent_id: 
item_type: 1
item_id: 6f45fb5dc3204f02a9ba34fd2f566f51
item_updated_time: 1764345610506
title_diff: "[{\"diffs\":[[1,\"一行Python代码搞定的20个Excel操作\"]],\"start1\":0,\"start2\":0,\"length1\":0,\"length2\":23}]"
body_diff: "[{\"diffs\":[[1,\"<html>\\\r\\\n<head>\\\r\\\n  <title>一行Python代码搞定的20个Excel操作</title>\\\r\\\n  <basefont face=\\\"微软雅黑\\\" size=\\\"2\\\" />\\\r\\\n  <meta http-equiv=\\\"Content-Type\\\" content=\\\"text/html;charset=utf-8\\\" />\\\r\\\n  <meta name=\\\"exporter-version\\\" content=\\\"YXBJ Windows/608924 (zh-CN, DDL); Windows/10.0.0 (Win64); EDAMVersion=V2;\\\"/>\\\r\\\n  <meta name=\\\"content-class\\\" content=\\\"yinxiang.peso.superNote\\\"/>\\\r\\\n  <meta name=\\\"application-data:yinxiang.noteLayout\\\" content=\\\"{\\\"lineSpace\\\":\\\"recommend\\\",\\\"paragraphSpace\\\":\\\"recommend\\\"}\\\"/>\\\r\\\n  <style>\\\r\\\n\\tbody, td {\\\r\\\n\\t  font-family: 微软雅黑;\\\r\\\n\\t  font-size: 12pt;\\\r\\\n\\t}\\\r\\\n  </style>\\\r\\\n</head>\\\r\\\n<body>\\\r\\\n<a name=\\\"33373\\\"></a>\\\r\\\n<h1>一行Python代码搞定的20个Excel操作</h1>\\\r\\\n\\\r\\\n<div><span style=\\\"\\\"><div style=\\\"max-width: 700px;\\\"><p></p><div style=\\\"--en-blockquote: true; box-sizing: border-box; border-left: 3px solid #b4c0cc; background-position: initial initial; background-repeat: initial initial;\\\"><div>原文链接: <a href=\\\"http://mp.weixin.qq.com/s?__biz=MzkwNjY2MjQ2MQ==&amp;mid=2247484598&amp;idx=1&amp;sn=233624be55900845d8b53abf3eb2a422&amp;chksm=c1f77243de8095d3cb1ff5919bc26d490e38cc42add2089e58ace59c681cf12e6f155906c3a9&amp;mpshare=1&amp;scene=1&amp;srcid=1122SPstTQZvVfE0bmNRvnfe&amp;sharer_shareinfo=6f652c2f452c081e1719f19bdcc34947&amp;sharer_shareinfo_first=6f652c2f452c081e1719f19bdcc34947#rd\\\"><span>http://mp.weixin.qq.com/s?__biz=MzkwNjY2MjQ2MQ==&amp;mid=2247484...</span></a></div></div><p></p><div style=\\\"-webkit-tap-highlight-color: transparent;\\\"><div style=\\\"-webkit-tap-highlight-color: transparent;\\\"><div style=\\\"-webkit-tap-highlight-color: transparent;\\\"><div style=\\\"-webkit-tap-highlight-color: transparent;\\\"><span style=\\\"-webkit-tap-highlight-color: transparent;\\\">原创</span><span style=\\\"-webkit-tap-highlight-color: transparent;\\\"> 点击关注 👉 </span><span style=\\\"-webkit-tap-highlight-color: transparent;\\\"><a style=\\\"-webkit-tap-highlight-color: transparent;\\\"> PythonAI与机器学习 </a></span><span style=\\\"-webkit-tap-highlight-color: transparent;\\\"><em style=\\\"-webkit-tap-highlight-color: transparent;\\\"></em></span></div><div style=\\\"-webkit-tap-highlight-color: transparent;\\\"><div style=\\\"-webkit-tap-highlight-color: transparent; background-attachment: scroll; background-clip: border-box; background-image: none; background-origin: padding-box; background-position: 0 0; background-repeat: no-repeat; background-size: auto; width: auto; color: rgb(0,0,0); word-spacing: 0; letter-spacing: 0; word-break: break-word; text-align: left;\\\"><h2 style=\\\"-webkit-tap-highlight-color: transparent; background-attachment: scroll; background-clip: border-box; background-image: none; background-origin: padding-box; background-position: 0 0; background-repeat: no-repeat; background-size: auto; border-style: none; border-width: 1px; border-color: rgb(0,0,0); border-radius: 0; height: auto; overflow: unset; text-shadow: none; transform: none; width: auto; -webkit-box-reflect: unset;\\\"><span style=\\\"-webkit-tap-highlight-color: transparent; color: rgb(34,34,34); letter-spacing: 0; border-style: none none none solid; border-width: 1px 1px 1px 5px; border-color: rgb(0,0,0) rgb(0,0,0) rgb(0,0,0) rgb(145,109,213); border-radius: 0; background-attachment: scroll; background-clip: border-box; background-image: none; background-origin: padding-box; background-position: 0 0; background-repeat: no-repeat; background-size: auto; display: block; font-weight: bold; height: auto; overflow: unset; text-indent: 0; text-shadow: none; transform: none; width: auto; -webkit-box-reflect: unset;\\\">引言</span></h2><p style=\\\"-webkit-tap-highlight-color: transparent; letter-spacing: 0.02em; text-indent: 0;\\\">在数据分析的过程中，从数据的导入到最终的可视化展示，每一个步骤都至关重要。本文将详细介绍如何使用Python和Pandas库来处理Excel文件中的数据，包括数据的导入、清洗、处理以及可视化等多个方面。通过一系列实例，我们将展示如何高效地完成数据分析任务。</p><h2 style=\\\"-webkit-tap-highlight-color: transparent; background-attachment: scroll; background-clip: border-box; background-image: none; background-origin: padding-box; background-position: 0 0; background-repeat: no-repeat; background-size: auto; border-style: none; border-width: 1px; border-color: rgb(0,0,0); border-radius: 0; height: auto; overflow: unset; text-shadow: none; transform: none; width: auto; -webkit-box-reflect: unset;\\\"><span style=\\\"-webkit-tap-highlight-color: transparent; color: rgb(34,34,34); letter-spacing: 0; border-style: none none none solid; border-width: 1px 1px 1px 5px; border-color: rgb(0,0,0) rgb(0,0,0) rgb(0,0,0) rgb(145,109,213); border-radius: 0; background-attachment: scroll; background-clip: border-box; background-image: none; background-origin: padding-box; background-position: 0 0; background-repeat: no-repeat; background-size: auto; display: block; font-weight: bold; height: auto; overflow: unset; text-indent: 0; text-shadow: none; transform: none; width: auto; -webkit-box-reflect: unset;\\\">1. 导入库和准备数据</span></h2><p style=\\\"-webkit-tap-highlight-color: transparent; letter-spacing: 0.02em; text-indent: 0;\\\">首先，我们需要导入必要的库，并准备好我们的Excel文件。</p><div style=\\\"--en-codeblock: true; --en-meta: {&quot;title&quot;:&quot;&quot;,&quot;lang&quot;:&quot;Plain Text&quot;,&quot;theme&quot;:&quot;default&quot;,&quot;showLine&quot;:true,&quot;lineWrap&quot;:true}; box-sizing: border-box; color: rgb(51, 51, 51); border-top-left-radius: 4px; border-top-right-radius: 4px; border-bottom-right-radius: 4px; border-bottom-left-radius: 4px; background-color: rgb(251, 250, 248); border: 1px solid rgba(0, 0, 0, 0.14902); background-position: initial initial; background-repeat: initial initial;\\\"><pre><span># 导入库</span><br/><span>import pandas as pd</span><br/><span></span><br/><span># 读取Excel文件</span><br/><span>df = pd.read_excel('data.xlsx')</span><br/><span></span><br/><span># 显示前几行数据</span><br/><span>print(df.head())</span><br/></pre></div><p style=\\\"-webkit-tap-highlight-color: transparent; letter-spacing: 0.02em; text-indent: 0;\\\">这段代码中，<code style=\\\"-webkit-tap-highlight-color: transparent; color: rgb(145,109,213); letter-spacing: 0; background: none 0 0/auto no-repeat scroll padding-box border-box rgba(27,31,35,0.05); width: auto; height: auto; border-style: none; border-width: 3px; border-color: rgb(0,0,0) rgba(0,0,0,0.4) rgba(0,0,0,0.4); border-radius: 4px; word-break: break-all;\\\">pandas</code> 是一个非常强大的数据分析库，它能帮助我们轻松处理各种表格数据。<code style=\\\"-webkit-tap-highlight-color: transparent; color: rgb(145,109,213); letter-spacing: 0; background: none 0 0/auto no-repeat scroll padding-box border-box rgba(27,31,35,0.05); width: auto; height: auto; border-style: none; border-width: 3px; border-color: rgb(0,0,0) rgba(0,0,0,0.4) rgba(0,0,0,0.4); border-radius: 4px; word-break: break-all;\\\">read_excel</code> 函数可以读取Excel文件中的数据，并将其转换为 DataFrame 格式，方便我们后续操作。</p><h2 style=\\\"-webkit-tap-highlight-color: transparent; background-attachment: scroll; background-clip: border-box; background-image: none; background-origin: padding-box; background-position: 0 0; background-repeat: no-repeat; background-size: auto; border-style: none; border-width: 1px; border-color: rgb(0,0,0); border-radius: 0; height: auto; overflow: unset; text-shadow: none; transform: none; width: auto; -webkit-box-reflect: unset;\\\"><span style=\\\"-webkit-tap-highlight-color: transparent; color: rgb(34,34,34); letter-spacing: 0; border-style: none none none solid; border-width: 1px 1px 1px 5px; border-color: rgb(0,0,0) rgb(0,0,0) rgb(0,0,0) rgb(145,109,213); border-radius: 0; background-attachment: scroll; background-clip: border-box; background-image: none; background-origin: padding-box; background-position: 0 0; background-repeat: no-repeat; background-size: auto; display: block; font-weight: bold; height: auto; overflow: unset; text-indent: 0; text-shadow: none; transform: none; width: auto; -webkit-box-reflect: unset;\\\">2. 查看数据的基本信息</span></h2><p style=\\\"-webkit-tap-highlight-color: transparent; letter-spacing: 0.02em; text-indent: 0;\\\">了解数据的基本信息是数据分析的第一步。</p><div style=\\\"--en-codeblock: true; --en-meta: {&quot;title&quot;:&quot;&quot;,&quot;lang&quot;:&quot;Plain Text&quot;,&quot;theme&quot;:&quot;default&quot;,&quot;showLine&quot;:true,&quot;lineWrap&quot;:true}; box-sizing: border-box; color: rgb(51, 51, 51); border-top-left-radius: 4px; border-top-right-radius: 4px; border-bottom-right-radius: 4px; border-bottom-left-radius: 4px; background-color: rgb(251, 250, 248); border: 1px solid rgba(0, 0, 0, 0.14902); background-position: initial initial; background-repeat: initial initial;\\\"><pre><span># 查看数据基本信息</span><br/><span>print(df.info())</span><br/></pre></div><p style=\\\"-webkit-tap-highlight-color: transparent; letter-spacing: 0.02em; text-indent: 0;\\\">运行这段代码后，我们可以看到数据集的列名、非空值数量、数据类型等信息。这有助于我们快速了解数据的整体情况。</p><h2 style=\\\"-webkit-tap-highlight-color: transparent; background-attachment: scroll; background-clip: border-box; background-image: none; background-origin: padding-box; background-position: 0 0; background-repeat: no-repeat; background-size: auto; border-style: none; border-width: 1px; border-color: rgb(0,0,0); border-radius: 0; height: auto; overflow: unset; text-shadow: none; transform: none; width: auto; -webkit-box-reflect: unset;\\\"><span style=\\\"-webkit-tap-highlight-color: transparent; color: rgb(34,34,34); letter-spacing: 0; border-style: none none none solid; border-width: 1px 1px 1px 5px; border-color: rgb(0,0,0) rgb(0,0,0) rgb(0,0,0) rgb(145,109,213); border-radius: 0; background-attachment: scroll; background-clip: border-box; background-image: none; background-origin: padding-box; background-position: 0 0; background-repeat: no-repeat; background-size: auto; display: block; font-weight: bold; height: auto; overflow: unset; text-indent: 0; text-shadow: none; transform: none; width: auto; -webkit-box-reflect: unset;\\\">3. 获取特定列的数据</span></h2><p style=\\\"-webkit-tap-highlight-color: transparent; letter-spacing: 0.02em; text-indent: 0;\\\">有时候我们只需要处理数据集中的某几列数据。</p><div style=\\\"--en-codeblock: true; --en-meta: {&quot;title&quot;:&quot;&quot;,&quot;lang&quot;:&quot;Plain Text&quot;,&quot;theme&quot;:&quot;default&quot;,&quot;showLine&quot;:true,&quot;lineWrap&quot;:true}; box-sizing: border-box; color: rgb(51, 51, 51); border-top-left-radius: 4px; border-top-right-radius: 4px; border-bottom-right-radius: 4px; border-bottom-left-radius: 4px; background-color: rgb(251, 250, 248); border: 1px solid rgba(0, 0, 0, 0.14902); background-position: initial initial; background-repeat: initial initial;\\\"><pre><span># 获取特定列的数据</span><br/><span>specific_columns = df[['姓名', '年龄']]</span><br/><span>print(specific_columns)</span><br/></pre></div><p style=\\\"-webkit-tap-highlight-color: transparent; letter-spacing: 0.02em; text-indent: 0;\\\">这里我们使用了方括号 <code style=\\\"-webkit-tap-highlight-color: transparent; color: rgb(145,109,213); letter-spacing: 0; background: none 0 0/auto no-repeat scroll padding-box border-box rgba(27,31,35,0.05); width: auto; height: auto; border-style: none; border-width: 3px; border-color: rgb(0,0,0) rgba(0,0,0,0.4) rgba(0,0,0,0.4); border-radius: 4px; word-break: break-all;\\\">[]</code> 和列名列表来获取特定列的数据。<code style=\\\"-webkit-tap-highlight-color: transparent; color: rgb(145,109,213); letter-spacing: 0; background: none 0 0/auto no-repeat scroll padding-box border-box rgba(27,31,35,0.05); width: auto; height: auto; border-style: none; border-width: 3px; border-color: rgb(0,0,0) rgba(0,0,0,0.4) rgba(0,0,0,0.4); border-radius: 4px; word-break: break-all;\\\">df[['姓名', '年龄']]</code> 表示我们要提取名为“姓名”和“年龄”的两列数据。</p><h2 style=\\\"-webkit-tap-highlight-color: transparent; background-attachment: scroll; background-clip: border-box; background-image: none; background-origin: padding-box; background-position: 0 0; background-repeat: no-repeat; background-size: auto; border-style: none; border-width: 1px; border-color: rgb(0,0,0); border-radius: 0; height: auto; overflow: unset; text-shadow: none; transform: none; width: auto; -webkit-box-reflect: unset;\\\"><span style=\\\"-webkit-tap-highlight-color: transparent; color: rgb(34,34,34); letter-spacing: 0; border-style: none none none solid; border-width: 1px 1px 1px 5px; border-color: rgb(0,0,0) rgb(0,0,0) rgb(0,0,0) rgb(145,109,213); border-radius: 0; background-attachment: scroll; background-clip: border-box; background-image: none; background-origin: padding-box; background-position: 0 0; background-repeat: no-repeat; background-size: auto; display: block; font-weight: bold; height: auto; overflow: unset; text-indent: 0; text-shadow: none; transform: none; width: auto; -webkit-box-reflect: unset;\\\">4. 计算某一列的总和</span></h2><p style=\\\"-webkit-tap-highlight-color: transparent; letter-spacing: 0.02em; text-indent: 0;\\\">对于财务数据或其他需要汇总的数据，计算某一列的总和是非常常见的需求。</p><div style=\\\"--en-codeblock: true; --en-meta: {&quot;title&quot;:&quot;&quot;,&quot;lang&quot;:&quot;Plain Text&quot;,&quot;theme&quot;:&quot;default&quot;,&quot;showLine&quot;:true,&quot;lineWrap&quot;:true}; box-sizing: border-box; color: rgb(51, 51, 51); border-top-left-radius: 4px; border-top-right-radius: 4px; border-bottom-right-radius: 4px; border-bottom-left-radius: 4px; background-color: rgb(251, 250, 248); border: 1px solid rgba(0, 0, 0, 0.14902); background-position: initial initial; background-repeat: initial initial;\\\"><pre><span># 计算某一列的总和</span><br/><span>total_sum = df['销售额'].sum()</span><br/><span>print(total_sum)</span><br/></pre></div><p style=\\\"-webkit-tap-highlight-color: transparent; letter-spacing: 0.02em; text-indent: 0;\\\">这段代码中，<code style=\\\"-webkit-tap-highlight-color: transparent; color: rgb(145,109,213); letter-spacing: 0; background: none 0 0/auto no-repeat scroll padding-box border-box rgba(27,31,35,0.05); width: auto; height: auto; border-style: none; border-width: 3px; border-color: rgb(0,0,0) rgba(0,0,0,0.4) rgba(0,0,0,0.4); border-radius: 4px; word-break: break-all;\\\">sum()</code> 函数用于计算指定列（这里是“销售额”）的所有值的总和。</p><h2 style=\\\"-webkit-tap-highlight-color: transparent; background-attachment: scroll; background-clip: border-box; background-image: none; background-origin: padding-box; background-position: 0 0; background-repeat: no-repeat; background-size: auto; border-style: none; border-width: 1px; border-color: rgb(0,0,0); border-radius: 0; height: auto; overflow: unset; text-shadow: none; transform: none; width: auto; -webkit-box-reflect: unset;\\\"><span style=\\\"-webkit-tap-highlight-color: transparent; color: rgb(34,34,34); letter-spacing: 0; border-style: none none none solid; border-width: 1px 1px 1px 5px; border-color: rgb(0,0,0) rgb(0,0,0) rgb(0,0,0) rgb(145,109,213); border-radius: 0; background-attachment: scroll; background-clip: border-box; background-image: none; background-origin: padding-box; background-position: 0 0; background-repeat: no-repeat; background-size: auto; display: block; font-weight: bold; height: auto; overflow: unset; text-indent: 0; text-shadow: none; transform: none; width: auto; -webkit-box-reflect: unset;\\\">5. 找出最大值及其所在行</span></h2><p style=\\\"-webkit-tap-highlight-color: transparent; letter-spacing: 0.02em; text-indent: 0;\\\">有时候我们需要找出某一列的最大值，并查看该值所在的整行数据。</p><div style=\\\"--en-codeblock: true; --en-meta: {&quot;title&quot;:&quot;&quot;,&quot;lang&quot;:&quot;Plain Text&quot;,&quot;theme&quot;:&quot;default&quot;,&quot;showLine&quot;:true,&quot;lineWrap&quot;:true}; box-sizing: border-box; color: rgb(51, 51, 51); border-top-left-radius: 4px; border-top-right-radius: 4px; border-bottom-right-radius: 4px; border-bottom-left-radius: 4px; background-color: rgb(251, 250, 248); border: 1px solid rgba(0, 0, 0, 0.14902); background-position: initial initial; background-repeat: initial initial;\\\"><pre><span># 找出最大值及其所在行</span><br/><span>max_value_row = df[df['销售额'] == df['销售额'].max()]</span><br/><span>print(max_value_row)</span><br/></pre></div><p style=\\\"-webkit-tap-highlight-color: transparent; letter-spacing: 0.02em; text-indent: 0;\\\">这里我们先用 <code style=\\\"-webkit-tap-highlight-color: transparent; color: rgb(145,109,213); letter-spacing: 0; background: none 0 0/auto no-repeat scroll padding-box border-box rgba(27,31,35,0.05); width: auto; height: auto; border-style: none; border-width: 3px; border-color: rgb(0,0,0) rgba(0,0,0,0.4) rgba(0,0,0,0.4); border-radius: 4px; word-break: break-all;\\\">df['销售额'].max()</code> 找到“销售额”列的最大值，然后用条件 <code style=\\\"-webkit-tap-highlight-color: transparent; color: rgb(145,109,213); letter-spacing: 0; background: none 0 0/auto no-repeat scroll padding-box border-box rgba(27,31,35,0.05); width: auto; height: auto; border-style: none; border-width: 3px; border-color: rgb(0,0,0) rgba(0,0,0,0.4) rgba(0,0,0,0.4); border-radius: 4px; word-break: break-all;\\\">df['销售额'] == df['销售额'].max()</code> 找到所有等于这个最大值的行。</p><h2 style=\\\"-webkit-tap-highlight-color: transparent; background-attachment: scroll; background-clip: border-box; background-image: none; background-origin: padding-box; background-position: 0 0; background-repeat: no-repeat; background-size: auto; border-style: none; border-width: 1px; border-color: rgb(0,0,0); border-radius: 0; height: auto; overflow: unset; text-shadow: none; transform: none; width: auto; -webkit-box-reflect: unset;\\\"><span style=\\\"-webkit-tap-highlight-color: transparent; color: rgb(34,34,34); letter-spacing: 0; border-style: none none none solid; border-width: 1px 1px 1px 5px; border-color: rgb(0,0,0) rgb(0,0,0) rgb(0,0,0) rgb(145,109,213); border-radius: 0; background-attachment: scroll; background-clip: border-box; background-image: none; background-origin: padding-box; background-position: 0 0; background-repeat: no-repeat; background-size: auto; display: block; font-weight: bold; height: auto; overflow: unset; text-indent: 0; text-shadow: none; transform: none; width: auto; -webkit-box-reflect: unset;\\\">6. 数据去重</span></h2><p style=\\\"-webkit-tap-highlight-color: transparent; letter-spacing: 0.02em; text-indent: 0;\\\">数据去重是数据清洗过程中必不可少的一步。</p><div style=\\\"--en-codeblock: true; --en-meta: {&quot;title&quot;:&quot;&quot;,&quot;lang&quot;:&quot;Plain Text&quot;,&quot;theme&quot;:&quot;default&quot;,&quot;showLine&quot;:true,&quot;lineWrap&quot;:true}; box-sizing: border-box; color: rgb(51, 51, 51); border-top-left-radius: 4px; border-top-right-radius: 4px; border-bottom-right-radius: 4px; border-bottom-left-radius: 4px; background-color: rgb(251, 250, 248); border: 1px solid rgba(0, 0, 0, 0.14902); background-position: initial initial; background-repeat: initial initial;\\\"><pre><span># 数据去重</span><br/><span>unique_df = df.drop_duplicates()</span><br/><span>print(unique_df)</span><br/></pre></div><p style=\\\"-webkit-tap-highlight-color: transparent; letter-spacing: 0.02em; text-indent: 0;\\\"><code style=\\\"-webkit-tap-highlight-color: transparent; color: rgb(145,109,213); letter-spacing: 0; background: none 0 0/auto no-repeat scroll padding-box border-box rgba(27,31,35,0.05); width: auto; height: auto; border-style: none; border-width: 3px; border-color: rgb(0,0,0) rgba(0,0,0,0.4) rgba(0,0,0,0.4); border-radius: 4px; word-break: break-all;\\\">drop_duplicates()</code> 函数可以帮助我们删除重复的行，保留唯一的数据记录。</p><h2 style=\\\"-webkit-tap-highlight-color: transparent; background-attachment: scroll; background-clip: border-box; background-image: none; background-origin: padding-box; background-position: 0 0; background-repeat: no-repeat; background-size: auto; border-style: none; border-width: 1px; border-color: rgb(0,0,0); border-radius: 0; height: auto; overflow: unset; text-shadow: none; transform: none; width: auto; -webkit-box-reflect: unset;\\\"><span style=\\\"-webkit-tap-highlight-color: transparent; color: rgb(34,34,34); letter-spacing: 0; border-style: none none none solid; border-width: 1px 1px 1px 5px; border-color: rgb(0,0,0) rgb(0,0,0) rgb(0,0,0) rgb(145,109,213); border-radius: 0; background-attachment: scroll; background-clip: border-box; background-image: none; background-origin: padding-box; background-position: 0 0; background-repeat: no-repeat; background-size: auto; display: block; font-weight: bold; height: auto; overflow: unset; text-indent: 0; text-shadow: none; transform: none; width: auto; -webkit-box-reflect: unset;\\\">7. 添加新列</span></h2><p style=\\\"-webkit-tap-highlight-color: transparent; letter-spacing: 0.02em; text-indent: 0;\\\">在数据分析过程中，我们经常需要根据现有数据生成新的特征。</p><div style=\\\"--en-codeblock: true; --en-meta: {&quot;title&quot;:&quot;&quot;,&quot;lang&quot;:&quot;Plain Text&quot;,&quot;theme&quot;:&quot;default&quot;,&quot;showLine&quot;:true,&quot;lineWrap&quot;:true}; box-sizing: border-box; color: rgb(51, 51, 51); border-top-left-radius: 4px; border-top-right-radius: 4px; border-bottom-right-radius: 4px; border-bottom-left-radius: 4px; background-color: rgb(251, 250, 248); border: 1px solid rgba(0, 0, 0, 0.14902); background-position: initial initial; background-repeat: initial initial;\\\"><pre><span># 添加新列</span><br/><span>df['利润'] = df['销售额'] - df['成本']</span><br/><span>print(df)</span><br/></pre></div><p style=\\\"-webkit-tap-highlight-color: transparent; letter-spacing: 0.02em; text-indent: 0;\\\">这里我们根据“销售额”和“成本”两列计算出了一个新的“利润”列，并添加到了数据集中。</p><h2 style=\\\"-webkit-tap-highlight-color: transparent; background-attachment: scroll; background-clip: border-box; background-image: none; background-origin: padding-box; background-position: 0 0; background-repeat: no-repeat; background-size: auto; border-style: none; border-width: 1px; border-color: rgb(0,0,0); border-radius: 0; height: auto; overflow: unset; text-shadow: none; transform: none; width: auto; -webkit-box-reflect: unset;\\\"><span style=\\\"-webkit-tap-highlight-color: transparent; color: rgb(34,34,34); letter-spacing: 0; border-style: none none none solid; border-width: 1px 1px 1px 5px; border-color: rgb(0,0,0) rgb(0,0,0) rgb(0,0,0) rgb(145,109,213); border-radius: 0; background-attachment: scroll; background-clip: border-box; background-image: none; background-origin: padding-box; background-position: 0 0; background-repeat: no-repeat; background-size: auto; display: block; font-weight: bold; height: auto; overflow: unset; text-indent: 0; text-shadow: none; transform: none; width: auto; -webkit-box-reflect: unset;\\\">8. 修改列名</span></h2><p style=\\\"-webkit-tap-highlight-color: transparent; letter-spacing: 0.02em; text-indent: 0;\\\">为了使数据更有意义，我们可能需要修改某些列的名字。</p><div style=\\\"--en-codeblock: true; --en-meta: {&quot;title&quot;:&quot;&quot;,&quot;lang&quot;:&quot;Plain Text&quot;,&quot;theme&quot;:&quot;default&quot;,&quot;showLine&quot;:true,&quot;lineWrap&quot;:true}; box-sizing: border-box; color: rgb(51, 51, 51); border-top-left-radius: 4px; border-top-right-radius: 4px; border-bottom-right-radius: 4px; border-bottom-left-radius: 4px; background-color: rgb(251, 250, 248); border: 1px solid rgba(0, 0, 0, 0.14902); background-position: initial initial; background-repeat: initial initial;\\\"><pre><span># 修改列名</span><br/><span>df.rename(columns={'姓名': '名字'}, inplace=True)</span><br/><span>print(df)</span><br/></pre></div><p style=\\\"-webkit-tap-highlight-color: transparent; letter-spacing: 0.02em; text-indent: 0;\\\"><code style=\\\"-webkit-tap-highlight-color: transparent; color: rgb(145,109,213); letter-spacing: 0; background: none 0 0/auto no-repeat scroll padding-box border-box rgba(27,31,35,0.05); width: auto; height: auto; border-style: none; border-width: 3px; border-color: rgb(0,0,0) rgba(0,0,0,0.4) rgba(0,0,0,0.4); border-radius: 4px; word-break: break-all;\\\">rename()</code> 函数可以用来修改列名。<code style=\\\"-webkit-tap-highlight-color: transparent; color: rgb(145,109,213); letter-spacing: 0; background: none 0 0/auto no-repeat scroll padding-box border-box rgba(27,31,35,0.05); width: auto; height: auto; border-style: none; border-width: 3px; border-color: rgb(0,0,0) rgba(0,0,0,0.4) rgba(0,0,0,0.4); border-radius: 4px; word-break: break-all;\\\">inplace=True</code> 表示直接在原数据上修改。</p><h2 style=\\\"-webkit-tap-highlight-color: transparent; background-attachment: scroll; background-clip: border-box; background-image: none; background-origin: padding-box; background-position: 0 0; background-repeat: no-repeat; background-size: auto; border-style: none; border-width: 1px; border-color: rgb(0,0,0); border-radius: 0; height: auto; overflow: unset; text-shadow: none; transform: none; width: auto; -webkit-box-reflect: unset;\\\"><span style=\\\"-webkit-tap-highlight-color: transparent; color: rgb(34,34,34); letter-spacing: 0; border-style: none none none solid; border-width: 1px 1px 1px 5px; border-color: rgb(0,0,0) rgb(0,0,0) rgb(0,0,0) rgb(145,109,213); border-radius: 0; background-attachment: scroll; background-clip: border-box; background-image: none; background-origin: padding-box; background-position: 0 0; background-repeat: no-repeat; background-size: auto; display: block; font-weight: bold; height: auto; overflow: unset; text-indent: 0; text-shadow: none; transform: none; width: auto; -webkit-box-reflect: unset;\\\">9. 删除不需要的列</span></h2><p style=\\\"-webkit-tap-highlight-color: transparent; letter-spacing: 0.02em; text-indent: 0;\\\">有些列可能对我们当前的分析没有帮助，这时候就需要把它们删掉。</p><div style=\\\"--en-codeblock: true; --en-meta: {&quot;title&quot;:&quot;&quot;,&quot;lang&quot;:&quot;Plain Text&quot;,&quot;theme&quot;:&quot;default&quot;,&quot;showLine&quot;:true,&quot;lineWrap&quot;:true}; box-sizing: border-box; color: rgb(51, 51, 51); border-top-left-radius: 4px; border-top-right-radius: 4px; border-bottom-right-radius: 4px; border-bottom-left-radius: 4px; background-color: rgb(251, 250, 248); border: 1px solid rgba(0, 0, 0, 0.14902); background-position: initial initial; background-repeat: initial initial;\\\"><pre><span># 删除不需要的列</span><br/><span>df.drop('地址', axis=1, inplace=True)</span><br/><span>print(df)</span><br/></pre></div><p style=\\\"-webkit-tap-highlight-color: transparent; letter-spacing: 0.02em; text-indent: 0;\\\"><code style=\\\"-webkit-tap-highlight-color: transparent; color: rgb(145,109,213); letter-spacing: 0; background: none 0 0/auto no-repeat scroll padding-box border-box rgba(27,31,35,0.05); width: auto; height: auto; border-style: none; border-width: 3px; border-color: rgb(0,0,0) rgba(0,0,0,0.4) rgba(0,0,0,0.4); border-radius: 4px; word-break: break-all;\\\">drop()</code> 函数可以用来删除指定的列。<code style=\\\"-webkit-tap-highlight-color: transparent; color: rgb(145,109,213); letter-spacing: 0; background: none 0 0/auto no-repeat scroll padding-box border-box rgba(27,31,35,0.05); width: auto; height: auto; border-style: none; border-width: 3px; border-color: rgb(0,0,0) rgba(0,0,0,0.4) rgba(0,0,0,0.4); border-radius: 4px; word-break: break-all;\\\">axis=1</code> 表示要删除的是列而不是行。</p><h2 style=\\\"-webkit-tap-highlight-color: transparent; background-attachment: scroll; background-clip: border-box; background-image: none; background-origin: padding-box; background-position: 0 0; background-repeat: no-repeat; background-size: auto; border-style: none; border-width: 1px; border-color: rgb(0,0,0); border-radius: 0; height: auto; overflow: unset; text-shadow: none; transform: none; width: auto; -webkit-box-reflect: unset;\\\"><span style=\\\"-webkit-tap-highlight-color: transparent; color: rgb(34,34,34); letter-spacing: 0; border-style: none none none solid; border-width: 1px 1px 1px 5px; border-color: rgb(0,0,0) rgb(0,0,0) rgb(0,0,0) rgb(145,109,213); border-radius: 0; background-attachment: scroll; background-clip: border-box; background-image: none; background-origin: padding-box; background-position: 0 0; background-repeat: no-repeat; background-size: auto; display: block; font-weight: bold; height: auto; overflow: unset; text-indent: 0; text-shadow: none; transform: none; width: auto; -webkit-box-reflect: unset;\\\">10. 将数据保存回Excel</span></h2><p style=\\\"-webkit-tap-highlight-color: transparent; letter-spacing: 0.02em; text-indent: 0;\\\">最后，我们还需要将处理好的数据保存回Excel文件中。</p><div style=\\\"--en-codeblock: true; --en-meta: {&quot;title&quot;:&quot;&quot;,&quot;lang&quot;:&quot;Plain Text&quot;,&quot;theme&quot;:&quot;default&quot;,&quot;showLine&quot;:true,&quot;lineWrap&quot;:true}; box-sizing: border-box; color: rgb(51, 51, 51); border-top-left-radius: 4px; border-top-right-radius: 4px; border-bottom-right-radius: 4px; border-bottom-left-radius: 4px; background-color: rgb(251, 250, 248); border: 1px solid rgba(0, 0, 0, 0.14902); background-position: initial initial; background-repeat: initial initial;\\\"><pre><span># 将数据保存回Excel</span><br/><span>df.to_excel('output_data.xlsx', index=False)</span><br/></pre></div><p style=\\\"-webkit-tap-highlight-color: transparent; letter-spacing: 0.02em; text-indent: 0;\\\"><code style=\\\"-webkit-tap-highlight-color: transparent; color: rgb(145,109,213); letter-spacing: 0; background: none 0 0/auto no-repeat scroll padding-box border-box rgba(27,31,35,0.05); width: auto; height: auto; border-style: none; border-width: 3px; border-color: rgb(0,0,0) rgba(0,0,0,0.4) rgba(0,0,0,0.4); border-radius: 4px; word-break: break-all;\\\">to_excel()</code> 函数可以将DataFrame对象保存为Excel文件。<code style=\\\"-webkit-tap-highlight-color: transparent; color: rgb(145,109,213); letter-spacing: 0; background: none 0 0/auto no-repeat scroll padding-box border-box rgba(27,31,35,0.05); width: auto; height: auto; border-style: none; border-width: 3px; border-color: rgb(0,0,0) rgba(0,0,0,0.4) rgba(0,0,0,0.4); border-radius: 4px; word-break: break-all;\\\">index=False</code> 表示不保存索引列。</p><h2 style=\\\"-webkit-tap-highlight-color: transparent; background-attachment: scroll; background-clip: border-box; background-image: none; background-origin: padding-box; background-position: 0 0; background-repeat: no-repeat; background-size: auto; border-style: none; border-width: 1px; border-color: rgb(0,0,0); border-radius: 0; height: auto; overflow: unset; text-shadow: none; transform: none; width: auto; -webkit-box-reflect: unset;\\\"><span style=\\\"-webkit-tap-highlight-color: transparent; color: rgb(34,34,34); letter-spacing: 0; border-style: none none none solid; border-width: 1px 1px 1px 5px; border-color: rgb(0,0,0) rgb(0,0,0) rgb(0,0,0) rgb(145,109,213); border-radius: 0; background-attachment: scroll; background-clip: border-box; background-image: none; background-origin: padding-box; background-position: 0 0; background-repeat: no-repeat; background-size: auto; display: block; font-weight: bold; height: auto; overflow: unset; text-indent: 0; text-shadow: none; transform: none; width: auto; -webkit-box-reflect: unset;\\\">11. 数据排序</span></h2><p style=\\\"-webkit-tap-highlight-color: transparent; letter-spacing: 0.02em; text-indent: 0;\\\">在数据分析中，排序是非常常见的需求之一。我们可以通过简单的代码实现数据的排序。</p><div style=\\\"--en-codeblock: true; --en-meta: {&quot;title&quot;:&quot;&quot;,&quot;lang&quot;:&quot;Plain Text&quot;,&quot;theme&quot;:&quot;default&quot;,&quot;showLine&quot;:true,&quot;lineWrap&quot;:true}; box-sizing: border-box; color: rgb(51, 51, 51); border-top-left-radius: 4px; border-top-right-radius: 4px; border-bottom-right-radius: 4px; border-bottom-left-radius: 4px; background-color: rgb(251, 250, 248); border: 1px solid rgba(0, 0, 0, 0.14902); background-position: initial initial; background-repeat: initial initial;\\\"><pre><span># 对数据按销售额降序排序</span><br/><span>sorted_df = df.sort_values(by='销售额', ascending=False)</span><br/><span>print(sorted_df)</span><br/></pre></div><p style=\\\"-webkit-tap-highlight-color: transparent; letter-spacing: 0.02em; text-indent: 0;\\\">这里我们使用了 <code style=\\\"-webkit-tap-highlight-color: transparent; color: rgb(145,109,213); letter-spacing: 0; background: none 0 0/auto no-repeat scroll padding-box border-box rgba(27,31,35,0.05); width: auto; height: auto; border-style: none; border-width: 3px; border-color: rgb(0,0,0) rgba(0,0,0,0.4) rgba(0,0,0,0.4); border-radius: 4px; word-break: break-all;\\\">sort_values()</code> 函数，参数 <code style=\\\"-webkit-tap-highlight-color: transparent; color: rgb(145,109,213); letter-spacing: 0; background: none 0 0/auto no-repeat scroll padding-box border-box rgba(27,31,35,0.05); width: auto; height: auto; border-style: none; border-width: 3px; border-color: rgb(0,0,0) rgba(0,0,0,0.4) rgba(0,0,0,0.4); border-radius: 4px; word-break: break-all;\\\">by='销售额'</code> 表示按“销售额”列进行排序，<code style=\\\"-webkit-tap-highlight-color: transparent; color: rgb(145,109,213); letter-spacing: 0; background: none 0 0/auto no-repeat scroll padding-box border-box rgba(27,31,35,0.05); width: auto; height: auto; border-style: none; border-width: 3px; border-color: rgb(0,0,0) rgba(0,0,0,0.4) rgba(0,0,0,0.4); border-radius: 4px; word-break: break-all;\\\">ascending=False</code> 表示降序排序。</p><h2 style=\\\"-webkit-tap-highlight-color: transparent; background-attachment: scroll; background-clip: border-box; background-image: none; background-origin: padding-box; background-position: 0 0; background-repeat: no-repeat; background-size: auto; border-style: none; border-width: 1px; border-color: rgb(0,0,0); border-radius: 0; height: auto; overflow: unset; text-shadow: none; transform: none; width: auto; -webkit-box-reflect: unset;\\\"><span style=\\\"-webkit-tap-highlight-color: transparent; color: rgb(34,34,34); letter-spacing: 0; border-style: none none none solid; border-width: 1px 1px 1px 5px; border-color: rgb(0,0,0) rgb(0,0,0) rgb(0,0,0) rgb(145,109,213); border-radius: 0; background-attachment: scroll; background-clip: border-box; background-image: none; background-origin: padding-box; background-position: 0 0; background-repeat: no-repeat; background-size: auto; display: block; font-weight: bold; height: auto; overflow: unset; text-indent: 0; text-shadow: none; transform: none; width: auto; -webkit-box-reflect: unset;\\\">12. 筛选符合条件的数据</span></h2><p style=\\\"-webkit-tap-highlight-color: transparent; letter-spacing: 0.02em; text-indent: 0;\\\">筛选数据也是数据分析中的常见需求。我们可以用一行代码实现数据的筛选。</p><div style=\\\"--en-codeblock: true; --en-meta: {&quot;title&quot;:&quot;&quot;,&quot;lang&quot;:&quot;Plain Text&quot;,&quot;theme&quot;:&quot;default&quot;,&quot;showLine&quot;:true,&quot;lineWrap&quot;:true}; box-sizing: border-box; color: rgb(51, 51, 51); border-top-left-radius: 4px; border-top-right-radius: 4px; border-bottom-right-radius: 4px; border-bottom-left-radius: 4px; background-color: rgb(251, 250, 248); border: 1px solid rgba(0, 0, 0, 0.14902); background-position: initial initial; background-repeat: initial initial;\\\"><pre><span># 筛选出销售额大于1000的数据</span><br/><span>filtered_df = df[df['销售额'] &gt; 1000]</span><br/><span>print(filtered_df)</span><br/></pre></div><p style=\\\"-webkit-tap-highlight-color: transparent; letter-spacing: 0.02em; text-indent: 0;\\\">这里我们使用了布尔索引来筛选数据。<code style=\\\"-webkit-tap-highlight-color: transparent; color: rgb(145,109,213); letter-spacing: 0; background: none 0 0/auto no-repeat scroll padding-box border-box rgba(27,31,35,0.05); width: auto; height: auto; border-style: none; border-width: 3px; border-color: rgb(0,0,0) rgba(0,0,0,0.4) rgba(0,0,0,0.4); border-radius: 4px; word-break: break-all;\\\">df['销售额'] &gt; 1000</code> 生成一个布尔数组，表示哪些行的“销售额”大于1000。<code style=\\\"-webkit-tap-highlight-color: transparent; color: rgb(145,109,213); letter-spacing: 0; background: none 0 0/auto no-repeat scroll padding-box border-box rgba(27,31,35,0.05); width: auto; height: auto; border-style: none; border-width: 3px; border-color: rgb(0,0,0) rgba(0,0,0,0.4) rgba(0,0,0,0.4); border-radius: 4px; word-break: break-all;\\\">df[...]</code> 则根据这个布尔数组来筛选数据。</p><h2 style=\\\"-webkit-tap-highlight-color: transparent; background-attachment: scroll; background-clip: border-box; background-image: none; background-origin: padding-box; background-position: 0 0; background-repeat: no-repeat; background-size: auto; border-style: none; border-width: 1px; border-color: rgb(0,0,0); border-radius: 0; height: auto; overflow: unset; text-shadow: none; transform: none; width: auto; -webkit-box-reflect: unset;\\\"><span style=\\\"-webkit-tap-highlight-color: transparent; color: rgb(34,34,34); letter-spacing: 0; border-style: none none none solid; border-width: 1px 1px 1px 5px; border-color: rgb(0,0,0) rgb(0,0,0) rgb(0,0,0) rgb(145,109,213); border-radius: 0; background-attachment: scroll; background-clip: border-box; background-image: none; background-origin: padding-box; background-position: 0 0; background-repeat: no-repeat; background-size: auto; display: block; font-weight: bold; height: auto; overflow: unset; text-indent: 0; text-shadow: none; transform: none; width: auto; -webkit-box-reflect: unset;\\\">13. 替换特定值</span></h2><p style=\\\"-webkit-tap-highlight-color: transparent; letter-spacing: 0.02em; text-indent: 0;\\\">在数据清洗过程中，替换特定值是一个常见的操作。</p><div style=\\\"--en-codeblock: true; --en-meta: {&quot;title&quot;:&quot;&quot;,&quot;lang&quot;:&quot;Plain Text&quot;,&quot;theme&quot;:&quot;default&quot;,&quot;showLine&quot;:true,&quot;lineWrap&quot;:true}; box-sizing: border-box; color: rgb(51, 51, 51); border-top-left-radius: 4px; border-top-right-radius: 4px; border-bottom-right-radius: 4px; border-bottom-left-radius: 4px; background-color: rgb(251, 250, 248); border: 1px solid rgba(0, 0, 0, 0.14902); background-position: initial initial; background-repeat: initial initial;\\\"><pre><span># 替换特定值</span><br/><span>df.replace({'销售额': {100: 0}}, inplace=True)</span><br/><span>print(df)</span><br/></pre></div><p style=\\\"-webkit-tap-highlight-color: transparent; letter-spacing: 0.02em; text-indent: 0;\\\">这里我们使用了 <code style=\\\"-webkit-tap-highlight-color: transparent; color: rgb(145,109,213); letter-spacing: 0; background: none 0 0/auto no-repeat scroll padding-box border-box rgba(27,31,35,0.05); width: auto; height: auto; border-style: none; border-width: 3px; border-color: rgb(0,0,0) rgba(0,0,0,0.4) rgba(0,0,0,0.4); border-radius: 4px; word-break: break-all;\\\">replace()</code> 函数，将“销售额”列中的值100替换为0。</p><h2 style=\\\"-webkit-tap-highlight-color: transparent; background-attachment: scroll; background-clip: border-box; background-image: none; background-origin: padding-box; background-position: 0 0; background-repeat: no-repeat; background-size: auto; border-style: none; border-width: 1px; border-color: rgb(0,0,0); border-radius: 0; height: auto; overflow: unset; text-shadow: none; transform: none; width: auto; -webkit-box-reflect: unset;\\\"><span style=\\\"-webkit-tap-highlight-color: transparent; color: rgb(34,34,34); letter-spacing: 0; border-style: none none none solid; border-width: 1px 1px 1px 5px; border-color: rgb(0,0,0) rgb(0,0,0) rgb(0,0,0) rgb(145,109,213); border-radius: 0; background-attachment: scroll; background-clip: border-box; background-image: none; background-origin: padding-box; background-position: 0 0; background-repeat: no-repeat; background-size: auto; display: block; font-weight: bold; height: auto; overflow: unset; text-indent: 0; text-shadow: none; transform: none; width: auto; -webkit-box-reflect: unset;\\\">14. 计算统计数据</span></h2><p style=\\\"-webkit-tap-highlight-color: transparent; letter-spacing: 0.02em; text-indent: 0;\\\">统计分析中，计算均值、中位数、标准差等统计量是非常重要的步骤。</p><div style=\\\"--en-codeblock: true; --en-meta: {&quot;title&quot;:&quot;&quot;,&quot;lang&quot;:&quot;Plain Text&quot;,&quot;theme&quot;:&quot;default&quot;,&quot;showLine&quot;:true,&quot;lineWrap&quot;:true}; box-sizing: border-box; color: rgb(51, 51, 51); border-top-left-radius: 4px; border-top-right-radius: 4px; border-bottom-right-radius: 4px; border-bottom-left-radius: 4px; background-color: rgb(251, 250, 248); border: 1px solid rgba(0, 0, 0, 0.14902); background-position: initial initial; background-repeat: initial initial;\\\"><pre><span># 计算统计数据</span><br/><span>mean_sales = df['销售额'].mean()</span><br/><span>median_sales = df['销售额'].median()</span><br/><span>std_sales = df['销售额'].std()</span><br/><span></span><br/><span>print(f&quot;平均销售额：{mean_sales}&quot;)</span><br/><span>print(f&quot;中位数销售额：{median_sales}&quot;)</span><br/><span>print(f&quot;标准差销售额：{std_sales}&quot;)</span><br/></pre></div><p style=\\\"-webkit-tap-highlight-color: transparent; letter-spacing: 0.02em; text-indent: 0;\\\">这里我们分别计算了“销售额”列的平均值、中位数和标准差。</p><h2 style=\\\"-webkit-tap-highlight-color: transparent; background-attachment: scroll; background-clip: border-box; background-image: none; background-origin: padding-box; background-position: 0 0; background-repeat: no-repeat; background-size: auto; border-style: none; border-width: 1px; border-color: rgb(0,0,0); border-radius: 0; height: auto; overflow: unset; text-shadow: none; transform: none; width: auto; -webkit-box-reflect: unset;\\\"><span style=\\\"-webkit-tap-highlight-color: transparent; color: rgb(34,34,34); letter-spacing: 0; border-style: none none none solid; border-width: 1px 1px 1px 5px; border-color: rgb(0,0,0) rgb(0,0,0) rgb(0,0,0) rgb(145,109,213); border-radius: 0; background-attachment: scroll; background-clip: border-box; background-image: none; background-origin: padding-box; background-position: 0 0; background-repeat: no-repeat; background-size: auto; display: block; font-weight: bold; height: auto; overflow: unset; text-indent: 0; text-shadow: none; transform: none; width: auto; -webkit-box-reflect: unset;\\\">15. 数据聚合</span></h2><p style=\\\"-webkit-tap-highlight-color: transparent; letter-spacing: 0.02em; text-indent: 0;\\\">数据聚合是数据分析中的一个重要步骤，可以帮助我们更好地理解数据。</p><div style=\\\"--en-codeblock: true; --en-meta: {&quot;title&quot;:&quot;&quot;,&quot;lang&quot;:&quot;Plain Text&quot;,&quot;theme&quot;:&quot;default&quot;,&quot;showLine&quot;:true,&quot;lineWrap&quot;:true}; box-sizing: border-box; color: rgb(51, 51, 51); border-top-left-radius: 4px; border-top-right-radius: 4px; border-bottom-right-radius: 4px; border-bottom-left-radius: 4px; background-color: rgb(251, 250, 248); border: 1px solid rgba(0, 0, 0, 0.14902); background-position: initial initial; background-repeat: initial initial;\\\"><pre><span># 数据聚合</span><br/><span>aggregated_data = df.groupby('产品名称').agg({'销售额': ['sum', 'mean', 'count']})</span><br/><span>print(aggregated_data)</span><br/></pre></div><p style=\\\"-webkit-tap-highlight-color: transparent; letter-spacing: 0.02em; text-indent: 0;\\\">这里我们使用了 <code style=\\\"-webkit-tap-highlight-color: transparent; color: rgb(145,109,213); letter-spacing: 0; background: none 0 0/auto no-repeat scroll padding-box border-box rgba(27,31,35,0.05); width: auto; height: auto; border-style: none; border-width: 3px; border-color: rgb(0,0,0) rgba(0,0,0,0.4) rgba(0,0,0,0.4); border-radius: 4px; word-break: break-all;\\\">groupby()</code> 函数对“产品名称”列进行分组，并使用 <code style=\\\"-webkit-tap-highlight-color: transparent; color: rgb(145,109,213); letter-spacing: 0; background: none 0 0/auto no-repeat scroll padding-box border-box rgba(27,31,35,0.05); width: auto; height: auto; border-style: none; border-width: 3px; border-color: rgb(0,0,0) rgba(0,0,0,0.4) rgba(0,0,0,0.4); border-radius: 4px; word-break: break-all;\\\">agg()</code> 函数计算了“销售额”列的总和、平均值和计数值。</p><h2 style=\\\"-webkit-tap-highlight-color: transparent; background-attachment: scroll; background-clip: border-box; background-image: none; background-origin: padding-box; background-position: 0 0; background-repeat: no-repeat; background-size: auto; border-style: none; border-width: 1px; border-color: rgb(0,0,0); border-radius: 0; height: auto; overflow: unset; text-shadow: none; transform: none; width: auto; -webkit-box-reflect: unset;\\\"><span style=\\\"-webkit-tap-highlight-color: transparent; color: rgb(34,34,34); letter-spacing: 0; border-style: none none none solid; border-width: 1px 1px 1px 5px; border-color: rgb(0,0,0) rgb(0,0,0) rgb(0,0,0) rgb(145,109,213); border-radius: 0; background-attachment: scroll; background-clip: border-box; background-image: none; background-origin: padding-box; background-position: 0 0; background-repeat: no-repeat; background-size: auto; display: block; font-weight: bold; height: auto; overflow: unset; text-indent: 0; text-shadow: none; transform: none; width: auto; -webkit-box-reflect: unset;\\\">16. 数据透视表</span></h2><p style=\\\"-webkit-tap-highlight-color: transparent; letter-spacing: 0.02em; text-indent: 0;\\\">数据透视表是一种常用的数据分析工具，可以帮助我们快速进行多维度分析。</p><div style=\\\"--en-codeblock: true; --en-meta: {&quot;title&quot;:&quot;&quot;,&quot;lang&quot;:&quot;Plain Text&quot;,&quot;theme&quot;:&quot;default&quot;,&quot;showLine&quot;:true,&quot;lineWrap&quot;:true}; box-sizing: border-box; color: rgb(51, 51, 51); border-top-left-radius: 4px; border-top-right-radius: 4px; border-bottom-right-radius: 4px; border-bottom-left-radius: 4px; background-color: rgb(251, 250, 248); border: 1px solid rgba(0, 0, 0, 0.14902); background-position: initial initial; background-repeat: initial initial;\\\"><pre><span># 创建数据透视表</span><br/><span>pivot_table = pd.pivot_table(df, values='销售额', index=['产品名称'], columns=['月份'], aggfunc='sum')</span><br/><span>print(pivot_table)</span><br/></pre></div><p style=\\\"-webkit-tap-highlight-color: transparent; letter-spacing: 0.02em; text-indent: 0;\\\">这里我们使用了 <code style=\\\"-webkit-tap-highlight-color: transparent; color: rgb(145,109,213); letter-spacing: 0; background: none 0 0/auto no-repeat scroll padding-box border-box rgba(27,31,35,0.05); width: auto; height: auto; border-style: none; border-width: 3px; border-color: rgb(0,0,0) rgba(0,0,0,0.4) rgba(0,0,0,0.4); border-radius: 4px; word-break: break-all;\\\">pivot_table()</code> 函数创建了一个数据透视表，按“产品名称”和“月份”进行分组，并计算了“销售额”的总和。</p><h2 style=\\\"-webkit-tap-highlight-color: transparent; background-attachment: scroll; background-clip: border-box; background-image: none; background-origin: padding-box; background-position: 0 0; background-repeat: no-repeat; background-size: auto; border-style: none; border-width: 1px; border-color: rgb(0,0,0); border-radius: 0; height: auto; overflow: unset; text-shadow: none; transform: none; width: auto; -webkit-box-reflect: unset;\\\"><span style=\\\"-webkit-tap-highlight-color: transparent; color: rgb(34,34,34); letter-spacing: 0; border-style: none none none solid; border-width: 1px 1px 1px 5px; border-color: rgb(0,0,0) rgb(0,0,0) rgb(0,0,0) rgb(145,109,213); border-radius: 0; background-attachment: scroll; background-clip: border-box; background-image: none; background-origin: padding-box; background-position: 0 0; background-repeat: no-repeat; background-size: auto; display: block; font-weight: bold; height: auto; overflow: unset; text-indent: 0; text-shadow: none; transform: none; width: auto; -webkit-box-reflect: unset;\\\">17. 数据可视化</span></h2><p style=\\\"-webkit-tap-highlight-color: transparent; letter-spacing: 0.02em; text-indent: 0;\\\">数据可视化是数据分析的重要环节，可以帮助我们直观地理解数据。</p><div style=\\\"--en-codeblock: true; --en-meta: {&quot;title&quot;:&quot;&quot;,&quot;lang&quot;:&quot;Plain Text&quot;,&quot;theme&quot;:&quot;default&quot;,&quot;showLine&quot;:true,&quot;lineWrap&quot;:true}; box-sizing: border-box; color: rgb(51, 51, 51); border-top-left-radius: 4px; border-top-right-radius: 4px; border-bottom-right-radius: 4px; border-bottom-left-radius: 4px; background-color: rgb(251, 250, 248); border: 1px solid rgba(0, 0, 0, 0.14902); background-position: initial initial; background-repeat: initial initial;\\\"><pre><span># 数据可视化</span><br/><span>import matplotlib.pyplot as plt</span><br/><span></span><br/><span># 绘制柱状图</span><br/><span>plt.bar(df['产品名称'], df['销售额'])</span><br/><span>plt.xlabel('产品名称')</span><br/><span>plt.ylabel('销售额')</span><br/><span>plt.title('各产品销售额')</span><br/><span>plt.show()</span><br/></pre></div><p style=\\\"-webkit-tap-highlight-color: transparent; letter-spacing: 0.02em; text-indent: 0;\\\">这里我们使用了 <code style=\\\"-webkit-tap-highlight-color: transparent; color: rgb(145,109,213); letter-spacing: 0; background: none 0 0/auto no-repeat scroll padding-box border-box rgba(27,31,35,0.05); width: auto; height: auto; border-style: none; border-width: 3px; border-color: rgb(0,0,0) rgba(0,0,0,0.4) rgba(0,0,0,0.4); border-radius: 4px; word-break: break-all;\\\">matplotlib</code> 库绘制了一个柱状图，显示了每个产品的销售额。</p><h2 style=\\\"-webkit-tap-highlight-color: transparent; background-attachment: scroll; background-clip: border-box; background-image: none; background-origin: padding-box; background-position: 0 0; background-repeat: no-repeat; background-size: auto; border-style: none; border-width: 1px; border-color: rgb(0,0,0); border-radius: 0; height: auto; overflow: unset; text-shadow: none; transform: none; width: auto; -webkit-box-reflect: unset;\\\"><span style=\\\"-webkit-tap-highlight-color: transparent; color: rgb(34,34,34); letter-spacing: 0; border-style: none none none solid; border-width: 1px 1px 1px 5px; border-color: rgb(0,0,0) rgb(0,0,0) rgb(0,0,0) rgb(145,109,213); border-radius: 0; background-attachment: scroll; background-clip: border-box; background-image: none; background-origin: padding-box; background-position: 0 0; background-repeat: no-repeat; background-size: auto; display: block; font-weight: bold; height: auto; overflow: unset; text-indent: 0; text-shadow: none; transform: none; width: auto; -webkit-box-reflect: unset;\\\">18. 数据合并</span></h2><p style=\\\"-webkit-tap-highlight-color: transparent; letter-spacing: 0.02em; text-indent: 0;\\\">数据合并是数据分析中的常见需求，可以将多个数据集合并成一个。</p><div style=\\\"--en-codeblock: true; --en-meta: {&quot;title&quot;:&quot;&quot;,&quot;lang&quot;:&quot;Plain Text&quot;,&quot;theme&quot;:&quot;default&quot;,&quot;showLine&quot;:true,&quot;lineWrap&quot;:true}; box-sizing: border-box; color: rgb(51, 51, 51); border-top-left-radius: 4px; border-top-right-radius: 4px; border-bottom-right-radius: 4px; border-bottom-left-radius: 4px; background-color: rgb(251, 250, 248); border: 1px solid rgba(0, 0, 0, 0.14902); background-position: initial initial; background-repeat: initial initial;\\\"><pre><span># 数据合并</span><br/><span>other_df = pd.read_excel('other_data.xlsx')</span><br/><span>merged_df = pd.merge(df, other_df, on='产品名称')</span><br/><span>print(merged_df)</span><br/></pre></div><p style=\\\"-webkit-tap-highlight-color: transparent; letter-spacing: 0.02em; text-indent: 0;\\\">这里我们使用了 <code style=\\\"-webkit-tap-highlight-color: transparent; color: rgb(145,109,213); letter-spacing: 0; background: none 0 0/auto no-repeat scroll padding-box border-box rgba(27,31,35,0.05); width: auto; height: auto; border-style: none; border-width: 3px; border-color: rgb(0,0,0) rgba(0,0,0,0.4) rgba(0,0,0,0.4); border-radius: 4px; word-break: break-all;\\\">pd.merge()</code> 函数将两个数据集按“产品名称”列进行合并。</p><h2 style=\\\"-webkit-tap-highlight-color: transparent; background-attachment: scroll; background-clip: border-box; background-image: none; background-origin: padding-box; background-position: 0 0; background-repeat: no-repeat; background-size: auto; border-style: none; border-width: 1px; border-color: rgb(0,0,0); border-radius: 0; height: auto; overflow: unset; text-shadow: none; transform: none; width: auto; -webkit-box-reflect: unset;\\\"><span style=\\\"-webkit-tap-highlight-color: transparent; color: rgb(34,34,34); letter-spacing: 0; border-style: none none none solid; border-width: 1px 1px 1px 5px; border-color: rgb(0,0,0) rgb(0,0,0) rgb(0,0,0) rgb(145,109,213); border-radius: 0; background-attachment: scroll; background-clip: border-box; background-image: none; background-origin: padding-box; background-position: 0 0; background-repeat: no-repeat; background-size: auto; display: block; font-weight: bold; height: auto; overflow: unset; text-indent: 0; text-shadow: none; transform: none; width: auto; -webkit-box-reflect: unset;\\\">19. 数据切片</span></h2><p style=\\\"-webkit-tap-highlight-color: transparent; letter-spacing: 0.02em; text-indent: 0;\\\">数据切片可以帮助我们快速获取特定部分的数据。</p><div style=\\\"--en-codeblock: true; --en-meta: {&quot;title&quot;:&quot;&quot;,&quot;lang&quot;:&quot;Plain Text&quot;,&quot;theme&quot;:&quot;default&quot;,&quot;showLine&quot;:true,&quot;lineWrap&quot;:true}; box-sizing: border-box; color: rgb(51, 51, 51); border-top-left-radius: 4px; border-top-right-radius: 4px; border-bottom-right-radius: 4px; border-bottom-left-radius: 4px; background-color: rgb(251, 250, 248); border: 1px solid rgba(0, 0, 0, 0.14902); background-position: initial initial; background-repeat: initial initial;\\\"><pre><span># 数据切片</span><br/><span>sliced_df = df.loc[(df['销售额'] &gt; 1000) &amp; (df['产品名称'] == '产品A')]</span><br/><span>print(sliced_df)</span><br/></pre></div><p style=\\\"-webkit-tap-highlight-color: transparent; letter-spacing: 0.02em; text-indent: 0;\\\">这里我们使用了 <code style=\\\"-webkit-tap-highlight-color: transparent; color: rgb(145,109,213); letter-spacing: 0; background: none 0 0/auto no-repeat scroll padding-box border-box rgba(27,31,35,0.05); width: auto; height: auto; border-style: none; border-width: 3px; border-color: rgb(0,0,0) rgba(0,0,0,0.4) rgba(0,0,0,0.4); border-radius: 4px; word-break: break-all;\\\">loc</code> 属性来切片数据，<code style=\\\"-webkit-tap-highlight-color: transparent; color: rgb(145,109,213); letter-spacing: 0; background: none 0 0/auto no-repeat scroll padding-box border-box rgba(27,31,35,0.05); width: auto; height: auto; border-style: none; border-width: 3px; border-color: rgb(0,0,0) rgba(0,0,0,0.4) rgba(0,0,0,0.4); border-radius: 4px; word-break: break-all;\\\">df['销售额'] &gt; 1000</code> 和 <code style=\\\"-webkit-tap-highlight-color: transparent; color: rgb(145,109,213); letter-spacing: 0; background: none 0 0/auto no-repeat scroll padding-box border-box rgba(27,31,35,0.05); width: auto; height: auto; border-style: none; border-width: 3px; border-color: rgb(0,0,0) rgba(0,0,0,0.4) rgba(0,0,0,0.4); border-radius: 4px; word-break: break-all;\\\">df['产品名称'] == '产品A'</code> 表示筛选条件。</p><h2 style=\\\"-webkit-tap-highlight-color: transparent; background-attachment: scroll; background-clip: border-box; background-image: none; background-origin: padding-box; background-position: 0 0; background-repeat: no-repeat; background-size: auto; border-style: none; border-width: 1px; border-color: rgb(0,0,0); border-radius: 0; height: auto; overflow: unset; text-shadow: none; transform: none; width: auto; -webkit-box-reflect: unset;\\\"><span style=\\\"-webkit-tap-highlight-color: transparent; color: rgb(34,34,34); letter-spacing: 0; border-style: none none none solid; border-width: 1px 1px 1px 5px; border-color: rgb(0,0,0) rgb(0,0,0) rgb(0,0,0) rgb(145,109,213); border-radius: 0; background-attachment: scroll; background-clip: border-box; background-image: none; background-origin: padding-box; background-position: 0 0; background-repeat: no-repeat; background-size: auto; display: block; font-weight: bold; height: auto; overflow: unset; text-indent: 0; text-shadow: none; transform: none; width: auto; -webkit-box-reflect: unset;\\\">20. 数据过滤</span></h2><p style=\\\"-webkit-tap-highlight-color: transparent; letter-spacing: 0.02em; text-indent: 0;\\\">数据过滤可以帮助我们筛选出特定条件下的数据。</p><div style=\\\"--en-codeblock: true; --en-meta: {&quot;title&quot;:&quot;&quot;,&quot;lang&quot;:&quot;Plain Text&quot;,&quot;theme&quot;:&quot;default&quot;,&quot;showLine&quot;:true,&quot;lineWrap&quot;:true}; box-sizing: border-box; color: rgb(51, 51, 51); border-top-left-radius: 4px; border-top-right-radius: 4px; border-bottom-right-radius: 4px; border-bottom-left-radius: 4px; background-color: rgb(251, 250, 248); border: 1px solid rgba(0, 0, 0, 0.14902); background-position: initial initial; background-repeat: initial initial;\\\"><pre><span># 数据过滤</span><br/><span>filtered_df = df[df['销售额'] &gt; 1000]</span><br/><span>print(filtered_df)</span><br/></pre></div><p style=\\\"-webkit-tap-highlight-color: transparent; letter-spacing: 0.02em; text-indent: 0;\\\">这里我们使用了布尔索引来过滤数据，<code style=\\\"-webkit-tap-highlight-color: transparent; color: rgb(145,109,213); letter-spacing: 0; background: none 0 0/auto no-repeat scroll padding-box border-box rgba(27,31,35,0.05); width: auto; height: auto; border-style: none; border-width: 3px; border-color: rgb(0,0,0) rgba(0,0,0,0.4) rgba(0,0,0,0.4); border-radius: 4px; word-break: break-all;\\\">df['销售额'] &gt; 1000</code> 表示筛选条件。</p><hr style=\\\"-webkit-tap-highlight-color: transparent; border-style: solid none none; border-width: 2px 3px 3px; border-color: rgb(217,184,250) rgba(0,0,0,0.4) rgba(0,0,0,0.4); border-radius: 0; background-attachment: scroll; background-clip: border-box; background-image: none; background-origin: padding-box; background-position: 0 0; background-repeat: no-repeat; background-size: auto; width: auto; height: 1px;\\\"/><h2 style=\\\"-webkit-tap-highlight-color: transparent; background-attachment: scroll; background-clip: border-box; background-image: none; background-origin: padding-box; background-position: 0 0; background-repeat: no-repeat; background-size: auto; border-style: none; border-width: 1px; border-color: rgb(0,0,0); border-radius: 0; height: auto; overflow: unset; text-shadow: none; transform: none; width: auto; -webkit-box-reflect: unset;\\\"><span style=\\\"-webkit-tap-highlight-color: transparent; color: rgb(34,34,34); letter-spacing: 0; border-style: none none none solid; border-width: 1px 1px 1px 5px; border-color: rgb(0,0,0) rgb(0,0,0) rgb(0,0,0) rgb(145,109,213); border-radius: 0; background-attachment: scroll; background-clip: border-box; background-image: none; background-origin: padding-box; background-position: 0 0; background-repeat: no-repeat; background-size: auto; display: block; font-weight: bold; height: auto; overflow: unset; text-indent: 0; text-shadow: none; transform: none; width: auto; -webkit-box-reflect: unset;\\\">总结</span></h2><p style=\\\"-webkit-tap-highlight-color: transparent; letter-spacing: 0.02em; text-indent: 0;\\\">本文详细介绍了如何使用Python和Pandas库来处理Excel文件中的数据，包括数据的导入、清洗、处理以及可视化等多个方面。通过具体的例子，展示了如何高效地完成数据分析任务，如数据排序、筛选、替换特定值、计算统计数据、数据聚合、数据透视表、数据可视化等。这些操作能够帮助我们更好地理解和利用数据，为后续的决策提供有力的支持。</p><p style=\\\"-webkit-tap-highlight-color: transparent; letter-spacing: 0.02em; text-indent: 0;\\\">好了，今天的分享就到这里了，我们下期见。如果本文对你有帮助，请动动你可爱的小手指<strong style=\\\"-webkit-tap-highlight-color: transparent; color: rgb(145,109,213); background-attachment: scroll; background-clip: border-box; background-image: none; background-origin: padding-box; background-position: 0 0; background-repeat: no-repeat; background-size: auto; width: auto; height: auto; border-style: none; border-width: 3px; border-color: rgba(0,0,0,0.4); border-radius: 0;\\\">点赞、转发、点个在看</strong>吧！</p><div style=\\\"-webkit-tap-highlight-color: transparent; border-style: none; border-width: 3px; border-color: rgba(0,0,0,0.4); border-radius: 0; background: none 0 0/auto no-repeat scroll padding-box border-box rgb(250,250,250); width: auto; height: auto;\\\"><div style=\\\"-webkit-tap-highlight-color: transparent;\\\"><h2 style=\\\"-webkit-tap-highlight-color: transparent; background-attachment: scroll; background-clip: border-box; background-color: unset; background-image: none; background-origin: padding-box; background-position: 0 0; background-repeat: no-repeat; background-size: auto; border-style: none; border-width: 1px; border-color: rgb(0,0,0); border-radius: 0; height: auto; overflow: unset; text-shadow: none; transform: none; width: auto; -webkit-box-reflect: unset;\\\"><span style=\\\"-webkit-tap-highlight-color: transparent; color: rgb(34,34,34); letter-spacing: 0; border-style: none none none solid; border-width: 1px 1px 1px 5px; border-color: rgb(0,0,0) rgb(0,0,0) rgb(0,0,0) rgb(145,109,213); border-radius: 0; background-attachment: scroll; background-clip: border-box; background-color: unset; background-image: none; background-origin: padding-box; background-position: 0 0; background-repeat: no-repeat; background-size: auto; display: block; font-weight: bold; height: auto; overflow: unset; text-indent: 0; text-shadow: none; transform: none; width: auto; -webkit-box-reflect: unset;\\\">付费合集推荐</span></h2><p style=\\\"-webkit-tap-highlight-color: transparent; letter-spacing: 0.02em; text-indent: 0;\\\"><a href=\\\"https://mp.weixin.qq.com/mp/appmsgalbum?action=getalbum&amp;__biz=MzI1NjA0MTA2NA==&amp;scene=1&amp;album_id=3627614688549879810&amp;count=3#wechat_redirect\\\" style=\\\"-webkit-tap-highlight-color: transparent; color: rgb(145,109,213); font-weight: bold; border-style: none none solid; border-width: 1px; border-color: rgb(30,107,184) rgb(30,107,184) rgb(145,109,213); border-radius: 0;\\\">Python编程基础</a></p><p style=\\\"-webkit-tap-highlight-color: transparent; letter-spacing: 0.02em; text-indent: 0;\\\"><a href=\\\"https://mp.weixin.qq.com/mp/appmsgalbum?action=getalbum&amp;__biz=MzI1NjA0MTA2NA==&amp;scene=1&amp;album_id=3529877793934868485&amp;count=3#wechat_redirect\\\" style=\\\"-webkit-tap-highlight-color: transparent; color: rgb(145,109,213); font-weight: bold; border-style: none none solid; border-width: 1px; border-color: rgb(30,107,184) rgb(30,107,184) rgb(145,109,213); border-radius: 0;\\\">Python办公自动化-Excel</a></p><p style=\\\"-webkit-tap-highlight-color: transparent; letter-spacing: 0.02em; text-indent: 0;\\\"><a href=\\\"https://mp.weixin.qq.com/s?__biz=MzI1NjA0MTA2NA==&amp;mid=2454484256&amp;idx=2&amp;sn=72c8ba242963be57f40e87c754ea4202&amp;scene=21#wechat_redirect\\\" style=\\\"-webkit-tap-highlight-color: transparent; color: rgb(145,109,213); font-weight: bold; border-style: none none solid; border-width: 1px; border-color: rgb(30,107,184) rgb(30,107,184) rgb(145,109,213); border-radius: 0;\\\">微信公众号批量上传发布系统</a></p><h2 style=\\\"-webkit-tap-highlight-color: transparent; background-attachment: scroll; background-clip: border-box; background-color: unset; background-image: none; background-origin: padding-box; background-position: 0 0; background-repeat: no-repeat; background-size: auto; border-style: none; border-width: 1px; border-color: rgb(0,0,0); border-radius: 0; height: auto; overflow: unset; text-shadow: none; transform: none; width: auto; -webkit-box-reflect: unset;\\\"><span style=\\\"-webkit-tap-highlight-color: transparent; color: rgb(34,34,34); letter-spacing: 0; border-style: none none none solid; border-width: 1px 1px 1px 5px; border-color: rgb(0,0,0) rgb(0,0,0) rgb(0,0,0) rgb(145,109,213); border-radius: 0; background-attachment: scroll; background-clip: border-box; background-color: unset; background-image: none; background-origin: padding-box; background-position: 0 0; background-repeat: no-repeat; background-size: auto; display: block; font-weight: bold; height: auto; overflow: unset; text-indent: 0; text-shadow: none; transform: none; width: auto; -webkit-box-reflect: unset;\\\">文末福利</span></h2><p style=\\\"-webkit-tap-highlight-color: transparent; letter-spacing: 0.02em; text-indent: 0;\\\">公众号消息窗口回复“编程资料”，获取Python编程、人工智能、爬虫等100+本精品电子书。</p></div></div><h5 style=\\\"-webkit-tap-highlight-color: transparent;\\\"><span style=\\\"-webkit-tap-highlight-color: transparent; letter-spacing: 0; text-align: center; font-weight: bold; display: block;\\\">关注我👇，精彩不再错过</span></h5></div><p style=\\\"-webkit-tap-highlight-color: transparent;\\\"><br style=\\\"-webkit-tap-highlight-color: transparent;\\\"/></p></div></div></div></div></div></span>\\\n</div></body></html>\\u0000\"]],\"start1\":0,\"start2\":0,\"length1\":0,\"length2\":61879}]"
metadata_diff: {"new":{"id":"6f45fb5dc3204f02a9ba34fd2f566f51","parent_id":"f67288c3a0be4374b5d532b5dcc3aabc","latitude":"0.00000000","longitude":"0.00000000","altitude":"0.0000","author":"","source_url":"","is_todo":0,"todo_due":0,"todo_completed":0,"source":"joplin-desktop","source_application":"net.cozic.joplin-desktop","application_data":"","order":1764348830783,"markup_language":2,"is_shared":0,"share_id":"","conflict_original_id":"","master_key_id":"","user_data":"","deleted_time":0},"deleted":[]}
encryption_cipher_text: 
encryption_applied: 0
updated_time: 2025-11-28T21:04:05.190Z
created_time: 2025-11-28T21:04:05.190Z
type_: 13