Как создать многостолбцовую таблицу данных из экспоненциального распределения - PullRequest
0 голосов
/ 21 марта 2020

Мне нужно создать таблицу из нескольких столбцов времени прибытия клиента, времени ожидания клиента, времени обслуживания и времени ухода клиента. Время обслуживания - это время, необходимое кассиру, чтобы помочь клиенту. Время прибытия и время обслуживания предоставляются функцией, которая использует команду rexp.

Таблица должна выглядеть так: таблица

Мой код выглядит так:

singleTime = function(Rate)
{
  data = rexp(1,Rate)
  return(data)
}

waitTimes = function(m,arrivalRate,serviceRate)
{
  arrivalTimes = c(1:m)
  waitTimes = c(1:m)
  serviceTimes = c(1:m)
  leaveTimes = c(1:m)
  previousLeaveTime = 0
  for(i in (1:m))
  {
    arrivalTimes[i] = singleTime(arrivalRate)
    if(i == 0)
    {
      waitTimes[i] = 0
    }
    else if((previousLeaveTime - arrivalTimes[i])<= 0)
    {
      waitTimes[i] = 0
    }
    else
    {
      waitTimes[i] = leaveTimes[i-1] - arrivalTimes[i]
    }
    serviceTimes[i] = singleTime(serviceRate)
    leaveTimes[i] = waitTimes[i] + serviceTimes[i] + arrivalTimes[i]
    previousLeaveTime = leaveTimes[i]
    i = i + 1
  }
  waitTimesTable = table(arrivalTimes,waitTimes,serviceTimes,leaveTimes)
  View(waitTimesTable)
}

1 Ответ

0 голосов
/ 21 марта 2020

Не могли бы вы заменить View(waitTimesTable) на return(data.frame(arrivalTimes, waitTimes, serviceTimes, leaveTimes)? Я не уверен, насколько вы обеспокоены внешним видом стола.

...