京公网安备 11010802034615号
经营许可证编号:京B2-20210330
朴素贝叶斯分类器也是一类基于概率的分类器,它源于贝叶斯理论,假设样本属性之间相互独立。
操作
利用朴素贝叶斯分类器对churn数据集进行分类:
导入e1071库,使用naiveBayes函数构建分类器
library(e1071)
classifier = naiveBayes(trainset[,!names(trainset) %in% c("churn")],trainset$churn)
classifier
Naive Bayes Classifier for Discrete Predictors
Call:
naiveBayes.default(x = trainset[, !names(trainset) %in% c("churn")],
y = trainset$churn)
A-priori probabilities:
trainset$churn
yes no
0.1477322 0.8522678
Conditional probabilities:
international_plan
trainset$churn 0 1
yes 0.70467836 0.29532164
no 0.93512418 0.06487582
voice_mail_plan
trainset$churn 0 1
yes 0.8333333 0.1666667
no 0.7045109 0.2954891
number_vmail_messages
trainset$churn [,1] [,2]
yes 5.099415 11.80618
no 8.674607 14.03670
total_day_minutes
trainset$churn [,1] [,2]
yes 205.8877 69.10294
no 174.2555 50.16357
total_day_calls
trainset$churn [,1] [,2]
yes 101.0234 22.02903
no 100.5509 19.67038
total_day_charge
trainset$churn [,1] [,2]
yes 35.00143 11.747587
no 29.62402 8.527769
total_eve_minutes
trainset$churn [,1] [,2]
yes 213.7269 51.92206
no 199.6197 50.53780
total_eve_calls
trainset$churn [,1] [,2]
yes 101.4123 19.48658
no 99.9478 20.16161
total_eve_charge
trainset$churn [,1] [,2]
yes 18.16702 4.413058
no 16.96789 4.295730
total_night_minutes
trainset$churn [,1] [,2]
yes 205.4640 47.11434
no 201.4184 51.34049
total_night_calls
trainset$churn [,1] [,2]
yes 100.2573 20.32690
no 100.0193 19.68094
total_night_charge
trainset$churn [,1] [,2]
yes 9.245994 2.12038
no 9.063882 2.31040
total_intl_minutes
trainset$churn [,1] [,2]
yes 10.73684 2.752784
no 10.15119 2.819086
total_intl_calls
trainset$churn [,1] [,2]
yes 4.134503 2.487395
no 4.514445 2.394724
total_intl_charge
trainset$churn [,1] [,2]
yes 2.899386 0.7432760
no 2.741343 0.7611755
number_customer_service_calls
trainset$churn [,1] [,2]
yes 2.204678 1.808803
no 1.441460 1.150114
生成测试数据集分类表:
bayes.table = table(predict(classifier,testset[,!names(testset) %in% c("churn")]),testset$churn)
bayes.table
yes no
yes 68 45
no 73 832
利用分类表生成混淆矩阵:
confusionMatrix(bayes.table)
Confusion Matrix and Statistics
yes no
yes 68 45
no 73 832
Accuracy : 0.8841
95% CI : (0.8628, 0.9031)
No Information Rate : 0.8615
P-Value [Acc > NIR] : 0.01880
Kappa : 0.4701
Mcnemar's Test P-Value : 0.01294
Sensitivity : 0.4823
Specificity : 0.9487
Pos Pred Value : 0.6018
Neg Pred Value : 0.9193
Prevalence : 0.1385
Detection Rate : 0.0668
Detection Prevalence : 0.1110
Balanced Accuracy : 0.7155
'Positive' Class : yes
说明
朴素贝叶斯算法假设特征变量都是条件独立,即预测变量(x)对分类结果(c)的影响与其它变量对c的影响是相互独立的。
先验概率P(ωj)是由先验知识而获得的。
后验概率P(ωj|x),即假设特征值x已知的条件下类别属于ωj的概率。朴素贝叶斯算法的优势在于其简单性,应用也比较直接,适合用训练数据集规格较小,有可能存在某些缺失与噪音的情况,预测值的概率计算比较简单,算法不足之处在于它假定的所有的特征变量之间相互独立,并且同等重要,这个前提在现实世界中很难成立。
本节使用e1071包中的朴素贝叶斯分类器构成分类模型,首先,我们假定在朴素贝叶斯函数中调用的所有变量(包括churn类标号)都是输入函数的第一输入参数,churn类标号为算法的第二输入参数。接下来,将分类模型指派给不同的变量分类。再输出分类器的相关信息,包括函数调用、先验概率以及条件概率等。我们也可以使用predict函数预测结果,并使用table函数得到测试数据集的分类表,最后,生成混淆矩阵计算分类模型。
数据分析咨询请扫描二维码
若不方便扫码,搜微信号:CDAshujufenxi
在Python数据分析中,Pandas库的DataFrame是最核心、最常用的结构化数据表对象,类似于Excel的二维表格,具备规整的行列结构、字 ...
2026-09-07在数据分析、经营复盘、业绩预测与经济统计工作中,平均增速(平均增长率)是衡量数据长期变化趋势、业务发展快慢的核心指标。不 ...
2026-09-07 很多数据分析师精通Excel单元格操作,但当被问到“表结构数据的基本处理单位是什么”“字段和记录的本质区别”“为什么表结 ...
2026-09-07随着大数据技术的快速发展,商业竞争逐步从传统的经验式经营转变为数据驱动的精细化运营。海量的用户行为数据、交易数据、运营数 ...
2026-09-04CDA数据分析师 出品 作者:李诗怡 1. 波士顿矩阵(BCG Matrix) 定义: BCG于1970年提出的业务组合分析工具,以"市场增长率"(纵 ...
2026-09-04 数据分析师八成以上的时间在和数据表格打交道,但许多人拿到Excel后习惯性地先算、先分析,结果回头发现漏了一列关键数据, ...
2026-09-04数据透视表是Excel与Power BI中最核心的数据分析工具,具备快速汇总、维度拆分、动态筛选的能力,可高效完成数据归类与统计展示 ...
2026-09-03在Power BI数据分析可视化场景中,堆积柱状图+折线图是最常用的复合图表组合。堆积柱状图适合展示各细分维度当期数值、结构占比 ...
2026-09-03 很多数据分析师每天与Excel打交道,但当被问到“表格结构数据的基本处理单位是什么”“数据类型误判会引发哪些分析错误”“ ...
2026-09-03CDA数据分析师 出品 作者:李诗怡 一、8个核心数据清洗函数 1. TRIM:一键清除多余空格(最常用) 作用:仅保留文本中"单词/字 ...
2026-09-02数据分析的核心并非单纯操作工具、整理报表或绘制图表,而是依靠科学的思维逻辑挖掘数据价值、解释业务现象、指导经营决策。在完 ...
2026-09-02在社会经济、产业研究、区域治理与大数据实证分析中,面板数据是最具研究价值的数据类型。面板数据同时包含截面维度与时间维度信 ...
2026-09-02 很多数据分析师能熟练计算均值、标准差,但当被问到“如何用一张图让业务方3秒内看懂核心结论”“面对不同数据类型该怎么选 ...
2026-09-02在数据驱动决策的体系中,数据分析按照分析目的可分为描述性分析、诊断性分析、预测性分析与指导性分析四大类型。其中,诊断性分 ...
2026-09-01网络请求是Python爬虫开发、接口测试、数据拉取的核心基础功能,Python生态中主要依靠 urllib 和 requests 两大库实现HTTP请求操 ...
2026-09-01 很多数据分析师面对业务问题时,常常感到“知道要分析,却不知道用什么方法”。其实,数据分析并非无章可循——从三大基础范 ...
2026-09-01在数据库设计与业务数据维护中,自增ID是数据表最常用的主键字段,用于唯一标识每一条业务数据,正常状态下ID应保持连续递增。但 ...
2026-08-31在数理统计、数据分析、经济测算与日常量化评估中,平均值是刻画数据集中趋势、反映整体水平的基础核心指标。在实际应用中,最常 ...
2026-08-31在数据驱动的时代,数据分析早已不是“凭经验、靠感觉”的零散操作,而是一套具备固定逻辑、标准化流程的系统方法——这就是数据 ...
2026-08-31在大数据时代背景下,海量行业数据亟需通过专业化工具挖掘潜在价值,辅助企业业务决策、优化运营模式、规避经营风险。Python凭借 ...
2026-08-28