- 博客(24)
- 收藏
- 关注
原创 IBM-Waston电信客户流失归因分析报告
IBM电信客户流失分析摘要 本研究分析了7043名电信客户数据,识别出影响流失的关键因素: 用户画像:老年(41.7%)、单身(33.0%)、无抚养责任的用户流失率更高 服务特征:光纤用户流失率达41.9%,而增值服务可降低42%流失风险 合同支付:月付合同(42.7%)和电子支票(45.3%)用户流失显著偏高 消费模式:高月费但低总消费的短期用户(1-6个月)流失风险最高 模型分析显示合约类型(贡献度0.72)是核心影响因素。建议: 设计合约升级优惠 将增值服务打包为套餐 优化电子支票支付体验 (完整代码
2025-09-15 21:40:29
974
4
原创 【Pandas】4.1-数据清洗:处理缺失值
本文介绍了Pandas中处理缺失值的方法,主要包括删除和填充两种策略。删除缺失值使用dropna()方法,可通过参数控制删除行或列及删除条件;填充缺失值使用fillna()方法,支持常量填充、前向/后向填充等。文章还提供了模拟生成含缺失值数据集的函数,并通过示例演示了具体操作。最后总结了两种方法的适用场景:删除法适合缺失值较少的情况,填充法适用于中等缺失比例,而缺失值过高时建议保留或更换数据集。文中还封装了自动处理函数以便复用。
2025-09-14 18:04:12
2117
原创 【Pandas】3.4-数据预处理:数据类型的转换
本文介绍了Pandas中数据类型转换的两种方法:astype()和pd.to_xx()函数系列。astype()适用于简单直接的数值与字符串互转、整型与浮点互转等基础场景,但无法处理存在缺失值或异常值的复杂情况。而pd.to_numeric()等函数通过errors='coerce'参数可以强制转换无效值为NaN,更适合真实业务数据的处理。文章通过模拟数据和Kaggle电信客户流失数据集演示了两种方法的实际应用场景和差异,建议在处理未知数据时优先使用pd.to_xx()函数以确保数据转换的可靠性。
2025-09-13 19:36:26
2525
原创 【Pandas】3.3-数据预处理:DataFrame的两种合并方式
本文介绍了Pandas中两种常用的数据合并方法:pd.concat()和pd.merge()。pd.concat()用于物理合并,包括轴向堆叠(axis=0为上下合并追加行,axis=1为左右合并追加列),适用于结构相似表格的合并。pd.merge()用于逻辑合并,基于键匹配连接,类似SQL的JOIN操作,支持四种连接方式(inner、left、right、outer),通过on参数指定连接字段。文章通过电商公司销售数据和会员信息的实际案例,详细演示了两种方法的业务应用场景和具体操作步骤,帮助读者理解不同合
2025-09-12 10:17:43
2026
原创 【Pandas】3.2-数据预处理:行的基本操作
摘要:本文介绍了Pandas中处理行的两种基本操作:行索引修改和行删除。通过示例展示了如何使用set_index()方法将特定列设为行索引,以及通过reset_index()还原默认索引。对于行删除操作,演示了如何通过drop()方法结合条件查询删除异常数据(如负年龄记录)。文中强调了对列操作(如求均值)比行操作更常见且有实际意义。代码示例展示了从创建测试数据到执行索引修改和行删除的完整流程。
2025-09-09 16:08:31
471
原创 【Pandas】3.1-数据预处理:列的基本操作
本文总结了Pandas中DataFrame列的常用操作,包括新增、删除、修改、重命名和条件筛选。通过模拟用户数据演示了具体实现方法:新增列可直接赋值,删除列用drop()方法,修改列值直接重新赋值,重命名可通过columns属性或rename()方法。条件筛选介绍了布尔表达式和更简洁的query()方法,后者能处理复杂查询且可读性更好。这些操作是数据预处理的基础技能,能有效提升数据处理效率。
2025-09-07 20:08:00
791
原创 【Pandas】2.1-数据预览:初识你的数据
本文基于Kaggle电信客户流失数据集,介绍了使用Pandas进行数据预览的关键属性与方法。首先通过shape、info()和describe()了解数据规模、质量和统计特征;其次使用columns和select_dtypes()筛选数值型和类别型字段;最后通过head()、sample()和tail()查看具体行数据。这些方法为后续数据清洗和分析提供了基础,帮助快速掌握数据集特征。文章还总结了select_dtypes()常用的数据类型筛选标识符,便于针对性处理不同类型数据。
2025-09-04 21:18:46
997
原创 【Pandas】1.2-DataFrame的创建、属性与访问
本文总结了Pandas中DataFrame的核心操作。首先介绍了两种创建DataFrame的方法:基于字典(字段名与值列表配对)和基于数组(结构化数据拼接)。其次,详细说明了DataFrame的关键属性:shape(维度)、columns(列名)、index(行索引)和values(NumPy数组形式数据)。最后,讲解了两种数据访问方式:标签索引(loc,包含右端点)和位置索引(iloc,不包含右端点),包括单列/多列索引、单元素/多元素切片等操作。这些内容构成了Pandas DataFrame的基础知识体
2025-08-31 10:32:51
267
原创 【Sklearn】1.2-贝叶斯优化决策树_跑通一个分类任务
本文基于Sklearn乳腺癌数据集,演示了使用Optuna优化决策树分类模型的全流程。首先导入并标准化数据,划分训练测试集;然后构建初始决策树模型,评估其分类性能;最后通过Optuna框架进行贝叶斯优化,调整决策树的关键超参数(如最大深度、最小样本数、分支标准等),并使用交叉验证F1分数作为优化目标。该方法可快速复用于其他分类任务,实现模型性能的自动化调优。
2025-08-30 11:50:45
915
原创 【Pandas】1.1-Series的创建、属性与访问
本文介绍了Pandas中Series数据结构的基本操作。主要内容包括:1)Series的创建方法,通过pd.Series()函数将numpy数组转换为带索引的Series;2)Series的三个核心属性:index(行索引)、values(数据值)和dtypes(数据类型);3)Series的两种访问方式:基于标签索引的.loc[]方法(包含右端点)和基于位置索引的.iloc[]方法(不包含右端点)。文章通过用户年龄数据的实际案例,演示了Series的创建、属性查看以及数据访问的具体操作。
2025-08-30 09:50:57
158
原创 【窗口函数】2.3-第二类窗口函数:排序函数需求实现(3)
本文介绍了使用SQL窗口函数ntile()查询2020年支付金额前30%用户的方法。通过三步实现:首先筛选2020年数据并计算用户总支付额;然后使用ntile(10)将用户按支付额分为10组;最后筛选组别1-3的用户。代码展示了子查询与窗口函数的嵌套使用,实现了精确的比例筛选需求,最终得到2020年支付金额排名前30%的用户列表,并按分组等级降序排列。该方法适用于需要按比例分组的业务场景。
2025-08-26 08:56:28
607
原创 【窗口函数】2.2-第二类窗口函数:排序函数需求实现(2)
本文介绍了SQL窗口函数中ntile()排序函数的应用实例。通过模拟数据,演示如何将2020年2月支付用户按金额分为5组:首先筛选数据并计算用户总支付额,然后使用ntile(5)进行分组,比较了升序和降序两种排序方式的结果差异。文章包含完整的SQL代码实现和结果截图,适合学习窗口函数实际应用的读者参考。
2025-08-24 21:16:57
499
原创 【窗口函数】2.1-第二类窗口函数:排序函数需求实现(1)
本文介绍了SQL窗口函数中排序函数的应用方法。通过一个实际需求案例,演示了如何查询2020年1月用户购买商品品类数的排名。具体步骤包括:1)筛选数据并分组聚合计算每个用户的购买品类数;2)在此基础上应用row_number()、rank()和dense_rank()三种排序窗口函数。文章详细比较了这三种函数的区别:row_number()按行生成唯一序号,rank()共享相同排名后会跳跃序号,而dense_rank()则连续编号。文中配有完整的SQL代码示例和查询结果截图,便于理解窗口函数的实际应用场景和工
2025-08-24 19:53:51
1113
原创 【Numpy】2-数组的属性-2.1-数组常用属性
本文以加州房价数据集为例,介绍了Numpy数组的四个核心属性:ndim表示数组维度,特征矩阵为2维,标签矩阵为1维;shape获取各维度大小,如特征矩阵为(20640,8);size计算元素总数;dtype返回数据类型。这些属性在机器学习数据处理中至关重要,能帮助开发者快速了解数组结构特征。通过具体数据集演示,清晰展示了各属性的实际应用场景和输出结果。
2025-08-22 22:41:20
373
原创 【窗口函数】1.4-第一类窗口函数:累积计算窗口函数需求实现(4)
本文介绍了使用SQL窗口函数计算每四个月最大月支付金额的方法。首先通过建表生成模拟数据,然后分两步实现:1)计算各月份支付总额;2)应用max() over()窗口函数,设置窗口范围为当前月及前三个月,计算每四个月的最大支付额。代码展示了如何格式化日期、分组聚合以及配置窗口函数参数,最终输出包含月份、月支付额和四个月最大支付额的结果表。
2025-08-22 21:27:36
890
原创 【窗口函数】1.3-第一类窗口函数:累积计算窗口函数需求实现(3)
本文介绍了SQL窗口函数中移动平均的实现方法。通过一个电商支付数据分析案例,演示如何计算2019年每个月近三个月的移动平均支付金额。文章分为两个步骤:首先按月汇总2019年支付总额,然后在此基础上应用avg() over()窗口函数,设置rows between参数实现近三个月移动平均计算。文中提供了完整的SQL代码示例和查询结果截图,帮助读者理解窗口函数在移动平均计算中的应用。
2025-08-22 16:58:10
773
原创 【窗口函数】1.2-第一类窗口函数:累积计算窗口函数需求实现(2)
本文介绍了SQL窗口函数中累积计算的应用实例。作者通过一个电商支付数据案例,演示如何计算2018-2019年各月支付总额及当年累计值。方法分为两步:首先筛选年份并分组聚合计算月支付额,然后将结果作为子查询应用sum() over()窗口函数,按年分区按月排序计算累计值。文章包含详细SQL代码和结果截图,适合初学者理解窗口函数的实际应用。相关学习资源链接已附在文中供参考。
2025-08-22 15:04:13
637
原创 【窗口函数】1.1-第一类窗口函数:累积计算窗口函数需求实现(1)
摘要:本文记录了学习SQL窗口函数中累计计算函数的实践过程。通过Python生成模拟电商交易数据并导入数据库后,实现了"查询2019年每月支付总额及当年累计支付总额"的需求。关键点包括:1)使用WHERE筛选2019年数据并按月分组计算支付总额;2)将结果作为子查询,应用SUM() OVER()窗口函数实现累计计算。最终结果清晰地展示了每月支付额及累计增长趋势,验证了窗口函数在数据累积分析中的实用性。本文完整代码和结果截图可供参考。
2025-08-21 20:13:51
1020
原创 【Sklearn】1.1-贝叶斯优化决策树_跑通一个回归任务
本文基于sklearn的加州房价数据集,使用决策树回归模型进行房价预测。首先对数据集进行探索性分析,包含8个特征和1个标签(房价中位数)。直接划分训练集和测试集后,建立基准决策树模型,得到R2=0.62和RMSE=0.70的初步结果。随后采用Optuna框架进行贝叶斯优化,通过100次试验寻找最优超参数组合。优化后的模型R2提升至0.68,RMSE降至0.65,预测性能明显改善。实验结果表明,贝叶斯优化能有效提升决策树回归模型的预测精度。
2025-08-15 22:55:40
584
原创 【Numpy】1-数组的创建_1.2-创建随机数组
本文介绍了使用NumPy生成三种随机数组的方法:1)随机整数数组(np.random.randint),在指定区间内生成整数;2)均匀分布数组(np.random.rand/uniform),生成0-1或指定范围的均匀分布值;3)正态分布数组(np.random.randn/normal),生成标准或指定参数的正态分布值。每种方法都包含代码示例和可视化直方图展示分布特征,并设置了随机种子保证结果可复现。这些方法适用于模拟数据、统计分析等场景,能快速生成不同分布特征的数组。
2025-08-12 21:57:08
498
原创 【Numpy】1-数组的创建_1.1-基本创建方式
本文介绍了Numpy创建数组的三种主要方法:1) 手动创建,使用array()将列表、元组等转换为数组;2) 生成等差等比数组,包括arange()创建等差数组、linspace()均匀采样及logspace()生成等比数组;3) 预填充数组,如zeros()和ones()创建全0/1数组。文章通过代码示例展示了每种方法的典型应用场景,如为数据生成索引、信号采样以及机器学习任务初始化等,帮助读者快速掌握Numpy数组创建的核心技巧。
2025-08-12 20:39:59
373
原创 【Optuna】0-超参数优化的基本流程
本文介绍了使用Optuna进行超参数优化的基本流程。以求解函数f(x,y)=(x-2)^2+(y-3)^2最小值为例,详细说明了五个关键步骤:1)定义目标函数并指定参数范围;2)创建研究器设置优化方向;3)执行优化过程;4)查看最优参数组合和目标值;5)利用可视化工具分析优化过程。文章还展示了如何定义不同类型参数(离散型、整型、类别型)以及如何查看优化历史记录。最后通过optimization_history图直观展示了目标值随试验次数的收敛过程。
2025-08-10 15:28:24
671
原创 【Sklearn】0.2-快速跑通一个分类任务
本文以Sklearn乳腺癌数据集为例,演示了二分类任务的完整流程:1) 加载数据集并进行初步探索;2) 数据预处理包括特征缩放(归一化/标准化)和训练测试集划分;3) 使用逻辑回归建模;4) 评估模型性能,包括混淆矩阵可视化、常用分类指标(准确率、精确率、召回率、F1)计算以及ROC曲线分析。重点展示了Sklearn中分类问题的基础操作方法和关键评估技术,为机器学习分类任务提供了标准化的实现参考。整个过程体现了数据预处理、模型训练与评估的核心步骤,尤其强调了分类任务特有的评估指标计算方法。
2025-07-13 19:58:56
990
原创 【Sklearn】0.1-快速跑通一个回归任务
本文以Sklearn加州房价数据集为例,演示回归任务完整流程。首先加载数据集并转换为DataFrame格式(20,640样本×8特征+1标签)。预处理阶段展示数据缩放(归一化和标准化)及8:2划分训练测试集。建模采用线性回归模型,通过fit()训练和predict()预测。评估使用R²和MSE指标,结果显示线性回归效果不佳(R²仅0.57),可视化预测值与真实值散点图验证线性关系较弱,建议尝试其他模型。全文侧重Sklearn函数应用,涵盖数据加载、预处理、建模、评估全流程。
2025-07-09 21:10:56
769
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅