如何对数据帧的一行中的项目执行二比例 Z 检验并将 p 值附加到数据帧?
How to perform Two-proportion Z test on items in a row of a dataframe and append the p value to the dataframe?
我正在使用 R,数据帧中有数据。
数据框的每一行都有 urban/rural 基础上的数据,以及用于比较城市和农村人口比率的二比例 Z 检验。
df
State UrbanPop RuralPop UrbanCases RuralCases
AL 1000 250 200 50
AK 500 50 500 75
想法是从 A 行和 B 行中的数据独立获得二比例 Z 检验,以比较每个州内的 urban/rural。
我试过的是
df$P_Values <- apply(df,1,function(x) prop.test(x = c(df$UrbanPop, df$UrbanCases), n = c(df$RuralPop, df$RuralCases))$p.value)
我收到一条警告,指出每一行的“卡方近似值可能不正确”,并且附加到数据框的所有 p 值都等于零。
如有任何帮助,我们将不胜感激。
谢谢。
你 x
和 n
错了:x
是“成功次数的向量”;那将匹配您的 *Cases
,而 n
是试验次数;那将对应于您的 *Pop
。如果您重新分配 x
和 n
的向量,代码有效:
df$P_Values <- apply(df, 1, function(x) prop.test(n = c(df$UrbanPop, df$UrbanCases),
x = c(df$RuralPop, df$RuralCases))$p.value)
df
UrbanPop RuralPop UrbanCases RuralCases P_Values
1 1000 250 200 50 0.000000000001119084
2 500 50 500 75 0.000000000001119084
我正在使用 R,数据帧中有数据。
数据框的每一行都有 urban/rural 基础上的数据,以及用于比较城市和农村人口比率的二比例 Z 检验。
df
State UrbanPop RuralPop UrbanCases RuralCases
AL 1000 250 200 50
AK 500 50 500 75
想法是从 A 行和 B 行中的数据独立获得二比例 Z 检验,以比较每个州内的 urban/rural。
我试过的是
df$P_Values <- apply(df,1,function(x) prop.test(x = c(df$UrbanPop, df$UrbanCases), n = c(df$RuralPop, df$RuralCases))$p.value)
我收到一条警告,指出每一行的“卡方近似值可能不正确”,并且附加到数据框的所有 p 值都等于零。
如有任何帮助,我们将不胜感激。
谢谢。
你 x
和 n
错了:x
是“成功次数的向量”;那将匹配您的 *Cases
,而 n
是试验次数;那将对应于您的 *Pop
。如果您重新分配 x
和 n
的向量,代码有效:
df$P_Values <- apply(df, 1, function(x) prop.test(n = c(df$UrbanPop, df$UrbanCases),
x = c(df$RuralPop, df$RuralCases))$p.value)
df
UrbanPop RuralPop UrbanCases RuralCases P_Values
1 1000 250 200 50 0.000000000001119084
2 500 50 500 75 0.000000000001119084