标签: survey

在SQL中,如何计算列中的值的数量,然后将其旋转以使列成为行?

我有一个调查数据库,每个问题有一列,每个人回答一行.每个问题的答案值为1到3.

Id    Quality?  Speed?
--    -------   -----
1     3         1
2     2         1
3     2         3
4     3         2
Run Code Online (Sandbox Code Playgroud)

现在,我需要将结果显示为每个问题一行,每个响应编号都有一列,每列中的值是使用该答案的响应数.最后,我需要计算总分,即1的数量再加上2的数量加上三次数的三倍.

Question  1    2    3    Total
--------  --   --   --   -----
Quality?  0    2    2    10
Speed?    2    1    1    7
Run Code Online (Sandbox Code Playgroud)

有没有办法在基于集合的SQL中执行此操作?我知道如何使用C#中的循环或SQL中的游标,但我试图使它在不支持游标的报告工具中工作.

sql reporting survey

5
推荐指数
1
解决办法
1178
查看次数

R的调查包中的BRR权重如何使用?

如果您的数据集已经包含BRR权重,有人知道如何在Lumley的调查包中使用BRR权重来估计方差吗?

我正在使用PISA数据,并且它们的数据集中已经包含80个BRR复制。我怎样才能让as.svrepdesign使用它们,而不是尝试自己创建它们?我尝试了以下操作,并得到了随后的错误:

dstrat <- svydesign(id=~uniqueID,strata=~strataVar, weights=~studentWeight, 
                data=data, nest=TRUE)
dstrat <- as.svrepdesign(dstrat, type="BRR")

Error in brrweights(design$strata[, 1], design$cluster[, 1], ..., 
    fay.rho = fay.rho,  : Can't split with odd numbers of PSUs in a stratum
Run Code Online (Sandbox Code Playgroud)

任何帮助将不胜感激,谢谢。

r survey replicate

5
推荐指数
1
解决办法
1804
查看次数

用于生成雷达图的PHP解决方案

我的客户目前使用ASP.net应用程序,允许他根据30个问题进行用户调查并生成Excel报告.该过程耗时耗力,因为它包含5-6个步骤.

他想要一个可以生成报告PHP解决方案,并且可以以PDF格式发送.

trciky部分是五角大楼图表/雷达图表 ..

Excel我猜有一组函数来生成这些图表,但我该如何使用PHP?

检查下面的URL ..

http://i.stack.imgur.com/Rpyiq.png

快速帮助高度赞赏!!!

php pdf survey graph radar-chart

5
推荐指数
1
解决办法
6736
查看次数

svyglm和加权glm之间的区别

我想知道使用svyglm或加权之间的区别glm.

例如:

M1 = glm(formula = yy ~ age + gender + country , 
         family = binomial(link = "probit"), 
         data = P2013, 
         subset = (P2013$E27>=14 & P2013$E27<=17), 
         weights = P2013$PESOANO)
Run Code Online (Sandbox Code Playgroud)

或将样本设计定义为:

diseño = svydesign(id =~ NUMERO, 
                   strata =~ ESTRATOGEO, 
                   data = p2013, 
                   weights = P2013$PESOANO)

diseño_per_1417 = subset(diseño, (P2013$E27>=14 & P2013$E27<=17))
Run Code Online (Sandbox Code Playgroud)

然后使用svyglm:

M2 = svyglm(formula = yy ~ age + gender + country, 
            family = quasibinomial(link = "probit"),
            data = P2013, 
            subset = (stratum=!0), …
Run Code Online (Sandbox Code Playgroud)

r survey glm

5
推荐指数
1
解决办法
3341
查看次数

如何报告svyglm对象的适合度?

关于R中的调查包的问题.我知道这是非常基本但我什么也没找到.所以:

library(survey)
data(api)
dclus2 <- svydesign(id=~dnum, weights=~pw, data=apiclus1, fpc=~fpc)
summary(svyglm(api00 ~ ell + meals + mobility, design = dclus2))
Call:
svyglm(formula = api00 ~ ell + meals + mobility, design = dclus2)

Survey design:
svydesign(id = ~dnum, weights = ~pw, data = apiclus1, fpc = ~fpc)

Coefficients:
            Estimate Std. Error t value Pr(>|t|)    
(Intercept) 819.2791    21.3900  38.302 4.65e-13 ***
ell          -0.5167     0.3240  -1.595    0.139    
meals        -3.1232     0.2781 -11.231 2.29e-07 ***
mobility     -0.1689     0.4449  -0.380    0.711    
---
Signif. codes:  0 ‘***’ …
Run Code Online (Sandbox Code Playgroud)

r survey

5
推荐指数
1
解决办法
1316
查看次数

使用调查权重时,如何为logit模型生成边际效应?

我通常使用mfx包和logitmfx函数生成logit模型边际效应.然而,我目前使用的调查具有权重(由于某些人群中的过采样,其对样本中DV的比例具有很大影响)并且logitmfx似乎没有任何方式来包括权重.

我用svyglm为模型拟合如下:

library(survey)

survey.design <- svydesign(ids = combined.survey$id,
                                        weights = combined.survey$weight,
                                            data = combined.survey)

vote.pred.1 <- svyglm(formula = turnout ~ gender + age.group + 
                                    education + income, 
                                 design = survey.design)
summary(vote.pred.1)
Run Code Online (Sandbox Code Playgroud)

如何从这些结果中产生边际效应?

r survey weighting glm marginal-effects

5
推荐指数
1
解决办法
1658
查看次数

使用R中的复杂调查设计提高查询速度

我有一个大型数据集(超过2000万个障碍物),我用survey包分析它,我花了很多时间来运行简单的查询.我试图找到一种方法来加快我的代码,但我想知道是否有更好的方法来提高效率.

在我的基准测试中,我使用svyby/来比较三个命令的速度svytotal:

  1. 简单命令svyby/svytotal
  2. foreach dopar使用7个内核进行并行计算
  3. 选项2的编译版本

Spoiler:选项3的速度是第一个选项的两倍多但是它不适合大型数据集,因为它依赖于并行计算,并且在处理大型数据集时会快速达到内存限制.尽管我有16GB的RAM,但我也遇到了这个问题.这种内存限制有一些解决方案,但它们都不适用于调查设计对象.

有关如何使其更快而不因内存限制而崩溃的任何想法?

我的代码有一个可重复的例子:

# Load Packages
library(survey)
library(data.table)
library(compiler)
library(foreach) 
library(doParallel)
options(digits=3)

# Load Data
data(api)

# Convert data to data.table format (mostly to increase speed of the process)
apiclus1 <- as.data.table(apiclus1)

# Multiplicate data observations by 1000 
apiclus1 <- apiclus1[rep(seq_len(nrow(apiclus1)), 1000), ]

# create a count variable
apiclus1[, Vcount := 1]

# create survey design
dclus1 <- svydesign(id=~dnum, …
Run Code Online (Sandbox Code Playgroud)

memory performance r survey

5
推荐指数
1
解决办法
601
查看次数

R 中没有 FPC 的调查加权回归

我使用 R 中的 svydesign 包来运行调查加权 logit 回归,如下所示:

sdobj <- svydesign(id = ~0, weights = ~chweight, strata = ~strata, data = svdat)

model1 <- svyglm(formula=formula1,design=sdobj,family = quasibinomial)
Run Code Online (Sandbox Code Playgroud)

但是,该文档对未指定有限总体修正 (FPC) 的回归提出了警告:

    If fpc is not specified then sampling is assumed to be
with replacement at the top level and only the first stage of
 cluster is used in computing variances.
Run Code Online (Sandbox Code Playgroud)

不幸的是,我没有足够的信息来指定每个级别的人口(我对其中的抽样很少)。任何关于如何在没有 FPC 信息的情况下指定调查权重的信息都会非常有帮助。

regression r survey sampling

4
推荐指数
1
解决办法
569
查看次数

是否可以让 R 调查包的`svyby` 函数 multicore= 参数在 Windows 上工作?

能够在 Windows 上多线程会很棒,但也许这个问题比我想象的要难.. :(

里面survey:::svyby.default有一个块,lapply或者mclapply取决于multicore=TRUE你的操作系统。lapply无论如何,Windows 用户都会被迫进入循环,我想知道是否有任何方法可以mclapply代替……加快计算速度。

我不太了解并行处理的内部结构,但我做了一些实验,看看是否有任何 Windows 可接受的替代方案可行。首先我尝试覆盖 mclapply

mclapply <- 
    function( X , FUN , ... ){ 
        clusterApply( 
            x = X , 
            fun = FUN , 
            cl = makeCluster( detectCores() ) , ... ) 
    }
Run Code Online (Sandbox Code Playgroud)

接下来我用来fixInNamespace( svyby.default , "survey" )删除该行 if (multicore) parallel:::closeAll()

但这只是让我达到了

> svyby(~api99, ~stype, dclus1, svymean , multicore=TRUE )
Error in checkForRemoteErrors(val) :
  3 nodes produced errors; first error: object 'svymean' …
Run Code Online (Sandbox Code Playgroud)

parallel-processing fork r survey

4
推荐指数
1
解决办法
415
查看次数

KM 估计的差异:svykm 与 survfit 带权重

我正在病例对照研究中用权重来估计生存率。因此,所有案例的权重都等于 1。在绘制估计曲线并将其与未加权估计进行比较时,我注意到案例的 KM 曲线不重叠。

这是“survival”包中的数据代码。

library(dplyr)
library(tidyverse)
library(survival)
library(broom)
library(WeightIt)
library(survey)


a <- survival::ovarian

#Calculation of weghts:

weights <- WeightIt::weightit(rx ~ age + ecog.ps + resid.ds, int = T, estimand = "ATT", data = a, method = "glm" , stabilize = F, missing = "saem") 
a$weights <- weights$weights
a$ps <- weights$ps

design <- svydesign(ids = ~ 1, data = a, weights = ~weights)

KM_PFS <- survfit(Surv(futime, fustat > 0)~rx, a) # KM naive 
KM_PFS_w_TT <- survfit(Surv(futime, fustat > 0)~rx, a, …
Run Code Online (Sandbox Code Playgroud)

r survey survival

4
推荐指数
1
解决办法
62
查看次数