You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用CBCgrps包twogrps函数遇对象未找到错误及空表问题

解决twogrps函数的两个问题:变量未找到与空表结果

1. 解决“object 'condition' not found”错误

twogrps函数的group参数(第二个位置参数)需要传入字符型的列名,而非直接裸写变量名。你之前直接写condition,R会在全局环境中寻找名为condition的对象,而非从df数据框中提取列,因此报错。

正确写法是给列名加引号,同时明确参数名(或确保位置正确):

twogrps(df, group = "condition", varlist = "sum_variable", ...)

2. 解决加引号后返回空表的问题

空表通常由以下两个参数设置导致:

  • ExtractP = 0.05:该参数会仅保留p值小于0.05的结果。如果两组sum_variable的差异不显著(p≥0.05),就会返回空表。建议将其设为1,展示所有结果:ExtractP = 1
  • ShowStatistic = F:该参数设置为FALSE会隐藏统计量,可能导致输出看起来为空。建议改为ShowStatistic = TRUE

另外,将分组变量转换为因子型更符合分组逻辑,也能避免潜在问题:

df$condition <- factor(df$condition, levels = c(1,2), labels = c("组1", "组2"))

完整可运行代码

# 加载数据
df <- structure(list(condition = c(2, 2, 1, 2, 2, 1, 1, 2, 2, 2, 1, 
2, 2, 1, 2, 1, 2, 1, 1, 2, 2, 2, 2, 1, 1, 1, 2, 2, 1, 1, 2, 1, 
2, 1, 1, 2, 1, 1, 2, 2, 1, 2, 1, 1, 1, 2, 2, 1, 2, 1, 1, 2, 2, 
1, 2, 1, 2, 2, 1, 1, 1, 2, 2, 1, 1, 2, 2, 2, 1, 1, 1, 1, 2, 1, 
2, 1), sum_variable = c(9, 6, 13, 3, 4, 3, 12, 2, 7, 8, 7, 4, 
5, 10, 2, 5, 4, NA, 14, 9, 2, 5, 7, 3, NA, 3, 5, 7, 3, 8, 3, 
3, 4, 8, 10, 9, 5, 7, 8, 4, 9, NA, 10, 14, 10, 3, 4, 10, 3, NA, 
5, 3, 4, 4, NA, 5, 4, 6, 6, 9, 6, 2, 3, NA, 4, NA, 2, 2, 6, 5, 
5, 3, 5, NA, 4, 4)), row.names = c(NA, -76L), class = c("tbl_df", 
"tbl", "data.frame"))

# 转换分组变量为因子
df$condition <- factor(df$condition)

# 加载包
library(CBCgrps)

# 运行修正后的代码
twogrps(df, group = "condition", varlist = "sum_variable", p.rd = 3, 
        skewvar=NULL, norm.rd = 2, 
        sk.rd = 2, tabNA = "no", cat.rd = 0, pnormtest = 0.05,
        maxfactorlevels = 30, minfactorlevels = 10, sim = FALSE, 
        workspace = 2e+05, ShowStatistic = TRUE, ExtractP = 1)

运行上述代码后,会输出包含两组描述性统计和差异检验结果的表格,不会再返回空表。

内容的提问来源于stack exchange,提问作者Espejito

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.30 18:31:02