0

我正在尝试查看许多分类变量的相互作用。我正在尝试收集 P 值。我发现这里的代码似乎与我想要做的类似,但我似乎无法让代码与我的数据一起正常运行。

我梳理我的数据首先查看变量并列出每个可能的变量组合。但是当我尝试使用该函数并将其应用于每个变量组合时,它会在代码的 chisq.test 部分中引发错误,因此永远不会创建 df_res。

catOnly.test 包含类似(除最后两个之外的所有分类)的数据。

有什么建议么?

V_NP_001  001  FU12Month   V   N   0   4   None   0.000   1.734




  f = function(x,y) {
  tbl = as.data.frame(catOnly.test)%>% select(x,y) %>% table()
  chisq_pval = round(chisq.test(tbl)$p.value, 4)
  cramV = round(cramersV(tbl), 4)
  data.frame(x, y, chisq_pval, cramV) }

# create unique combinations of column names
# sorting will help getting a better plot (upper triangular)
df_comb = data.frame(t(combn(sort(names(catOnly.test)), 4)), stringsAsFactors = F)

# apply function to each variable combination
df_res = map2_df(df_comb$X1, df_comb$X2, f)

# plot results
df_res %>%
  ggplot(aes(x,y,fill=chisq_pval))+
  geom_tile()+
  geom_text(aes(x,y,label=cramV))+
  scale_fill_gradient(low="red", high="yellow")+
  theme_classic()
print(df_res)
4

0 回答 0