京公网安备 11010802034615号
经营许可证编号:京B2-20210330
R中五种常用的统计分析方法
1、分组分析aggregation
根据分组字段,将分析对象划分为不同的部分,以进行对比分析各组之间差异性的一种分析方法。
常用统计指标:
计数 length
求和 sum
平均值 mean
标准差 var
方差 sd
分组统计函数
aggregate(分组表达式,data=需要分组的数据框,function=统计函数)
参数说明
formula:分组表达式,格式:统计列~分组列1+分组列2+...
data=需要分组的数据框
function:统计函数
aggregate(name ~ class, data=data, FUN=length);
#求和
aggregate(score ~ class, data=data, FUN=sum);
#均值
aggregate(score ~ class, data=data, FUN=mean);
#方差
aggregate(score ~ class, data=data, FUN=var);
#标准差
aggregate(score ~ class, data=data, FUN=sd)
2、分布分析cut
根据分析目的,将数据(定量数据)进行等距或者不等距的分组,进行研究各组分布规律的一种分析方法。
分组函数
cut(data,breaks,labels,right)
参数说明
data=需要分组的一列数据
breaks=分组条件,如果是一个数字,那么将平均分组;如果是一个数组,那么将按照指定范围分组
labels:分组标签
right:指定范围是否右闭合,默认为右闭合,right参数为TRUE
用户明细 <- read.csv('data.csv', stringsAsFactors=FALSE)
head(用户明细)
breaks <- c(min(用户明细$年龄)-1, 20, 30, 40, max(用户明细$年龄)+1)
年龄分组 <- cut(用户明细$年龄, breaks = breaks)
用户明细[, '年龄分组1'] <- 年龄分组
年龄分组 <- cut(用户明细$年龄, breaks = breaks, right = FALSE)
用户明细[, '年龄分组2'] <- 年龄分组
labels <- c('20岁以及以下', '21岁到30岁', '31岁到40岁', '41岁以上');
年龄分组 <- cut(用户明细$年龄, breaks = breaks, labels = labels)
用户明细[, '年龄分组'] <- 年龄分组
head(用户明细)
aggregate(formula=用户ID ~ 年龄分组, data=用户明细, FUN=length)
3、交叉分析tapply(相当于excel里的数据透视表)
通常用于分析两个或两个以上,分组变量之间的关系,以交叉表形式进行变量间关系的对比分析;
交叉分析的原理就是从数据的不同维度,综合进行分组细分,以进一步了解数据的构成、分布特征。
交叉分析函数:
tapply(统计向量,list(数据透视表中的行,数据透视变中的列),FUN=统计函数)
返回值说明:
一个table类型的统计量
breaks <- c(min(用户明细$年龄)-1, 20, 30, 40, max(用户明细$年龄)+1)
labels <- c('20岁以及以下', '21岁到30岁', '31岁到40岁', '41岁以上');
年龄分组 <- cut(用户明细$年龄, breaks = breaks, labels = labels)
用户明细[, '年龄分组'] <- 年龄分组
head(用户明细)
tapply(用户明细$用户ID, list(用户明细$年龄分组, 用户明细$性别), FUN=length)
4、结构分析prop.table
是在分组的基础上,计算各组成部分所占的比重,进而分析总体内部特征的一种分析方法。
for example:资产占有率就是一个非常经典的运用
统计占比函数
prop.table(table,margin=NULL)
参数说明:
table,使用tapply函数统计得到的分组计数或求和结果
margin,占比统计方式,具体参数如下:
属性注释
1按行统计占比
2按列统计占比
NULL按整体统计占比
data <- read.csv('data.csv', stringsAsFactors=FALSE);
head(data)
t <- tapply(data$月消费.元., list(data$通信品牌), sum)
t
prop.table(t);
t <- tapply(data$月消费.元., list(data$通信品牌), mean)
t
prop.table(t);
t <- tapply(data$月消费.元., list(data$省份, data$通信品牌), sum)
t
prop.table(t, margin = 2)
5、相关分析prop.table
是研究现象之间是否存在某种依存关系,并对具体有依存关系的现象探讨其相关方向以及相关程度,是研究随机变量之间的相关关系的一种统计方法。
相关系数r 可以用来描述定量变量之间的关系
相关分析函数:
cor(向量1,向量2,...)返回值:table类型的统计量
data <- read.csv('data.csv', fileEncoding = "UTF-8");
cor(data[, 2:7])
数据分析咨询请扫描二维码
若不方便扫码,搜微信号:CDAshujufenxi
在机器学习领域,“分类模型” 是解决 “类别预测” 问题的核心工具 —— 从 “垃圾邮件识别(是 / 否)” 到 “疾病诊断(良性 ...
2025-11-06在数据分析中,面对 “性别与购物偏好”“年龄段与消费频次”“职业与 APP 使用习惯” 这类成对的分类变量,我们常常需要回答: ...
2025-11-06在 CDA(Certified Data Analyst)数据分析师的工作中,“可解释性建模” 与 “业务规则提取” 是核心需求 —— 例如 “预测用户 ...
2025-11-06在分类变量关联分析中(如 “吸烟与肺癌的关系”“性别与疾病发病率的关联”),卡方检验 P 值与 OR 值(比值比,Odds Ratio)是 ...
2025-11-05CDA 数据分析师的核心价值,不在于复杂的模型公式,而在于将数据转化为可落地的商业行动。脱离业务场景的分析只是 “纸上谈兵” ...
2025-11-05教材入口:https://edu.cda.cn/goods/show/3151 “纲举目张,执本末从。” 若想在数据分析领域有所收获,一套合适的学习教材至 ...
2025-11-05教材入口:https://edu.cda.cn/goods/show/3151 “纲举目张,执本末从。” 若想在数据分析领域有所收获,一套合适的学习教材至 ...
2025-11-04【2025最新版】CDA考试教材:CDA教材一级:商业数据分析(2025)__商业数据分析_cda教材_考试教材 (cdaglobal.com) ...
2025-11-04在数字化时代,数据挖掘不再是实验室里的技术探索,而是驱动商业决策的核心能力 —— 它能从海量数据中挖掘出 “降低成本、提升 ...
2025-11-04在 DDPM(Denoising Diffusion Probabilistic Models)训练过程中,开发者最常困惑的问题莫过于:“我的模型 loss 降到多少才算 ...
2025-11-04在 CDA(Certified Data Analyst)数据分析师的工作中,“无监督样本分组” 是高频需求 —— 例如 “将用户按行为特征分为高价值 ...
2025-11-04当沃尔玛数据分析师首次发现 “啤酒与尿布” 的高频共现规律时,他们揭开了数据挖掘最迷人的面纱 —— 那些隐藏在消费行为背后 ...
2025-11-03这个问题精准切中了配对样本统计检验的核心差异点,理解二者区别是避免统计方法误用的关键。核心结论是:stats.ttest_rel(配对 ...
2025-11-03在 CDA(Certified Data Analyst)数据分析师的工作中,“高维数据的潜在规律挖掘” 是进阶需求 —— 例如用户行为包含 “浏览次 ...
2025-11-03在 MySQL 数据查询中,“按顺序计数” 是高频需求 —— 例如 “统计近 7 天每日订单量”“按用户 ID 顺序展示消费记录”“按产品 ...
2025-10-31在数据分析中,“累计百分比” 是衡量 “部分与整体关系” 的核心指标 —— 它通过 “逐步累加的占比”,直观呈现数据的分布特征 ...
2025-10-31在 CDA(Certified Data Analyst)数据分析师的工作中,“二分类预测” 是高频需求 —— 例如 “预测用户是否会流失”“判断客户 ...
2025-10-31在 MySQL 实际应用中,“频繁写入同一表” 是常见场景 —— 如实时日志存储(用户操作日志、系统运行日志)、高频交易记录(支付 ...
2025-10-30为帮助教育工作者、研究者科学分析 “班级规模” 与 “平均成绩” 的关联关系,我将从相关系数的核心定义与类型切入,详解 “数 ...
2025-10-30对 CDA(Certified Data Analyst)数据分析师而言,“相关系数” 不是简单的数字计算,而是 “从业务问题出发,量化变量间关联强 ...
2025-10-30