参考示例数据here,R代码
library(stats)
x <- read.csv("example_dat.csv")
Sx <- cov(x)
D2 <- mahalanobis(x, colMeans(x), Sx)产生与使用代码从SPSS获得的马氏距离相匹配的马氏距离
DATASET ACTIVATE DataSet2.
COMPUTE RandomNumbers=RV.NORMAL(0,1).
EXECUTE.
REGRESSION
/MISSING LISTWISE
/STATISTICS COEFF OUTS R ANOVA
/CRITERIA=PIN(.05) POUT(.10)
/NOORIGIN
/DEPENDENT RandomNumbers
/METHOD=ENTER Q1 Q2 Q3 Q4 Q5 Q6 Q7 Q8 Q9 Q10 Q11 Q12 Q13 Q14 Q15 Q16 Q17 Q18 Q19 Q20 Q21 Q22 Q23
Q24 Q25 Q26 Q27 Q28 Q29 Q30
/SAVE MAHAL.在SPSS AMOS中,马氏距离相似,但略有不同。这种差异不能归因于舍入误差。例如,在SPSS AMOS中,观察值9的d平方为51.751,而在常规SPSS和R中为51.480。
尽管普通的SPSS和SPSS AMOS属于同一家公司,但事实并非如此。在SPSS AMOS文档中似乎没有任何东西表明为什么它们应该是不同的。
发布于 2020-05-21 05:23:26
SPSS回归在计算协方差矩阵值时使用分母N-1,而Amos使用N。这可能是您看到小差异的原因。
IBM将Amos作为SPSS产品分发,但该程序由Amos开发公司拥有和开发。
https://stackoverflow.com/questions/61635184
复制相似问题