一、前言

之前说过了ANOVA,包括one-way和two-way,虽然没说详细过程,但是建立了一个使用R语言进行ANOVA分析的步骤。今天来进一步说一说MANOVA,那么MANOVA是多元方差分析,注意,这个元字指的是因变量,也就是Dependent Var。所以多元方差分析,是多个因变量的方差分析,但是,two-way ANOVA是只有一个因变量,但是多个自变量,注意区别。

另外,MANOVA也分one-way与two-way。

MANOVA感觉国内讲的很少,我贴一个国外小哥讲的视频非常的清晰。MANOVA - explained with a simple example

二、分析步骤

那么,相同的首先一定是假设检验:

  1. 首先发现outliers,将异常值剔除,个人认为剔除一次就行
  2. 然后进行分组正态检验,
  3. 然后进行组内线性检验,
  4. 然后进行Levene检验,
  5. 然后进行Box's M test,这个用来检查协方差齐次性

之后就是MANOVA分析

分析完成后,需要进行差异检验

并做Tamhane检测或者交互图。

三、R语言程序实例

x=read.csv(file.choose(), header=TRUE)#查看数据
head(x)
names(x)boxplot(x6 ~ x1, data = x,xlab = "customer type", ylab = "product quality",main = "compare", col = c("#00AFBB", "#E7B800", "#FC4E07"), names=c("<1 year","1-5 years",">5 years") )
boxplot(x7 ~ x1, data = x,xlab = "customer type", ylab = "E-Commerce",main = "compare", col = c("#00AFBB", "#E7B800", "#FC4E07"), names=c("<1 year","1-5 years",">5 years") )
# 正态检验
shapiro.test(x$x6)
shapiro.test(x$x7)shapiro.test(x[x$x1 == 1,]$x6)
shapiro.test(x[x$x1 == 2,]$x6)
shapiro.test(x[x$x1 == 3,]$x6)hist(x$x6)
hist(x$x7)hist(x[x$x1 == 1,]$x6)
hist(x[x$x1 == 2,]$x6)
hist(x[x$x1 == 3,]$x6)qqnorm(x$x6)
qqline(x$x6)
hist(x$x6)
plot(density(x$x6))#删除outliersoutliersx6<-boxplot(x6 ~ x1, data = x,xlab = "customer type", ylab = "product quality",main = "compare", col = c("#00AFBB", "#E7B800", "#FC4E07"), names=c("<1 year","1-5 years",">5 years") )
print(outliersx6)out1<-x[x$x1==3 & x$x6==7.6,]
print(out1)
out2<-x[x$x1==1 & x$x6==9.5,]
print(out2)outliersx7<-boxplot(x7 ~ x1, data = x,xlab = "customer type", ylab = "E-Commerce",main = "compare", col = c("#00AFBB", "#E7B800", "#FC4E07"), names=c("<1 year","1-5 years",">5 years") )$out
print(outliersx7)out3<-x[x$x1==2 & (x$x7==5.1 | x$x7==5.5),]
print(out3)
out4<-x[x$x1==1 & x$x7==5.6,]
print(out4)outAll<- rbind(out1,out2, out3, out4)
print(outAll)
x<-x[-which(x$id %in% outAll$id),]#线性检验
install.packages("car")
install.packages("RColorBrewer")
library("car")
library("RColorBrewer")
scatterplotMatrix(~x6+x1+x7,transform=TRUE,data=x)#Levene
library(car)
leveneTest(x6 ~ as.factor(x1), data = x)
leveneTest(x7 ~ as.factor(x1), data = x)#Box's M test
install.packages("biotools")
library("biotools")
library("MASS")
boxM(data=x[,7:8],group=x[,2])# One Way MAnova
Y<-cbind(x$x6,x$x7)
fit <- manova(Y ~ as.factor(x1), data=x)
summary(fit)#不同的 Manova Testsummary(fit, test="Hotelling-Lawley")
summary(fit, test="Roy")
summary(fit, test="Pillai")
summary(fit, test="Wilks")#差异性
summary.aov(fit)install.packages("PMCMRplus", dependencies=TRUE, repos='http://cran.rstudio.com/')
#Tamhane
library("PMCMRplus")
summary(T2 <- tamhaneT2Test(x$x6, as.factor(x$x1)))
summary(T2 <- tamhaneT2Test(x$x7, as.factor(x$x1)))

四、结果

【定量分析、量化金融与统计学】R语言MANOVA多元方差分析相关推荐

  1. R语言单向多元方差分析MANOVA(one-way MANOVA)实战:multivariate analysis of variance

    R语言单向多元方差分析MANOVA(one-way MANOVA)实战:multivariate analysis of variance 目录 R语言单向多元方差分析MANOVA(one-way M ...

  2. 【定量分析、量化金融与统计学】R语言:多元线性回归实例

    今天来做一个R语言的多元线性回归的实例: 题目是这样的: 练习:度假村排名 旅游胜地,专门介绍高级度假和住宿的杂志<Spas>在"读者选择"评选的世界20家独立海滨精品 ...

  3. 【定量分析、量化金融与统计学】统计推断基础(2)---样本均值分布、中心极限定理、正态分布

    目录 一.前言 二.样本均值分布 三.中心极限定理 *****中心极限定理 ***大数定理与中心极限定理有什么区别? 四.正态(概率)分布 一.前言 我发现很多人学了很久的统计学,很多总是概念混淆,那 ...

  4. 【定量分析、量化金融与统计学】统计推断基础(4)---假设检验(T或者Z检验)

    目录 一.前言 二.假设检验的基本概念 1.假设检验的概念与目的: 2.原假设 三.假设检验的实例步骤: 例子: 一个问题: 四.不同种类的假设检验: one-sample T检验: Two-samp ...

  5. 【定量分析、量化金融与统计学】统计推断基础(5)---一类错误与二类错误

    一.前言 这是这个系列的最后一篇,我们讲一讲什么是一类错误,什么是二类错误.这个系列统计推断基础5部分分别是: 总体.样本.标准差.标准误[定量分析.量化金融与统计学]统计推断基础(1)---总体.样 ...

  6. 【定量分析、量化金融与统计学】统计推断基础(3)---点估计、区间估计

    一.前言 我发现很多人学了很久的统计学,仍然搞不清楚什么是点估计.区间估计,总是概念混淆,那今天我们来盘一盘统计推断基础的点估计.区间估计.这个系列统计推断基础5部分分别是: 总体.样本.标准差.标准 ...

  7. 量化交易陷阱和R语言改进股票配对交易策略分析中国股市投资组合

    最近我们被客户要求撰写关于量化交易的研究报告,包括一些图形和统计输出. 计算能力的指数级增长,以及量化社区(日益增长的兴趣使量化基金成为投资者蜂拥而至的最热门领域. 量化交易陷阱和R语言改进股票配对交 ...

  8. R语言多因素方差分析及评估假设检验

    R语言多因素方差分析及评估假设检验  条件: 各个样本是相互独立的随机: 各个样本来自正态总体: 具有方差齐性: 用途: 检验两个或多样本均数间的差异有无统计学意义:注:本均数的比较可以采用 t检验或 ...

  9. R语言双因素方差分析

    R语言双因素方差分析 条件: 各个样本是相互独立的随机: 各个样本来自正态总体: 具有方差齐性: 用途: 检验两个或多样本均数间的差异有无统计学意义:注:本均数的比较可以采用 t检验或 F检验,两个以 ...

  10. R语言构建多元线性回归模型

    R语言构建多元线性回归模型 对比一元线性回归,多元线性回归是用来确定2个或2个以上变量间关系的统计分析方法.多元线性回归的基本的分析方法与一元线性回归方法是类似的,我们首先需要对选取多元数据集并定义数 ...

最新文章

  1. 原型开发、模型构建和设计反馈在线工具
  2. 太炸了!SpaceX迎来20岁生日,马斯克收到一份特殊礼物
  3. ValueError: Masked arrays must be 1-D
  4. Django常用模板标签
  5. 万能驱动助理篡改主页为2345的解决办法
  6. Django框架(8.Django中的模板文件的使用和模板变量的简单使用)
  7. 中国开源正在走向成熟
  8. 平均分配,移动欠费催收款数据的分配应用实例
  9. Symantec 11.0企业版安装与配置简介
  10. 机器学习第六回(完结篇)
  11. Android精品开源项目整理_V20140221
  12. MCP2515独立控制器
  13. Unity学习笔记(一)—— 基础知识
  14. Android 的singleTask和singleInstance的一点思考
  15. 2021下半年最新编程培训机构排名出炉!
  16. ott运营商的盈利模式
  17. [RK356x] [Firefly-Linux] 10min带你获取、了解与编译Kernel源代码
  18. MPB:中大魏泓组-​​无菌小鼠肠道粪菌移植(视频)
  19. RocketMQ实战2
  20. 我能够快速读书的秘密:主要靠“猜”!

热门文章

  1. 写书给我带来了什么?
  2. windows10 8081端口被占用如何解决
  3. 软件项目管理MOOC(北邮)——第十章测试答案
  4. photoshop高光,暗,中间调选区获取
  5. cad文字宽度因子_字体宽度因子改不了 cad宽度因子无法修改
  6. linux分段加载程序_Linux的分段机制
  7. 清华大数据,365天我们持续在发声——数据院四周年系列报道之传播篇
  8. AVX贴片钽电容标识
  9. 情景分析是什么?我们该如何去理解这个概念?
  10. java B2B2C springmvc mybatis仿淘宝电子商城系统-服务消费者(rest+ribbon)