数字呈现不规律的波动形状,而且值变化也不一定是只朝一个方向,会有反复。请问如何能找出值排名前5的波峰和波谷的大小和位置。有计算相关的函数吗?
ringa_lee2017-04-17 17:56:21
heapq
モジュールを使用してみることができます。
検索する要素の数が比較的少ない場合、関数
nlargest()
とnsmallest()
は非常に適しています。 一意の最小値または最大値 (N=1) 要素を見つけたいだけの場合は、min()
関数とmax()
関数を使用する方が高速です。 同様に、N のサイズがコレクションのサイズに近い場合は、通常、最初にコレクションを並べ替えてから、スライス操作(sorted(items)[:N]
またはsorted(items)[-N:] )
を使用する方が高速です。 関数nlargest()
とnsmallest()
を活用するには、適切な状況で使用する必要があります (N がセットのサイズに近い場合は、ソート操作を使用する方がよいでしょう)。
最初にループしてすべての山と谷を見つけ、次に上位 5 つを見つけます