2017-05-20 19 views
1

第一天使用R,很抱歉如果这个问题很明显。在“lm”中使用“子集”时出现'可变长度不同'错误

我试图用因子变量和数值变量运行回归。

  • Diet是从1-10开始的因子变量。我制作了一个新的因子变量Diet.Factor
  • Source是另一个因素变量,可以是A或B
  • 我想运行一个线性回归用于Weight用于当Source==A基于Diet.Factor

现在,

lm(Weight~Diet.Factor,data=labdata) 

工作正常,但

lm(Weight~Diet.Factor,data=subset(labdata,Source=="A")) 

Error in model.frame.default(formula = Weight ~ Diet.Factor, 
    :variable lengths differ (found for 'Diet.Factor') 
+0

[编辑]你的问题包括'str(labdata)'的输出 –

+0

你是如何定义'Diet.Factor',它是一列'labdata'还是一个新变量? –

回答

0

我想你没有Diet.Factor列在您的数据帧labdata,但在全球环境中,它是这样不受子集化。这是唯一可能的原因。

+1

谢谢,我已经完成了它,它现在可以工作。 – Mikolaj

+0

新的,所以不能接受你的问题或明显upvote,但谢谢。 – Mikolaj

相关问题