对于百分比数据列表,我需要检查最后一个值 (
90.2
) 是否比其余数据更高并且有些“异常”。显然是按照这个顺序。
delivery_pct = [59.45, 55.2, 54.16, 66.57, 68.62, 64.19, 60.57, 44.12, 71.52, 90.2]
但是对于下面的序列,最后一个值并非如此:
delivery_pct = [ 63.6, 62.64, 60.36, 72.8, 70.86, 40.51, 52.06, 61.47, 51.55, 74.03 ]
如何检查最后一个值是否异常高于其他值?
关于数据: 数据点的范围为0-100%。但由于这是过去 10 天股票交付的百分比,因此它通常会根据股票的性质(交易频繁与交易不频繁)而受到范围限制,除非该股票发生了一些好事并且该股票的交付量更高当天股票期待好消息。
您可以通过切片来分离这些值,但您需要知道通过什么方法某些东西是“异常”的
例如,将其与简单平均值进行比较
def test(data):
# opportunity to verify length
earlier = data[:-1]
last = data[-1]
avg = sum(earlier) / len(earlier) # exchange as needed
return last > avg
注意我怀疑这个简单的比较是否足够,因为它对于您的示例失败了
statistics
库有多种有用的方法
NIST“div898”教科书也是学习该领域的绝佳资源https://www.itl.nist.gov/div898/handbook/
或者,如果这是一个家庭作业问题,您可能正在学习和/或明确给出了一种处理数据的方法