【问题标题】:Access general confidence boundaries of cronbach's alpha in R psych访问 R psych 中 cronbach's alpha 的一般置信边界
【发布时间】:2021-08-29 15:39:40
【问题描述】:

我有一个使用 psych::alpha 的数据框。在输出中,一般 cronbach 的 alpha 值周围有一般的置信边界。我想访问这些,但是当我将输出保存为变量时它们不会出现在结果中。在documentation 中,它们被称为 itemboot.ci,但在 alpha 对象中不存在。在此处输入代码

library(psych)
set.seed(1)
foo <- data.frame(X = rnorm(25), Y = rnorm(25), Z = rnorm(25))
bar <- alpha(foo)

alpha(foo)bar 都给出这个输出:

Reliability analysis   
Call: alpha(x = foo)

  raw_alpha std.alpha G6(smc) average_r      S/N  ase mean   sd median_r
     0.023  -0.00091  0.0049    -3e-04 -0.00091 0.32 0.12 0.54    0.022

 lower alpha upper     95% confidence boundaries
-0.61 0.02 0.66 

 Reliability if an item is dropped:
  raw_alpha std.alpha G6(smc) average_r    S/N alpha se var.r  med.r
X     0.039     0.043   0.022     0.022  0.045     0.35    NA  0.022
Y     0.093     0.094   0.049     0.049  0.103     0.36    NA  0.049
Z    -0.148    -0.155  -0.072    -0.072 -0.134     0.44    NA -0.072

 Item statistics 
   n raw.r std.r r.cor  r.drop  mean   sd
X 25  0.58  0.56 -0.12  0.0027 0.169 0.95
Y 25  0.41  0.55 -0.36 -0.0296 0.032 0.71
Z 25  0.72  0.62  0.61  0.0543 0.165 1.11

在哪里

lower alpha upper     95% confidence boundaries
-0.61 0.02 0.66

是我想要访问并保存为变量的值。 bar$itemboot.ci 即使在 documentation 中提到它,也会给出 NULL 甚至循环 a 也不会显示置信边界:

for(i in 1:length(bar)){
    print(bar[i])
}

给予:

$total
  raw_alpha    std.alpha     G6(smc)    average_r           S/N      ase      mean       sd   median_r
 0.02297052 -0.000914273 0.004926574 -0.000304572 -0.0009134379 0.323334 0.1221019 0.544037 0.02180445

$alpha.drop
    raw_alpha   std.alpha     G6(smc)   average_r         S/N  alpha se var.r       med.r
X  0.03880703  0.04267832  0.02180445  0.02180445  0.04458096 0.3488970    NA  0.02180445
Y  0.09264777  0.09365915  0.04913033  0.04913033  0.10333767 0.3588215    NA  0.04913033
Z -0.14776806 -0.15482062 -0.07184849 -0.07184849 -0.13406464 0.4395377    NA -0.07184849

$item.stats
   n     raw.r     std.r      r.cor       r.drop       mean        sd
X 25 0.5843116 0.5644059 -0.1232943  0.002682803 0.16866521 0.9501080
Y 25 0.4056801 0.5486244 -0.3639981 -0.029593160 0.03223135 0.7062806
Z 25 0.7151930 0.6184929  0.6088273  0.054340331 0.16540907 1.1051952

$response.freq
NULL

$keys
X Y Z 
1 1 1 

$scores
 [1] -0.094825557 -0.194726192 -0.655087102 -0.004077450  0.726824345  0.839537022  0.005806616  0.027287230  0.363898646
[10] -0.605834183  1.166134789 -0.014562240  0.003061795 -0.362224119  0.381611153 -0.006888302 -0.691503524  1.035451483
[19]  0.510379244  0.692585766  0.228997248  0.145590611  0.484608087 -1.011931847  0.082433358

$nvar
[1] 3

$boot.ci
NULL

$boot
NULL

$Unidim
$Unidim$Unidim
[1] -0.0006057996


$var.r
[1] 0.004025575

$Fit
$Fit$Fit.off
[1] 0.9973251


$call
alpha(x = foo)

$title
NULL

【问题讨论】:

    标签: r continuous-integration alpha psych


    【解决方案1】:

    当您使用print 或将其发送到R 控制台打印对象时,可能会发生一些额外的处理。对象通常有自己的print,在这种情况下,您可以看到print.psych 方法(在幕后调用,而不是任何心理包对象上的print)正在对您的(子)类@ 对象执行以下操作987654325@:

      }, alpha = {
        cat("\nReliability analysis ", x$title, " \n")
        cat("Call: ")
        print(x$call)
        cat("\n ")
        print(x$total, digits = digits)
        if (!is.null(x$total$ase)) {
          cat("\n lower alpha upper     95% confidence boundaries\n")
          cat(round(c(x$total$raw_alpha - 1.96 * x$total$ase, 
            x$total$raw_alpha, x$total$raw_alpha + 1.96 * 
              x$total$ase), digits = digits), "\n")
        }
        if (!is.null(x$boot.ci)) {
          cat("\n lower median upper bootstrapped confidence intervals\n", 
            round(x$boot.ci, digits = digits))
        }
    

    如果你对bar 输出变量做同样的事情;你会得到这些值:

    library(psych)
    set.seed(1)
    
    foo <- data.frame(bar = rnorm(25), Y = rnorm(25), Z = rnorm(25))
    
    bar <- alpha(foo)
    
    
    cat(round(c(bar$total$raw_alpha - 1.96 * bar$total$ase, 
                bar$total$raw_alpha, bar$total$raw_alpha + 1.96 * 
                  bar$total$ase), digits = 2), "\n")
    #> -0.61 0.02 0.66
    

    因此,总而言之,这些值是通过“手动”计算置信区间获得的,系数估计值raw_alpha 加上或减去 95% CI (1.96) 的 z 分数乘以标准误差 (ase)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2010-12-02
      • 2020-10-27
      • 2021-08-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多