Ошибка в if (pvals [minp] <= pent) {: аргумент имеет нулевую длину - PullRequest
0 голосов
/ 19 января 2019

Я очень плохо знаком с R и пытаюсь написать общие функции вместо специфических для определенного файла.Я пытаюсь сделать регрессию землепользования (используя пакет olsrr).Мой код выглядит так:

library("olsrr")
library("car")      #check VIF
library("heplots")
dataset <- read.csv("data.csv")
View(dataset)
dim(dataset)    #991 observations with 79 variables
summary(dataset)
summary(dataset[,c("PM25","NOx","PM10","O3")]) # The outcome variables are not nuerice format


###################
# Data Management #
###################

# Convert air pollution data (PM2.5) into numeric format #
dataset$PM25 <- as.numeric(as.character(dataset$PM25))
dataset$NOx <- as.numeric(as.character(dataset$NOx))
dataset$PM10 <- as.numeric(as.character(dataset$PM10))
dataset$O3 <- as.numeric(as.character(dataset$O3))

summary(dataset[,c("PM25","NOx","PM10","O3")]) # issue solved!!

#############
# Remove NA #
#############

dataset <- na.omit(dataset)
dim(dataset)    #957 observations remained



###############################
# Stepwise Regression Model     #
# (olsrr Package)           #
###############################

#### Set the varaibles will be used for LUR ####
Y <- colnames(dataset)[8]           # Outcome variable [PM2.5]
X <- colnames(dataset)[9:ncol(dataset)] # predictors
allX <- paste(X, collapse = "+")        # put all predictors together
as.formula(paste(Y, "~", allX))     # Check formula for linear model

temp <- lm(as.formula(paste(Y, "~", allX)), singular.ok=TRUE, data=dataset)
summary(temp)



#### Stepwise regression ####
stepResult <- ols_step_both_p(model=temp, pent=0.1, prem=0.3, details=FALSE)

, но когда я запускаю функцию 'ols_step_both_p'.R дай мне сообщение:

Error in if (pvals[minp] <= pent) { : argument is of length zero

так что мне делать?

1 Ответ

0 голосов
/ 26 января 2019

Это похоже на ошибку в пакете olsrr. Пожалуйста, поделитесь воспроизводимым примером, используя presx .

PS. Я автор olsrr. Вы можете напрямую связаться со мной, используя почтовый идентификатор, указанный на странице CRAN .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...