首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在for循环中多次重复脚本时出错

在for循环中多次重复脚本时出错
EN

Stack Overflow用户
提问于 2019-08-26 06:30:05
回答 1查看 41关注 0票数 0

我试图执行此代码500次,并将其保存为一个数组,x。

代码语言:javascript
复制
    u=rand();

    m=1;
    while(u>=cum_prob(m))%
        m=m+1;
    end

    x=(bin_edges(m-1)-bin_edges(m-2))/(cum_prob(m-1)-cum_prob(m-2))*(u-((((bin_edges(m-1)*cum_prob(m-2))-((bin_edges(m-2)*cum_prob(m-1))))/(bin_edges(m-1)-bin_edges(m-2)))));

当我运行它的时候。现在我需要这样做500次,并将结果存储在一个数组x中。我编写的代码如下所示,但是我得到的错误是“array索引必须是正整数或逻辑值”。在以x(A)=.开头的线上。

代码语言:javascript
复制
x=zeros(1,500);
for a=1:500
    u=rand();

    m=1;
    while(u>=cum_prob(m))%
        m=m+1;
    end

    x(a)=(bin_edges(m-1)-bin_edges(m-2))/(cum_prob(m-1)-cum_prob(m-2))*(u-((((bin_edges(m-1)*cum_prob(m-2))-((bin_edges(m-2)*cum_prob(m-1))))/(bin_edges(m-1)-bin_edges(m-2)))));

end

如果有人能给我指明正确的方向,那就太好了!谢谢你

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-08-26 06:46:31

u<cum_prob(m)m = 1。在x(a)行中有bin_edges(m-1)bin_edges(m-2)cum_prob(m-2)cum_prob(m-2)。我不知道bin_edges是什么,但我假设至少cum_prob是一个向量,因此m-2会导致一个错误。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57652790

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档