Пользовательская функция очереди в R - PullRequest
0 голосов
/ 16 апреля 2020

Я пытаюсь сделать пользовательскую функцию очереди в R. Основой c очереди является одна очередь с несколькими "серверами". Я написал код ниже для одной очереди и одной очереди, но мне трудно написать функцию для одной очереди с несколькими серверами.

Функция одной очереди Один сервер:

queueOne <- function(data) {
len <- length(data$serviceTime)
#vector for departure of customer
depart <- c()
#vector for start of customer
startService <- c()
#timer of system
timer <- 0

for (i in 1:len) {
    #getting start of customer which is max between arrival time of customer or time of system
    start <- max(timer, data$time[i])
    #updating start of customer vector
    startService <- c(startService, start)
    #getting departure of customer time
    end <- round(sum(start, data$serviceTime[i]),2)
    #updating departure vector
    depart <- c(depart, end)
    #updating the time of the system
    timer <- end

    print(paste("queue time:",data$time[i],"start time:",start,"Service time:",data$serviceTime[i],"End Time:",timer))
  }
#creating a dataframe to return
departDF <- data.frame(depart)
startDF <- data.frame(startService)

queueData <- data %>%
bind_cols(startDF) %>%
bind_cols(departDF)

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