'x' 和 'y' 长度不同 绘图时出现错误

'x' and 'y' lengths differ ERROR when plotting

我刚开始使用 R。 我应该根据“Psgr_Vol”和“Lugg_Vol”的总和计算一个新变量“Vehic_vol”,并针对整个“CITY_MPG”绘制这个新变量数据集,但我最终得到 'x' 和 'y' 长度不同错误!有什么想法吗?

这是我所做的:

Vehic_vol<-(VehicleData$Psgr_Vol + VehicleData$Lugg_Vol)
 plot (VehicleData$Vehic_vol, VehicleData$CITY_MPG)
Error in xy.coords(x, y, xlabel, ylabel, log) : 
  'x' and 'y' lengths differ

根据您提供的代码,Vehic_vol 不是 VehicleData 的列。如果你输入

VehicleData$Vehic_vol

它returns

NULL

请注意 NULLVehicleData$CITY_MPG 的长度不同(使用 length() 来验证)。

试试这个

plot (Vehic_vol, VehicleData$CITY_MPG)

VehicleData$Vehic_vol <- (VehicleData$Psgr_Vol + VehicleData$Lugg_Vol)
plot (VehicleData$Vehic_vol, VehicleData$CITY_MPG)

例如,我的数据集,

mod.2 <- lm(CEC ~ clay + ExchNa + ExchCa,
             data = subs.soil.data)

当你像这样写一个 model 并想绘制这个 modela 图时, plot(mod.2$y, mod.2$fitted.values) 这是错误“xy.coords(x, y, xlabel, ylabel, log) 中的错误: 'x' 和 'y' 长度不同"

--先用length()

校验
length(mod.2$y)
[1] 0

如您所见,因变量 y 的长度为 0,即它不存在。

解决方案 mod.2 <- lm(CEC ~ 粘土 + ExchNa + ExchCa,数据 = subs.soil.data,<strong>y = TRUE,x = TRUE</strong>) mod.2我们在前面的公式中没有定义x和y,这就是错误的原因。

plot(mod.2$y, mod.2$fitted.values)
> length(mod.2$y)
[1] 146
> length(mod.2$fitted.values)
[1] 146
> 

这个问题现在已经消失了。