SAS proc freq总结

SAS proc freq总结,第1张

11、基本模式、一般用法:

参数1:

1 nlevels 统计变量独立值个数

2 noprint 不打印结果

3 order=FREQ 按频数从大到小排列(PS:To order categories based on a particular FORMAT, you can use order = FORMATTED option)

变量:

可以单个变量x,可以双变量x y,或:x (y, z)

参数2:

1 nocum 不返回累加信息

2 nopercent 不返回百分比信息

3 list 交叉分析时,添加list声明后,每种可能组合都会输出一条记录

4 norow nocol 交叉分析时,该声明分别默认不输出行、列百分比信息

5 missing 统计缺失值

可选1:WEIGHT statement is used when we already have the counts It makes PROC FREQ use count data to produce frequency and crosstabulation tables

12、特殊用法

121 卡方检验

作用:检验双类别变量之间的同质性或独立性;帮助判断模型中自变量的统计显著性,一般p<=005时,保留该变量。

122 柱状图(bar)或散点图(dot)

一个sas程序一直在运行不出结果是什么问题?

可能是程序中存在死循环或者程序中的变量未定义,导致程序无法正确执行。另外,也可能是程序中的程序语句有语法错误,导致程序无法正确运行。

P是07764

那个warning意思是说有四分之一(25%)的格子理论数小于5这是做一般卡方检验和Fisher's Exact Test的检验条件,不满足就要用Fisher's Exact Test。Two-sided是双侧P值,一般都是这个。除非你的专业要求不同,会使用单侧概率。

请参考

如何用excel做卡方检验 5分

卡方(χ2)常用以检验两个或两个以上样本率或构成比之间差别的显著性分析,用以说明两类属性现象之间是否存在一定的关系。

卡方检验常采用四格表,如图 5-4-18所示,比较的A、B两组资料分别用a、b、c、d表示,a为A组的阳性例数,b为A组的阴性例数,c为B组的阳性例数,d为B组的阴性例数。

用EXCEL进行卡方检验时,资料的输入方式按实际值和理论值分别输入四个单元格,如图5-4-18所示。

(1)比较的A、B两组资料分别用a、b、c、d表示。a=52,为A组的阳性例数;b=19,为A组的阴性例数;c=39,为B组的阳性例数;d=3,为B组的阴性例数。根据公式计算理论值T11、T12、、T21和T22。将实际值和理论值分别输入如图所示的四个单元格(图5-4-19)。 选择表的一空白单元格,存放概率p值的计算结果,将滑鼠器移至工具栏的“ fx”处,滑鼠器左键点选工具栏的“ fx”快捷键,开启函式选择框。

(2)在函式选择框的“函式分类”栏选择“统计”项,然后在“函式名”栏内选择“CHITEST”函式,用滑鼠器点选“确定”按钮,开启资料输入框(图5-4-20)。

(3)在“Actual_range”项的输入框内输入实际值(a、b、c、d)的起始单元格和结束单元格的行列号,在“Expected_range”项的输偿框内输入理论值(T11、T12、T21、T22)的起始单元格和结束单元格的行列号,起始单元格和结束单元格的行列号之间用“:”分隔(图5-4-20)。 在资料输入完毕后,p值的计算结果立即显示。用滑鼠器点选“确定”按钮,观察计算结果。

(4)在表存放概率 p 值的空白单元格处显示 p 值的计算结果。在“编辑”栏处显示χ2检验的函式“CHITEST”及两组比较资料的起始与结束单元格的行列号(图 5-4-21)。

如何进行卡方检验

卡方检验

你的资料应该用交叉列联表做,资料录入格式为:建立两个变数,变数1是组别,

正常对照组用资料1表示,病例组用资料2表示;变数2是位点,A用1表示,C用2表示,

还有一个变数3是权重,例数

资料录入完成后,点 yze-descriptive statistics-crosstabs-把变数1选到rows里

,把变数2选到column里,然后点选下面的statistics,开启对话方块,勾选chi-squares,

然后点continue,再点ok,出来结果的第3个表就是你要的卡方检验,第一行第一个数是卡方值,

后面是自由度,然后是P值。

卡方检验具体怎么计算

卡方检验计算:

假设有两个分类变数X和Y,它们的值域分别为{x1, x2}和{y1, y2},其样本频数列联表为:

若要推断的论述为H1:“X与Y有关系”,可以利用独立性检验来考察两个变数是否有关系,并且能较精确地给出这种判断的可靠程度。

具体的做法是,由表中的资料算出随机变数K^2的值(即K的平方)

K^2 = n (ad - bc) ^ 2 / [(a+b)(c+d)(a+c)(b+d)] 其中n=a+b+c+d为样本容量

K^2的值越大,说明“X与Y有关系”成立的可能性越大。

当表中资料a,b,c,d都不小于5时,可以查阅下表来确定结论“X与Y有关系”的可信程度:

例如,当“X与Y有关系”的K^2变数的值为6109,根据表格,因为5024≤6109<6635,所以“X与Y有关系”成立的概率为1-0025=0975,即975%。

四格表资料检验:

四格表资料的卡方检验用于进行两个率或两个构成比的比较。

1 专用公式:

若四格表资料四个格子的频数分别为a,b,c,d,则四格表资料卡方检验的卡方值=n(ad-bc)^2/(a+b)(c+d)(a+c)(b+d),

自由度v=(行数-1)(列数-1)

2 应用条件:

要求样本含量应大于40且每个格子中的理论频数不应小于5。当样本含量大于40但有1=

行×列表资料检验:

行×列表资料的卡方检验用于多个率或多个构成比的比较。

1 专用公式:

r行c列表资料卡方检验的卡方值=n[(A11/n1n1+A12/n1n2++Arc/nrnc)-1]

2 应用条件:

要求每个格子中的理论频数T均大于5或1

列联表资料检验:

同一组物件,观察每一个个体对两种分类方法的表现,结果构成双向交叉排列的统计表就是列联表。

1 RC 列联表的卡方检验:

RC 列联表的卡方检验用于RC列联表的相关分析,卡方值的计算和检验过程与行×列表资料的卡方检验相同。

2 22列联表的卡方检验:

22列联表的卡方检验又称配对记数资料或配对四格表资料的卡方检验,根据卡方值计算公式的不同,可以达到不同的目的。当用一般四格表的卡方检验计算时,卡方值=n(ad-bc)^2/[(a+b)(c+d)(a+c)(b+d)],此时用于进行配对四格表的相关分析,如考察两种检验方法的结果有无关系;当卡方值=(|b-c|-1)2/(b+c)时,此时卡方检验用来进行四格表的差异检验,如考察两种检验方法的检出率有无差别。

列联表卡方检验应用中的注意事项同RC表的卡方检验相同。

卡方检验就是统计样本的实际观测值与理论推断值之间的偏离程度,实际观测值与理论推断值之间的偏离程度就决定卡方值的大小,卡方值越大,越不符合,偏差越小,卡方值就越小,越趋于符合,若量值完全相等时,卡方值就为0,表明理论值完全符合。

手工卡方检验怎么做

你的资料不适合使用卡方检验。卡方检验用于2个变数都属于分类变数(例如性别、婚姻状态等,属于定性资料)时的资料分析,例如要分析性别与色盲之间(色盲一般分为“有”和“无”2个分类,属于定性变数)的关系,就可以使用卡方检验。你的资料一个变数是组别(分为对照组和A租),而另一个变数(你的测定值)基本上可以说是定量资料(定量变数,例如身高、体重等都属于这一类),这种情况首先考虑使用成组t检验。

卡方检验研究的方法

1、处理四格表资料时不考虑样本量和最小理论频数而直接采用卡方检验

处理四格表资料是卡方检验最为常见的用途之一,其目的在于分析“构成比”或者“率”上的差异是否具有统计学意义。对于四格表资料,使用卡方检验的条件为样本量大于 40,且最小理论频数应大于 5。对于某些小样本的、或者指标阳性率较低的研究,总样本量可能小于 40,最小理论频数也可能小于 5,此时应该采用 Fisher 确切概率法进行分析。

比如某研究需比较小细胞肺癌和非小细胞肺癌内某个基因的表达情况的差异是否有统计学意义,得出如下四格表:

该研究的样本量仅为 30 个,且最小理论频数为(12×9)/30=36,所以应该采用 Fisher 确切概率法进行分析。实际上,从理论上讲,若要分析四格表资料中的构成比或者率之间的差异是否有统计学意义,Fisher 确切概率法的结果是最可靠的。若是使用软体对资料进行分析,不论样本量和最小理论频数,均可采用 Fisher 确切概率法。

2、不考虑分析目的、设计型别而盲目套用卡方检验

有的四格表资料本身是配对的,且研究的目的主要是回答“一致性”或者“不一致性”的问题,此时就不应该用卡方检验对资料进行分析。比如:某研究者发明了一种新的 HIV 检测法,并且用该法和免疫印迹法(检测 HIV 感染的“金标准”)同时检测了 100 份血清,得到如下四格表资料:

该研究在设计上与表 1 中的研究最大的区别在于“配对”,即同一样本分别接受了新方法检测和免疫印迹法(金标准)的检测。研究者最关心的问题应该是“新方法和金标准之间的一致性”问题,若采用卡方检验进行分析,得出的结论是“免疫印迹法检测结果的频数分布在新方法阳性组和阴性组中是不同的”,这一结论显然并无多大专业价值。

对于此类研究,可以采用两种方法进行统计,一是采用 Memar χ2 检验公式计算两种方法不一致的部分是否具有统计学意义;二是采用 Kappa 检验分析两种结果之间的一致性。

需要说明的是,此类研究中的一种方法必须是金标准,否则研究可能没有价值。以表 2 中的资料为例,若免疫印迹法并非检测 HIV 感染的金标准,两种方法的一致性即使好得一塌糊涂,也可能无济于事。

因为一个显而易见的问题是:这两种方法可能都是错误的检测方法。比如:采用金标准对 100 份血清进行检测后,其中 90 例为阳性,而不论是新方法还是免疫印迹法,均仅仅检测出了 55 个阳性样本,漏检率显然太高。

3、误用卡方检验处理等级资料

等级资料的表示方法与分类资料相似,因此受“定式思维”的影响,部分同行“习惯性”地采用卡方检验对等级资料进行处理,这也是医学期刊上最常见的滥(乱)用卡方检验的行为。卡方检验回答的问题仅仅是“构成比”或者“率”上的差异是否具有统计学意义,而不能回答效应指标的强度高低问题。比如某研究比较了两类人群胰腺癌分期的分布状况,如下表所示:

此类资料的一个显著特点是胰腺癌的分期(Ⅰ、Ⅱ、Ⅲ、Ⅳ期)是一个等级资料,研究者的研究目的是分析甲乙两群人胰腺癌的分期是否有差别,是一个强度“分期早晚”的问题,而不是“构成比”的差异。若用卡方检验处理此类资料,得出的结论就是“甲乙两类人群胰腺癌分期构成比上的差异是否具有统计学意义”,而无法明确“孰高孰低”的问题。

以上述表格为例,卡方检验结果显示有统计学意义,但问题在于:根据表中资料,人群甲以Ⅰ期和Ⅳ期为主,人群乙以Ⅱ期和Ⅲ期为主,让人完全无法判断两类人群的疾病分期“孰早孰晚”的问题。

处理此类资料的

下面两组资料需要做卡方检验,怎么做呀

卡方检验

你的资料应该用交叉列联表做,资料录入格式为:建立两个变数,变数1是组别,

正常对照组用资料1表示,病例组用资料2表示;变数2是疗效等分类变数,用1表示分类属性1,用2表示分类属性2,

还有一个变数3是权重,例数

资料录入完成后,先加权频数后点 yze-descriptive statistics-crosstabs-把变数1选到rows里

,把变数2选到column里,然后点选下面的statistics,开启对话方块,勾选chi-squares,

然后点continue,再点ok,出来结果的第3个表就是你要的卡方检验,第一行第一个数是卡方值,

后面是自由度,然后是P值。

如何用spss 做卡方检验

按以下弧式录入资料:

分组 是否发病 人数

1 1 26

1 2 24

2 1 29

2 2 21

将变数“人数”Weight Cases

Analyze->Descriptive Statistics->Crosstabs:将分组放入“行”,将是否发病放入“列”,“统计Statistics”选项框内选择“Chi-square”,确定执行,OK。祝你好运!

怎样使用spss进行卡方检验和T检验

卡方检验在 分析栏第二个描述性分析的列联分析里

T检验分为独立样本和配对样本T检验 都在分析栏的均值检验里 不知道你的顺序是不是和我的150的一样 你看看

两个数如何进行卡方检验? 10分

表43不是已经给了自由度df=2吗?

df=(m-1)(n-1),也就是行数-1,列数-1

提供SAS程式:

data gt;

do a=1 to 2;

do b=1 to 3;

input [email protected]@;

output;

end;

end;

cards;

261 48 68

86 384 56

;

proc freq;

weight x;

tables ab/chisq;

run;

得出卡方值=33539 ,分布有差异。

-------------------------------------------------------

Chi-Square2 3352943 <0001

Likelihood Ratio Chi-Square2 3663929 <0001

Mantel-Haenszel Chi-Square1 985513 <0001

Phi Coefficient 06094

Contingency Coefficient 05204

Cramer's V 06094

--------------------------------------------------

SPSS结果也是类似的

注:卡方计算是有条件的,比如总数大于40,否则只能用fisher精确概率法

--------------------------

表44中说的是单项比较,乍一看貌似很荒唐,因为卡方最少也是四格表,光光2个数字是不能做卡方检验的

你仔细看看那个备注,看看 到底是哪个跟哪个在比,我猜测估计是放弃与不放弃,但是算了下又不对。

看来一时半刻也帮不了你,原作者这里没有交代清楚,文献发表上市通不过的。

用SPSS怎样做简单四个表的卡方检验

如果已经是四格表样子的资料,按以下格式录入资料

行变数 列变数 人数

1 1 A

1 2 B

2 1 C

2 2 D

1、将人数变数加权:

Data--Weight Cases

Weight cases by 人数变数 count点选钮使之进入Frequence Variable,OK

2、卡方检验:

yze--descriptive--crosstabs,将行变数放到行,将列变数放到列

statistics按钮

勾选chi-square(卡方检验),勾选phi and cramer's V(衡量互动分析中两个变数关系强度的指标),continue

cells按钮

勾选observed(各单元格的观测次数),勾选row(行单元格的百分比),continue

ok

时间序列中经常会有自相关检验,最常用的方法是D-W检验,sas/ETS模块中的proc autoreg语句可以实现:

/-- Durbin-Watson test for autocorrelation --/

proc autoreg data=a;

model y = time / dw=4 dwprob;

run;

另外,proc reg语句也可以:

proc reg data = a;

model y =time / dw;

run;

近日又有不少盟友咨询说看到文献中率的比较用了Cochran–Armitage trend tests,纷纷问我这是什么高大上的统计方法,其实这就是我们常说的趋势卡方检验,并不是什么高大上的新方法。当处理有序分类变量时,我们常会使用到趋势卡方检验与秩和检验,那么两者使用的区别在哪里呢,使不少盟友产生疑惑,以下是统一解答与回复。

02

使用情况

当“分析变量”(列变量)是有序多分类变量时,分组变量(行变量)不是有序多分类变量时,例如当比较2种手术方式的治疗效果时 ,“非常差,差,一般,好,非常好”,这时的疗效评价就是分析变量,手术方式是分组变量,这个时候需要用秩和检验,结果如果有差异,看平均秩次,平均秩次越大,疗效越好。

当“分组变量”(行变量)是有序多分类变量时,分析变量(列变量)不是有序多分类变量时,比如,不同年龄段(20-,30-,40-,50-,)的疾病患病率情况,这个时候不同年龄段是分组变量,为有序多分类变量,分析变量是患病与否,可以用卡方检验,如果卡方检验有统计学差异,再看下面的卡方趋势检验结果,有差异说明随着年龄段的增加,患病率越来越高或越低。

03

举例分析

例1:三种手术方式的治疗效果资料列于表1,试问三组手术方式间疗效是否有差别?

表1 三种手术方式间疗效统计

手术方式

疗效

合计

无效

好转

治愈

A

5

32

20

57

B

30

18

10

78

C

15

10

10

35

合计

50

80

40

170

分析:显然此例手术方式为无序分类的分组变量,疗效为有序分类的分析变量,应采用秩和非参检验进行分析,SAS代码如下:

data zhihe1;

do R=1 to 3;

do C=1 to 3;

input F@@;

do i=1 to F;

output;

end;

end;

end;

cards;

5 32 20

30 18 10

15 10 10

;

run;

proc npar1way wilcoxon data=zhihe1;

var c;

class R;

run;

结果如下:

根据统计分析结果,可以认为三种手术方式之间疗效有统计学差异。

例2:各年龄段的治疗效果资料列于表2,试问各年龄组患病率是否有差别?

data tmp;

set SASHELPworkers(firstobs=10 obs=15);

if ELECTRIC>260;

run;

proc print;run;

Obs DATE ELECTRIC MASONRY

1 OCT77 2786 2887

2 NOV77 2762 2862

3 DEC77 2746 2767

4 JAN78 2621 2343

输出4条记录。

解法2:

data tmp;

set SASHELPworkers(firstobs=10 obs=15);

where ELECTRIC>260;

run;

proc print;run;

Obs DATE ELECTRIC MASONRY

1 MAY78 2780 2955

2 JUN78 2895 3083

3 JUL78 2966 3069

4 AUG78 3051 3153

5 SEP78 3078 3106

6 OCT78 3082 3163

输出6条记录。

思考:上述两种解法为什么输出不一样?请注意if语句和where语句的区别。

区别:

1 if语句是面向PDV的,对当前PDV中的数据进行判断,满足条件时将其写入到外部数据集;where语句也是面向PDV的,它使用于从外部数据源读数据到PDV之前进行判断,当满足条件时才被写入到PDV。显然一个在写入PDV之前,一个在写入PDV之后,两者是有差异的。

2 当没有数据集选项firstobs=10 obs=15时,if语句和where语句用法结果相同,但有这两个选项时效果就不同了。有这两个选项,if语句是从原数据集(或数据源)的观测记录进行计算个数,即从原数据集的第10号观测开始读入到PDV中,然后再判断是否满足if条件,若满足则输出到外部数据集,直到原数据集的第15号观测结束。而where语句是在读入到PDV之前就进行判断的,所以这里的firstobs的意思是从使得满足where条件的第10个观测开始,而不是原数据集的第10个观测开始。

综上可知,该题中应使用if语句。

以上就是关于SAS proc freq总结全部的内容,包括:SAS proc freq总结、一个sas程序一直在运行不出结果是什么问题、SAS,给适当的结果和分析,谢谢等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9285380.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-26
下一篇 2023-04-26

发表评论

登录后才能评论

评论列表(0条)

保存