Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/extjs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 从包含不同长度元素的列表创建矩阵_R - Fatal编程技术网

R 从包含不同长度元素的列表创建矩阵

R 从包含不同长度元素的列表创建矩阵,r,R,我是R的新手。我正在使用mirt软件包进行多层面数据分析 我正在对以下样本数据进行校准。前5项v1至V5分为3类,后5项v21至v25分为4类 library(mirt) r_data V1 V2 V3 V4 V5 V21 V22 V23 V24 V25 1 1 1 1 0 0 1 2 3 2 1 2 2 1 0 0 0 3 2 1 1 0 3 1 1 1 1 1 1 0 1 1 1 4 1

我是R的新手。我正在使用mirt软件包进行多层面数据分析

我正在对以下样本数据进行校准。前5项v1至V5分为3类,后5项v21至v25分为4类

library(mirt)
r_data
   V1 V2 V3 V4 V5 V21 V22 V23 V24 V25
1   1  1  1  0  0   1   2   3   2   1
2   2  1  0  0  0   3   2   1   1   0
3   1  1  1  1  1   1   0   1   1   1
4   1  1  0  0  1   1   2   1   1   1
5   1  0  1  2  0   2   2   1   3   1
6   1  0  2  2  1   2   2   2   3   0
7   0  0  0  1  0   1   3   2   0   3
8   2  0  0  1  2   2   1   1   0   2
9   1  2  1  2  0   2   0   0   1   1
10  1  0  1  0  2   0   1   3   1   3
11  1  1  2  1  2   1   0   1   2   0
12  1  1  1  1  0   2   0   1   1   2
13  1  2  1  0  1   1   1   3   1   1
14  0  2  0  1  2   2   2   2   0   1
15  0  1  0  1  2   2   1   1   3   1
16  0  0  0  1  1   0   2   1   3   2
17  1  1  0  1  1   0   3   3   1   0
18  0  1  1  1  0   1   1   1   3   2
19  0  0  1  2  0   1   1   2   2   2
20  1  1  2  0  0   1   2   0   1   3
我申请了

pars.1=mirt(r_data, 2, 'gpcm')
    Iteration: 380, Log-Lik: -214.027, Max-Change: 0.00009
    coef(pars.1)
得到

$V1
       a1     a2 ak0 ak1 ak2 d0    d1     d2
par -0.95 -1.049   0   1   2  0 1.101 -1.639

$V2
       a1     a2 ak0 ak1 ak2 d0    d1     d2
par -0.44 -0.576   0   1   2  0 0.493 -1.014

$V3
        a1    a2 ak0 ak1 ak2 d0    d1     d2
par -0.001 0.376   0   1   2  0 0.152 -1.047

$V4
        a1    a2 ak0 ak1 ak2 d0    d1     d2
par -0.834 2.405   0   1   2  0 1.652 -0.946

$V5
       a1     a2 ak0 ak1 ak2 d0     d1    d2
par 0.188 -0.225   0   1   2  0 -0.381 -0.62

$V21
        a1    a2 ak0 ak1 ak2 ak3 d0    d1    d2     d3
par -7.165 0.044   0   1   2   3  0 7.688 5.842 -6.525

$V22
      a1     a2 ak0 ak1 ak2 ak3 d0    d1    d2     d3
par 0.26 -0.133   0   1   2   3  0 0.478 0.759 -0.716

$V23
       a1     a2 ak0 ak1 ak2 ak3 d0   d1    d2    d3
par 0.639 -0.302   0   1   2   3  0 1.99 1.077 0.691

$V24
       a1    a2 ak0 ak1 ak2 ak3 d0    d1    d2    d3
par 0.122 0.828   0   1   2   3  0 1.573 0.471 0.505

$V25
       a1 a2 ak0 ak1 ak2 ak3 d0    d1    d2     d3
par 0.459  0   0   1   2   3  0 0.847 0.349 -0.369

$GroupPars
    MEAN_1 MEAN_2 COV_11 COV_21 COV_22
par      0      0      1      0      1
这个列表是coefpars.1我需要转换成矩阵,其中的列名是参数a1、a2、ak0、ak1、ak2、ak3、d0、d1、d2、d3

我该怎么做

p、 美国

   t(sapply(coef(pars.1)[1:ncol(r_data)], '[', 1:max(sapply(coef(pars.1)[1:ncol(r_data)], length))))
上述代码不起作用,因为参数值正在混合


提前谢谢。

@Henrik,对不起,我弄错了。我选择复制品时太快了。它应该是一个包含诸如data.table::rbindlist、dplyr::bind_行或plyr::rbind.fill.matrix.Henrik的帖子的副本,“dplyr::bind_行”很有用。谢谢注意,在coef中还有一个simplify=TRUE逻辑标志,用于在内部执行您想要的操作。