'int' 和 'list' 的实例之间不支持布尔值 .. 尽管有一个干净的数组?

我有一个大小为 10000 的数组,其中包含使用以下代码生成的 1-200 之间的随机整数:

x = np.random.randint(1,201, size=10000)

接下来,我从这个数组中随机抽取 100 个样本,并找到它的平均值并将其放入一个名为 meen 的数组中:

meen = []
for z in range(0, 50000):    
    randomSample=random.sample(list(x), 100 )
    meanOfSample=np.mean(randomSample)  
    meen.append(meanOfSample)

我假设过去的两个代码工作正常,因为当我 print(meen) 我得到一个数组:

[102.89, 106.14, 104.73, 97.78, 101.94, 98.94, 97.43, 98.92, 101.84, 99.64......]五万长。

现在,问题是当我试图找到一个范围内的值的数量时。例如,如果我说我想查找 meen 中介于 95 和 100 之间的数字数量,我尝试了以下代码:

((95 <= meen) & (meen <= 100)).sum()

但我收到错误消息:“TypeError:'int' 和 'list' 的实例之间不支持 '<='”

我在这个网站上看到过与此错误有关的各种类似问题,但它们都涉及阵列错误。我认为我的阵列很好..?它只有数字,没有字符串,或者其他任何会导致问题的东西。


烙印99
浏览 81回答 1
1回答

慕虎7371278

meen是一个列表,而不是一个 numpy 数组。尝试在循环后添加:meen&nbsp;=&nbsp;np.asarray(meen)
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python