使用 EFA 创建因子,尝试使用控制变量进行回归 (lm) - 错误消息 "variable lengths differ"
Created factors with EFA, tried regressing (lm) with control variables - Error message "variable lengths differ"
EFA 初学者在这里!
我 运行 对具有 50 个变量的数据集(“df1”= 1320 个观察值)进行探索性因子分析 (EFA),方法是创建一个仅包含没有缺失值的相关变量的子集(“df2” = 301 次观察)。
我能够过滤 4 个因素(总共 19 个变量)。
现在我想采用这 4 个因素并用控制变量对它们进行回归。
例如:因素 1 (df2$fa1) 描述工作满意度。
我想控制年龄和婚姻状况。
Fa1Regression <- lm(df2$fa1 ~ df1$age + df1$marital)
但是我收到错误消息:
Error in model.frame.default(formula = df2$fa1 ~ df1$age + :
variable lengths differ (found for 'df1$age')
我怎样才能运行 正确回归?我可以从 df1 中删除 df2 中不存在的观察结果,以便变量长度相同吗?
它在使用 lm
对其他系数上的潜在因子进行回归时遇到问题。相反,使用 lavaan
包,您的模型语句将是 myModel<- 'df2$fa1~ x1+x2+x3'
EFA 初学者在这里!
我 运行 对具有 50 个变量的数据集(“df1”= 1320 个观察值)进行探索性因子分析 (EFA),方法是创建一个仅包含没有缺失值的相关变量的子集(“df2” = 301 次观察)。 我能够过滤 4 个因素(总共 19 个变量)。
现在我想采用这 4 个因素并用控制变量对它们进行回归。
例如:因素 1 (df2$fa1) 描述工作满意度。 我想控制年龄和婚姻状况。
Fa1Regression <- lm(df2$fa1 ~ df1$age + df1$marital)
但是我收到错误消息:
Error in model.frame.default(formula = df2$fa1 ~ df1$age + :
variable lengths differ (found for 'df1$age')
我怎样才能运行 正确回归?我可以从 df1 中删除 df2 中不存在的观察结果,以便变量长度相同吗?
它在使用 lm
对其他系数上的潜在因子进行回归时遇到问题。相反,使用 lavaan
包,您的模型语句将是 myModel<- 'df2$fa1~ x1+x2+x3'