【问题标题】:'variable lengths differ' error when using "subset" in "lm"在“lm”中使用“子集”时出现“可变长度不同”错误
【发布时间】:2017-05-20 20:22:54
【问题描述】:

使用 R 的第一天,如果这个问题很明显,很抱歉。

我正在尝试使用因子变量和数值变量进行回归。

  • Diet 是一个从 1 到 10 的因子变量。我生成了一个新的因子变量Diet.Factor
  • Source 是另一个因子变量,可以是 A 或 B。
  • 我想在 Diet.Factor 的基础上对 Weight 运行线性回归,当 Source==A 时。

现在,

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')

【问题讨论】:

  • Edit 你的问题包括str(labdata)的输出
  • Diet.Factor是怎么定义的,是labdata的列​​还是新变量?

标签: r regression subset linear-regression lm


【解决方案1】:

我猜你的数据框labdata 中没有Diet.Factor 列,但在全局环境中有它,因此它不受子集的影响。这是唯一可能的原因。

【讨论】:

  • 新,因此无法接受您的问题或明显支持,但谢谢。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-10-05
  • 1970-01-01
  • 1970-01-01
  • 2014-05-03
  • 1970-01-01
相关资源
最近更新 更多