R语言案例分析:多元数据的基本统计分析
来自《多元统计分析与R语言建模》 第四版
我们利用该数据集中的Case1来完成下面的R语言操作:
options(digits = 4) #输出结果位数地区 性别 教育程度 观点 年龄 月收入 月支出
par(mar=c(4, 4, 2, 1) + 0.1, cex=0.8) # 图形修饰
case1 <- read.csv("clipboard", header=T, sep = "\t") #复制表中的数据,直接创建case1
head(case1)
1 A 女 中 不支持 55 2299 1423
2 A 女 低 不支持 39 3378 2022
3 A 女 中 支持 33 3460 1868
4 B 男 高 支持 41 4564 1918
5 B 女 高 不支持 55 3206 1906
6 A 女 中 不支持 48 4043 2233
summary(case1)
地区 性别 教育程度 观点 年龄 月收入 月支出
A:204 男:603 低:319 不支持:628 Min. : 6.0 Min. : 637 Min. : 797
B:401 女:597 高:303 支持 :568 1st Qu.:34.0 1st Qu.:2388 1st Qu.:1722
C:384 中:578 NA's : 4 Median :40.0 Median :2978 Median :1993
D:211 Mean :40.1 Mean :3006 Mean :1997
3rd Qu.:47.0 3rd Qu.:3624 3rd Qu.:2262
Max. :72.0 Max. :6239 Max. :3385
# 定性分析attach(case1) #绑定数据
T1 <- table(地区)T1A B C D
204 401 384 211barplot(T1) #绘制条形图# 定量分析
f <- hist(月收入) #直方图# 定性定量分析
boxplot(月收入~性别) #箱线图t.test(月收入~性别) #t检验Welch Two Sample t-test
data: 月收入 by 性别
t = 0.51, df = 1200, p-value = 0.6
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
-75.43 128.49
sample estimates:
mean in group 男 mean in group 女
3019 2993# 接受男女的月收入无显著差异的假设(p>0.5)# 二维列联表分析观点
T2 <- table(性别, 观点)
T2
性别 不支持 支持
男 319 282
女 309 286barplot(T2, beside = TRUE) # 条形图barplot(T2, beside = F) # 条形图# beside=T表示绘制分组条形图,beside=F表示绘制堆叠条形图# 多维列联表分析观点 不支持 支持
T3 <- ftable(性别, 教育程度, 观点) # 创建一个紧凑的"平铺"式列联表
T3
性别 教育程度
男 低 81 88
高 78 66
中 160 128
女 低 82 68
高 86 72
中 141 146
barplot(T3, beside = TRUE, col = 3:4) #条形图T4 <- ftable(教育程度, 性别, 观点)观点 不支持 支持
T4
教育程度 性别
低 男 81 88
女 82 68
高 男 78 66
女 86 72
中 男 160 128
女 141 146barplot(T4, beside = TRUE, col = 3:4) #条形图detach(case1) #解除绑定