【发布时间】:2020-09-09 19:43:44
【问题描述】:
我正在尝试运行 R 应用程序,但收到以下 first 错误:
lm.fit 中的错误(x,y,offset = offset,singular.ok =singular.ok,...): 0(非NA)案例 调用:lm -> lm.fit
产生错误的代码是:
pppb = lm(Exchange.rate.change ~ Inflation.difference)
我是 R 新手,我真的很难找到错误,所以非常感谢任何帮助。这是一个最小的数据集:
Country Inflation.difference Exchange.rate.change Developed
Australia -1.235100000e+000 -3.187000000e+000 1.000000000e+000
Austria 1.550800000e+000 1.478100000e+000 1.000000000e+000
Belgium 1.037100000e+000 3.950000000e-002 1.000000000e+000
Canada 4.610000000e-002 -1.641600000e+000 1.000000000e+000
Chile -1.841260000e+001 -2.063290000e+001 0.000000000e+000
这是重现错误所需的最少可运行代码:
ppp = read.table("test.dat",sep="\t", header=TRUE, row.names=NULL)
attach(ppp)
Developed[Developed==1] = "Developed"
newppp = ppp[ppp$Country!="Brazil",]
attach(newppp)
developed = newppp[Developed==1,]
attach(developed)
pppb = lm(Exchange.rate.change ~ Inflation.difference)
这是我得到的第二个错误:
以下对象被 .GlobalEnv 屏蔽: 发达 以下对象被 ppp 屏蔽: 国家、发达国家、汇率变化、通货膨胀差异 以下对象被 .GlobalEnv 屏蔽: 发达 以下对象被 newppp 屏蔽: 国家、发达国家、汇率变化、通货膨胀差异 以下对象被 ppp 屏蔽: 国家、发达国家、汇率变化、通货膨胀差异
lm.fit(x, y, offset = offset,singular.ok =singular.ok, ...) 中的错误: 0(非NA)案例 调用: lm -> lm.fit 执行停止 `
【问题讨论】:
-
我认为错误消息表明您没有任何数据可以拟合模型(或全部为 NA)。你能用你使用的数据发布一个可重复的例子吗?
-
您的任何专栏都是 NA 吗?可以执行 dput(head(Exchange.rate.change,5)) 和 dput(head(Inflation.difference,5)) 并将输出粘贴到您的帖子中吗?
-
dput(head(Exchange.rate.change,5)) - c(-3.187, 1.4781, 0.0395, -1.6416, -20.6329)dput(head(Inflation.difference,5)) - c(-1.2351, 1.5508, 1.0371, 0.0461, -18.4126)所以他们似乎不是NA。 -
这是我正在使用的部分数据:
Country Inflation difference Exchange rate change Developed Australia -1.235100000e+000 -3.187000000e+000 1.000000000e+000 Austria 1.550800000e+000 1.478100000e+000 1.000000000e+000 Belgium 1.037100000e+000 3.950000000e-002 1.000000000e+000 -
为了使您的问题可重现并因此可回答,我们需要最少的、独立的代码和数据,以便我们能够在我们的机器上重现您的问题。请遵循这些简单的准则:stackoverflow.com/questions/5963269/…
标签: r linear-regression eval lm