expss 包中的显着性测试行
Significance testing rows in expss package
使用 expss 包,是否可以 运行 对 5 个不同的二进制变量进行 z 检验?我想出了如何使用 tab_cols
参数对不同列中的单个变量进行 运行 显着性测试,但在这种情况下我没有任何列。我想将我正在测试的 5 个变量视为 5 个不同的列(A、B、C、D、E)和 运行 所有可能组合的 z 测试。
如果A列的比例明显大于B列的比例,那么我希望A列在百分比后面显示字母“B”,如下所示:
Z-tests across multiple variables
这是我的尝试:
data %>%
tab_cells(reaction_1_5, reaction_2_5, reaction_3_5, reaction_4_5, reaction_5_5) %>%
tab_stat_cpct() %>%
tab_last_sig_cpct() %>%
tab_pivot()
输出如下table:
| | | #Total |
| ------------ | ------------ | ------ |
| reaction_1_5 | 0 | 84.3 |
| | 1 | 15.7 |
| | #Total cases | 381 |
| reaction_2_5 | 0 | 80.8 |
| | 1 | 19.2 |
| | #Total cases | 381 |
| reaction_3_5 | 0 | 75.6 |
| | 1 | 24.4 |
| | #Total cases | 381 |
| reaction_4_5 | 0 | 82.4 |
| | 1 | 17.6 |
| | #Total cases | 381 |
| reaction_5_5 | 0 | 78.2 |
| | 1 | 21.8 |
| | #Total cases | 381 |
我认为 tab_last_sig_cpct
函数不起作用,因为它计算跨列的 z 检验,而我只有一个列。我想测试我的 5 个变量中 1 的比例(15.7 对 19.2 对 24.4 对 17.6 对 21.8)的所有可能组合。
这可以在 expss 包中实现吗?
这是我使用的数据:
structure(list(reaction_1_5 = c(0L, 1L, 1L, 0L, 0L, 0L, 1L, 0L,0L, 0L), reaction_2_5 = c(0L, 0L, 0L, 0L, 0L, 0L, 0L, 1L, 0L,1L), reaction_3_5 = c(0L, 0L, 0L, 1L, 0L, 0L, 0L, 0L, 0L, 0L),reaction_4_5 = c(0L, 0L, 0L, 0L, 0L, 1L, 0L, 0L, 1L, 0L),reaction_5_5 = c(0L, 0L, 1L, 0L, 0L, 0L, 0L, 1L, 0L, 0L)), row.names = c(NA,-10L), class = c("tbl_df", "tbl", "data.frame"), .internal.selfref = <pointer: 0x7fc3b38106e0>)
可以并排组合变量,如您的示例所示:
library(expss)
data = structure(
list(
reaction_1_5 = c(0L, 1L, 1L, 0L, 0L, 0L, 1L, 0L,0L, 0L),
reaction_2_5 = c(0L, 0L, 0L, 0L, 0L, 0L, 0L, 1L, 0L,1L),
reaction_3_5 = c(0L, 0L, 0L, 1L, 0L, 0L, 0L, 0L, 0L, 0L),
reaction_4_5 = c(0L, 0L, 0L, 0L, 0L, 1L, 0L, 0L, 1L, 0L),
reaction_5_5 = c(0L, 0L, 1L, 0L, 0L, 0L, 0L, 1L, 0L, 0L)
),
row.names = c(NA,-10L),
class = "data.frame"
)
data %>%
stack() %>%
tab_cells("|" = values) %>% # "|" to suppress variable names
tab_cols("|" = ind) %>%
tab_stat_cpct() %>%
tab_pivot() %>%
significance_cpct()
# | | reaction_1_5 | reaction_2_5 | reaction_3_5 | reaction_4_5 | reaction_5_5 |
# | | A | B | C | D | E |
# | ------------ | ------------ | ------------ | ------------ | ------------ | ------------ |
# | 0 | 70.0 | 80.0 | 90.0 | 80.0 | 80.0 |
# | 1 | 30.0 | 20.0 | 10.0 | 20.0 | 20.0 |
# | #Total cases | 10 | 10 | 10 | 10 | 10 |
但是significance_cpct
提供独立样本的统计检验。但是,您的百分比是在同一样本上计算的。所以我们需要对相关样本进行检验。到目前为止,expss
.
中还没有这样的比例测试
使用 expss 包,是否可以 运行 对 5 个不同的二进制变量进行 z 检验?我想出了如何使用 tab_cols
参数对不同列中的单个变量进行 运行 显着性测试,但在这种情况下我没有任何列。我想将我正在测试的 5 个变量视为 5 个不同的列(A、B、C、D、E)和 运行 所有可能组合的 z 测试。
如果A列的比例明显大于B列的比例,那么我希望A列在百分比后面显示字母“B”,如下所示:
Z-tests across multiple variables
这是我的尝试:
data %>%
tab_cells(reaction_1_5, reaction_2_5, reaction_3_5, reaction_4_5, reaction_5_5) %>%
tab_stat_cpct() %>%
tab_last_sig_cpct() %>%
tab_pivot()
输出如下table:
| | | #Total |
| ------------ | ------------ | ------ |
| reaction_1_5 | 0 | 84.3 |
| | 1 | 15.7 |
| | #Total cases | 381 |
| reaction_2_5 | 0 | 80.8 |
| | 1 | 19.2 |
| | #Total cases | 381 |
| reaction_3_5 | 0 | 75.6 |
| | 1 | 24.4 |
| | #Total cases | 381 |
| reaction_4_5 | 0 | 82.4 |
| | 1 | 17.6 |
| | #Total cases | 381 |
| reaction_5_5 | 0 | 78.2 |
| | 1 | 21.8 |
| | #Total cases | 381 |
我认为 tab_last_sig_cpct
函数不起作用,因为它计算跨列的 z 检验,而我只有一个列。我想测试我的 5 个变量中 1 的比例(15.7 对 19.2 对 24.4 对 17.6 对 21.8)的所有可能组合。
这可以在 expss 包中实现吗?
这是我使用的数据:
structure(list(reaction_1_5 = c(0L, 1L, 1L, 0L, 0L, 0L, 1L, 0L,0L, 0L), reaction_2_5 = c(0L, 0L, 0L, 0L, 0L, 0L, 0L, 1L, 0L,1L), reaction_3_5 = c(0L, 0L, 0L, 1L, 0L, 0L, 0L, 0L, 0L, 0L),reaction_4_5 = c(0L, 0L, 0L, 0L, 0L, 1L, 0L, 0L, 1L, 0L),reaction_5_5 = c(0L, 0L, 1L, 0L, 0L, 0L, 0L, 1L, 0L, 0L)), row.names = c(NA,-10L), class = c("tbl_df", "tbl", "data.frame"), .internal.selfref = <pointer: 0x7fc3b38106e0>)
可以并排组合变量,如您的示例所示:
library(expss)
data = structure(
list(
reaction_1_5 = c(0L, 1L, 1L, 0L, 0L, 0L, 1L, 0L,0L, 0L),
reaction_2_5 = c(0L, 0L, 0L, 0L, 0L, 0L, 0L, 1L, 0L,1L),
reaction_3_5 = c(0L, 0L, 0L, 1L, 0L, 0L, 0L, 0L, 0L, 0L),
reaction_4_5 = c(0L, 0L, 0L, 0L, 0L, 1L, 0L, 0L, 1L, 0L),
reaction_5_5 = c(0L, 0L, 1L, 0L, 0L, 0L, 0L, 1L, 0L, 0L)
),
row.names = c(NA,-10L),
class = "data.frame"
)
data %>%
stack() %>%
tab_cells("|" = values) %>% # "|" to suppress variable names
tab_cols("|" = ind) %>%
tab_stat_cpct() %>%
tab_pivot() %>%
significance_cpct()
# | | reaction_1_5 | reaction_2_5 | reaction_3_5 | reaction_4_5 | reaction_5_5 |
# | | A | B | C | D | E |
# | ------------ | ------------ | ------------ | ------------ | ------------ | ------------ |
# | 0 | 70.0 | 80.0 | 90.0 | 80.0 | 80.0 |
# | 1 | 30.0 | 20.0 | 10.0 | 20.0 | 20.0 |
# | #Total cases | 10 | 10 | 10 | 10 | 10 |
但是significance_cpct
提供独立样本的统计检验。但是,您的百分比是在同一样本上计算的。所以我们需要对相关样本进行检验。到目前为止,expss
.