开发手册 欢迎您!
软件开发者资料库

R - Chi Square Test

R Chi Square Test - 从基本概念到高级概念,从简单简单的步骤学习R编程语言,例如R安装,语言基础,语法,文字,数据类型,变量,函数,循环,决策,模块,数组,列表,矢量,数学,矩阵,统计,图形,Excel数据,csv数据,概述,环境设置,运算符,字符串,因素,数据框,包,数据重塑,二进制文件,XML文件,Json文件,Web数据,数据库,饼图,条形图,箱线图,直方图,折线图,散点图,平均值,中位数和模式,线性回归,多元回归,Logistic回归,正态分布,二项分布,泊松回归,协方差分析,时间序列分析,非线性最小二乘,决策树,随机森林,生存分析,卡方检验。

卡方检验是一种统计方法,用于确定两个分类变量之间是否存在显着相关性.这些变量都应该来自同一群体,它们应该分类为 : 是/否,男/女,红/绿等.

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

语法

用于的功能执行卡方检验是 chisq.test().

在R中创建卡方检验的基本语法是 :

chisq.test(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 testdata:  car.dataX-squared = 33.001, df = 10, p-value = 0.0002723Warning message:In chisq.test(car.data) : Chi-squared approximation may be incorrect

结论

结果显示p值小于0.05表示字符串相关.