R:如何对具有NA值的表进行回归? [关闭]

问题描述 投票:0回答:1

当前,我的错误声明如下:

NAs introduced by coercionError in lm.fit(x, y, offset = offset, singular.ok = singular.ok, ...) : 
  NA/NaN/Inf in 'x'

这是我正在使用的代码:

model <- lm(merged$Country.or.region ~ ., data = merged, na.action = na.pass)

我还根据在线其他地方提供的一些建议尝试使用na.exclude和na.omit。我在lm括号内做错了吗?

r regression na lm
1个回答
1
投票

我猜您的列是Country.or.region,是一个字符,您需要将其转换为一个因子,并转换为二进制并使用逻辑回归:

data = iris
data$Species = as.character(data$Species)

lm(Species ~ .,data=data)
Error in lm.fit(x, y, offset = offset, singular.ok = singular.ok, ...) : 
  NA/NaN/Inf in 'y'
In addition: Warning message:
In storage.mode(v) <- "double" : NAs introduced by coercion

data$Species = ifelse(data$Species=="versicolor","Yes","No")
data$Species = factor(data$Species)
glm(Species ~ .,data=data,family=binomial)
© www.soinside.com 2019 - 2024. All rights reserved.