×

R 教程

R语言 概述R语言 环境设置R语言 基本语法R语言 数据类型R语言 变量R语言 运算符R语言 决策R语言 包R语言 循环R语言 数据重塑R语言 函数R语言 字符串R语言 向量R语言 列表R语言 矩阵R语言 数组R语言 因子R语言 数据帧

R语言 图表

R语言 条形图R语言 箱线图R语言 直方图R语言 折线图R语言 散点图R语言 饼状图

R语言 数据接口

R语言 CSV文件R语言 Excel文件R语言 二进制文件R语言 XML文件R语言 JSON文件R语言 Web数据R语言 数据库

R语言 统计示例

R语言 平均值,中位数和模式R语言 线性回归R语言 多重回归R语言 逻辑回归R语言 标准分布R语言 二项分布R语言 泊松回归R语言 协方差分析R语言 时间序列分析R语言 非线性最小二乘R语言 决策树R语言 随机森林算法R语言 生存分析R语言 卡方检验

R语言 相关资源

R语言 外部资源R语言 相关讨论R语言 面试题

R语言 卡方检验


卡方检验是一种确定两个分类变量之间是否存在显着相关性的统计方法。 这两个变量应该来自相同的人口,他们应该是类似 - 是/否,男/女,红/绿等。

例如,我们可以建立一个观察人们的冰淇淋购买模式的数据集,并尝试将一个人的性别与他们喜欢的冰淇淋的味道相关联。 如果发现相关性,我们可以通过了解访问的人的性别的数量来计划适当的味道库存。

语法

用于执行卡方检验的函数是chisq.test()
在R语言中创建卡方检验的基本语法是 -

chisq.test(data)

以下是所使用的参数的描述 - 

  • data是以包含观察中变量的计数值的表的形式的数据。

我们将在“MASS”图书馆中获取Cars93数据,该图书馆代表1993年不同型号汽车的销售额。

library("MASS")
print(str(Cars93))

当我们执行上面的代码,它产生以下结果 -

'data.frame':   93 obs. of  27 variables: 
 $ Manufacturer      : Factor w/ 32 levels "Acura","Audi",..: 1 1 2 2 3 4 4 4 4 5 ... 
 $ Model             : Factor w/ 93 levels "100","190E","240",..: 49 56 9 1 6 24 54 74 73 35 ... 
 $ Type              : Factor w/ 6 levels "Compact","Large",..: 4 3 1 3 3 3 2 2 3 2 ... 
 $ Min.Price         : num  12.9 29.2 25.9 30.8 23.7 14.2 19.9 22.6 26.3 33 ... 
 $ Price             : num  15.9 33.9 29.1 37.7 30 15.7 20.8 23.7 26.3 34.7 ... 
 $ Max.Price         : num  18.8 38.7 32.3 44.6 36.2 17.3 21.7 24.9 26.3 36.3 ... 
 $ MPG.city          : int  25 18 20 19 22 22 19 16 19 16 ... 
 $ MPG.highway       : int  31 25 26 26 30 31 28 25 27 25 ... 
 $ AirBags           : Factor w/ 3 levels "Driver & Passenger",..: 3 1 2 1 2 2 2 2 2 2 ... 
 $ DriveTrain        : Factor w/ 3 levels "4WD","Front",..: 2 2 2 2 3 2 2 3 2 2 ... 
 $ Cylinders         : Factor w/ 6 levels "3","4","5","6",..: 2 4 4 4 2 2 4 4 4 5 ... 
 $ EngineSize        : num  1.8 3.2 2.8 2.8 3.5 2.2 3.8 5.7 3.8 4.9 ... 
 $ Horsepower        : int  140 200 172 172 208 110 170 180 170 200 ... 
 $ RPM               : int  6300 5500 5500 5500 5700 5200 4800 4000 4800 4100 ... 
 $ Rev.per.mile      : int  2890 2335 2280 2535 2545 2565 1570 1320 1690 1510 ... 
 $ Man.trans.avail   : Factor w/ 2 levels "No","Yes": 2 2 2 2 2 1 1 1 1 1 ... 
 $ Fuel.tank.capacity: num  13.2 18 16.9 21.1 21.1 16.4 18 23 18.8 18 ... 
 $ Passengers        : int  5 5 5 6 4 6 6 6 5 6 ... 
 $ Length            : int  177 195 180 193 186 189 200 216 198 206 ... 
 $ Wheelbase         : int  102 115 102 106 109 105 111 116 108 114 ... 
 $ Width             : int  68 71 67 70 69 69 74 78 73 73 ... 
 $ Turn.circle       : int  37 38 37 37 39 41 42 45 41 43 ... 
 $ Rear.seat.room    : num  26.5 30 28 31 27 28 30.5 30.5 26.5 35 ... 
 $ Luggage.room      : int  11 15 14 17 13 16 17 21 14 18 ... 
 $ Weight            : int  2705 3560 3375 3405 3640 2880 3470 4105 3495 3620 ... 
 $ Origin            : Factor w/ 2 levels "USA","non-USA": 2 2 2 2 2 1 1 1 1 1 ... 
 $ Make              : Factor w/ 93 levels "Acura Integra",..: 1 2 4 3 5 6 7 9 8 10 ... 

上述结果表明数据集有很多因素变量,可以被认为是分类变量。 对于我们的模型,我们将考虑变量“AirBags”和“Type”。 在这里,我们的目标是找出所售的汽车类型和安全气囊类型之间的任何显着的相关性。 如果观察到相关性,我们可以估计哪种类型的汽车可以更好地卖什么类型的气囊。

# Load the library.
library("MASS")

# Create a data frame from the main data set.
car.data <- data.frame(Cars93$AirBags, Cars93$Type)

# Create a table with the needed variables.
car.data = table(Cars93$AirBags, Cars93$Type) 
print(car.data)

# Perform the Chi-Square test.
print(chisq.test(car.data))

当我们执行上面的代码,它产生以下结果 -

                     Compact Large Midsize Small Sporty Van
  Driver & Passenger       2     4       7     0      3   0
  Driver only              9     7      11     5      8   3
  None                     5     0       4    16      3   6

        Pearson's Chi-squared test

data:  car.data
X-squared = 33.001, df = 10, p-value = 0.0002723

Warning message:
In chisq.test(car.data) : Chi-squared approximation may be incorrect

结论

结果显示p值小于0.05,这表明字符串相关。


分类导航

关注微信下载离线手册

bootwiki移动版 bootwiki
(群号:472910771)