【统计模拟及其R实现】工作时间模拟 06-09上机习题答案 纸上作业答案

题目

R程序

# 06-09 纸上作业题目
# T14

# 定义变量:k lambda alpha
getTime = function(lambda) {
  time = rexp(1, rate=1/lambda)
  time
}

getProb = function(alpha) {
  u = runif(1)
  if (u < alpha) prob = 0 # 继续工作
  else prob = 1 # 停止工作
  prob
}

getCox = function(k, lambda, alpha) {
  T = 0 # 初始化
  for (i in 1:k) {
    T[i] = getTime(lambda)
    if (getProb(alpha[i]) == 1) {
      print(i) # 查看哪个阶段停止工作了,此句可删
      break
    }
  }
  sum(T)
}

getCox(k=10, lambda=10, alpha=runif(10))  # 模拟alpha的值

版权声明:本文为onion23原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。