在Python中绘制高于阈值的值的出现

2024-03-29 08:01:35 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个非均匀数组“a”。在

A = [1,3,2,4,..., 12002, 13242, ...]

我想研究数组“A”中有多少元素的值高于特定阈值。在

例如,有1000个元素的值大于1200,所以我要绘制值大于1200的元素的数量。此外,还有1500个元素的值大于110(这包括1000个元素,其值大于1200)。

这是一个相当大的数据集,所以我不想省略任何类型的信息。在

然后,我想画出一个值a上的元素数'N'与Log(a),即

^{pr2}$

我想把这些数据收集起来,但没有成功。 我在python中没有做过太多的统计,所以我想知道是否有一种好的方法来绘制这些数据?在

提前谢谢。在


Tags: 数据方法log信息元素类型数量绘制
1条回答
网友
1楼 · 发布于 2024-03-29 08:01:35

让我再看看我们现在的情况:

A = [1, 3, 2, 4, ..., 12002, 13242, ...]

# This is a List of 12,000 zeros.
num_above = [0]*(12000)

# Notice how we can re-write this for-loop!
for i in B:
    num_above = [val+1 if key <= i else val for key,val in enumerate(num_above)]

我相信这就是你想要的。最后的列表num_above将使num_above[5]等于A中大于5的元素数。在

说明:

最后一行是所有魔法发生的地方。它遍历A(i)中的元素,并向索引小于i的所有元素添加一个。在

enumerate(A)语句是一个enumerator,它生成一个元组的迭代器,该元组包含A:(0,1) (1,3) -> (2,2) -> (3,4) -> ...中所有元素的键和值

另外,num_above = [x for y in List]语句被称为List Comprehension,在Python中是一个非常强大的工具。在

改进:我看到你已经修改了你的问题,包括这些变化,但我认为它们很重要。在

  1. 我删除了numpy依赖项。在可能的情况下,删除依赖项可以降低项目的复杂性,尤其是大型项目。在
  2. 我还删除了原始列表A。基本上可以用这个来代替。在

相关问题 更多 >