【问题标题】:Trying to write a function generating M normally distributed samples of length N尝试编写一个函数,生成 M 个长度为 N 的正态分布样本
【发布时间】:2021-10-02 11:09:38
【问题描述】:

我正在尝试编写一个函数 (rangNM),生成 M 个长度为 N 的正态分布样本,由于某种原因,这会导致第 4 行出现语法错误。有谁知道可能是什么原因造成的? 提前感谢您的帮助。

def rangNM(N, M):
    iseed == 0
    sample = []
    for iseed < M:
       np.random.seed(iseed)
       sample.append(np.random.normal(scale=1, loc=0, size=N))
       iseed += 1
    return(sample)

rangNM(10, 5)

【问题讨论】:

  • 您是不是要使用while 而不是forwhile iseed &lt; M:
  • 欢迎来到 SO。为什么在整个代码语法中都有单引号?

标签: python random normal-distribution


【解决方案1】:

您应该使用for 循环或while 循环:

# using for loop
def rangNM(N, M):
    sample = []
    for iseed in range(M):
       np.random.seed(iseed)
       sample.append(np.random.normal(scale=1, loc=0, size=N))
    return(sample)

# using while loop
def rangNM(N, M):
    iseed = 0
    sample = []
    while iseed < M:
       np.random.seed(iseed)
       sample.append(np.random.normal(scale=1, loc=0, size=N))
       iseed += 1
    return(sample)

【讨论】:

    猜你喜欢
    • 2022-01-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-24
    • 2016-07-12
    相关资源
    最近更新 更多