问题描述
我正在尝试使用以下代码运行假设检验:
library(statsr)
inference(x= sex,y = natheal,data = dataset,statistic = "proportion",type = "ht",method = "theoretical",alternative = "greater",success = "Too Much")
但我不断收到此错误:
Error: Insufficient values in manual scale. 3 needed but only 2 provided.
这是什么意思?我该如何解决?
解决方法
该错误是函数绘制输出图形时引起的;期望为两种结果使用两种颜色,但结果不止两种。可以通过将参数 show_eda_plot
和 show_inf_plot
设置为 FALSE
来抑制图形。
然而,错误是因为您选择的方法期望响应变量中只有两个结果,但结果却不止两个。
library(statsr)
dataset <- data.frame(
sex = c(0,1,1),natheal = c("Not Enough","Just Right","Too Much","Not Enough"))
inference(x = sex,y = natheal,data = dataset,statistic = "proportion",type = "ht",method = "theoretical",alternative = "greater",success = "Too Much")
# Error: Insufficient values in manual scale. 3 needed but only 2 provided.
unique(dataset$natheal)
# [1] Not Enough Just Right Too Much
# Levels: Just Right Not Enough Too Much
如果您重新编码您的响应变量以便只有两个唯一值,则该函数将按预期运行。或者,选择不同的方法来分析您的数据。
dataset2 <- data.frame(
sex = c(0,"Not Enough",data = dataset2,success = "Too Much")