要在 R 中输入 SEM 的相关矩阵,我需要以三种方式重新格式化矩阵:
- 删除行名
- 删除列名
- 删除矩阵右上角“一半”中对角线 1 值上方的所有单元格
换句话说,矩阵...
EDU CLASS INCOME AUTONOMY COL5 ALT5 IIDM
EDU 1.00000000 -0.14591135 0.246463592 0.21938208 -0.09727587 -0.043862753 0.062896738
CLASS -0.14591135 1.00000000 -0.048511437 -0.01469029 0.01663138 0.036140650 -0.010155653
INCOME 0.24646359 -0.04851144 1.000000000 0.13778603 -0.06969773 -0.051922861 0.009402784
AUTONOMY 0.21938208 -0.01469029 0.137786034 1.00000000 -0.25223015 0.023174980 0.073941520
COL5 -0.09727587 0.01663138 -0.069697725 -0.25223015 1.00000000 -0.300825028 -0.062978212
ALT5 -0.04386275 0.03614065 -0.051922861 0.02317498 -0.30082503 1.000000000 0.001553936
IIDM 0.06289674 -0.01015565 0.009402784 0.07394152 -0.06297821 0.001553936 1.000000000
...需要成为文本...
1.00000000
-0.14591135 1.00000000
0.24646359 -0.04851144 1.000000000
0.21938208 -0.01469029 0.137786034 1.00000000
-0.09727587 0.01663138 -0.069697725 -0.25223015 1.00000000
-0.04386275 0.03614065 -0.051922861 0.02317498 -0.30082503 1.000000000
0.06289674 -0.01015565 0.009402784 0.07394152 -0.06297821 0.001553936 1.000000000
... 逐行输入到 readMoments 函数中,如下所示。
R.bd <- readMoments(names=c('EDU',
'CLASS',
'INCOME',
'AUTONOMY',
'COL5',
'ALT5',
'IIDM'))
1.00000000
-0.14591135 1.00000000
0.24646359 -0.04851144 1.000000000
0.21938208 -0.01469029 0.137786034 1.00000000
-0.09727587 0.01663138 -0.069697725 -0.25223015 1.00000000
-0.04386275 0.03614065 -0.051922861 0.02317498 -0.30082503 1.000000000
0.06289674 -0.01015565 0.009402784 0.07394152 -0.06297821 0.001553936 1.000000000
我们目前通过复制、删除和粘贴手动执行此操作。任何有关如何编写函数来执行此操作的建议将不胜感激。
谢谢,乔纳森