huohehuangling 2023-03-01 23:28 采纳率: 66.7%
浏览 160
已结题

【R语言】加权线性回归模型,PSU问题

请教各位R语言好手,请问在做加权线性回归模型的时候出现以下错误要如何解决呢?

d_rec$rec.n <- as.numeric(with(d_rec, ifelse(rec == "aaa", 1, 0)))
nhc <- svydesign(data=d_rec, ids=~sdmvpsu, strata = ~sdmvstra, 
                 weights=~nhs_wt, nest = TRUE)
fit1 <- svyglm(rec.n~sex+age+eth+edu+inc+hbp+dm+htc,
               design = nhc,family = quasibinomial(),data = d_rec)

Error in onestrat(x[index, , drop = FALSE], clusters[index], nPSU[index][1],  : 
  Stratum (65) has only one PSU at stage 1

昨晚同样代码就可以运行,今天跑就不行了[捂脸]

  • 写回答

1条回答 默认 最新

  • Taylor 淡定哥 2023-03-02 03:41
    关注

    其中一个层(第 65 层)中只有一个 PSU(主要抽样单位),这导致调查设计出现问题。
    你参考一下这个:

    # Filter out Stratum 65
    d_rec_filtered <- d_rec[d_rec$sdmvstra != 65, ]
    
    # Create survey design object with filtered data
    nhc <- svydesign(data=d_rec_filtered, ids=~sdmvpsu, strata = ~sdmvstra, 
                     weights=~nhs_wt, nest = TRUE)
    
    # Fit the model with the filtered survey design
    fit1 <- svyglm(rec.n~sex+age+eth+edu+inc+hbp+dm+htc,
                   design = nhc,family = quasibinomial())
    
    
    

    从 svyglm 函数调用中删除了数据参数,因为数据已经在调查设计对象中指定。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

    报告相同问题?

    问题事件

    • 系统已结题 3月10日
    • 已采纳回答 3月2日
    • 创建了问题 3月1日

    悬赏问题

    • ¥15 VB6.0中PICTUREBOX加载本地图片无法显示
    • ¥100 关于游戏app session获取的问题
    • ¥15 MYSQL数据库建表
    • ¥15 爬虫程序爬取TTGChina网站文章代码
    • ¥35 由于系统缓冲区空间不足或队列已满,不能执行套接字上的操作。
    • ¥15 如何用下图方法在AMESim中搭建离心泵模型
    • ¥15 C#连接服务器,请求时报Ssl/Tsl未能建立安全通道
    • ¥15 xcode15build的c++ dylib在10.15上不兼容
    • ¥15 CPLD如何实现在线逻辑分析
    • ¥15 控制面板卸载无权限!!