从数字到NULL的自动转换

时间:2017-05-01 14:32:23

标签: r

我试图基于有限随机变量X enter image description here

生成随机数向量

使用probGen函数,我生成一个变量X,l1是第一行,l2是第二行。 此时if(sum1 >= U)我发现了这个错误Error in if (sum1 >= U) { : argument is of length zero

这是我的代码:

probGen=function(n)
{
  v=vector()
  k=sample(1:n,1)
  v=rep(0,k)
  for(i in 1:n)
  {
    aux=sample(1:k,1)
    v[aux]=v[aux]+1
  }
  vfinal=vector()
  klen=0
  for(i in 1:k)
  {
    if(v[i]!=0) klen=klen+1
  }
  for(i in 1:k)
  {
    if(v[i]!=0)
      vfinal=c(vfinal,rep(1/(klen*v[i]),v[i]))
  }
  vfinal=sample(vfinal)
  return (vfinal)
}

n=22
l1=c(1:n)
l2=probGen(n)
l1
l2

simVar=function(l1,l2)
{
  variante=vector()
  U=runif(1,0,1)
  for(i in 1:length(l1))
  {
    sum1=1-1
    for(j in 1:i-1)
    {
      if(i-1>=1)
      {
        sum1=sum1+l2[j]
      }
    }
    sum2=0.0
    for(j in 1:i)
    {
      sum2=sum2+l2[j]
    }

    if(sum1 >= U)
    {
      if(U<sum2)
      {
        variante=c(variante,l1[i])
      }
    }
  }


  return (variante)
}

varR=simVar(l1,l2)
varR

有什么想法吗? 谢谢!

1 个答案:

答案 0 :(得分:1)

for(j in 1:i-1)代码顶部附近的simVar评估为(1:i)-1,结果为零,产生NA sum1for(j in 1:(i-1)) 。请改用from flask import jsonify @app.route("/data") def get_data(): // all that stuff you did to create the dataset return jsonify(data) @app.route("/chart") def chart_page(): return render_template("some_template.html")