首页 > 解决方案 > 如何在数组中返回不在上下阈值之间的值?

问题描述

我已经想出了如何返回介于阈值之间的数组的值,但我似乎无法弄清楚如何找到落在阈值之外的值。据我了解..我的代码是有道理的..

我已经定义了变量,并说如果我的数组中的任何值小于下限值且高于上限值..返回具有这些值的数组。

 import numpy as np
 def not_in_between(arg1,arg2,arg3): ## defined my array, low 
                                 ##  value, and upper value
     array1 = np.array(arg1)
     lower = np.array(arg2)
     upper = np.array(arg3)
     not_between = array1[((array1 < lower) & (array1 > upper))]
     return not_between

所以如果你有一个数组是 [1,2,3,4] 并且你的下限值是 1 而上限值是 3 .. 我希望输出是 4。

标签: pythonarrays

解决方案


def not_in_between(arg1,lower,upper): ## defined my array, low
                                 ##  value, and upper value
    not_between = [x for x in arg1 if x not in range(lower,upper+1)]
    return not_between
print(not_in_between([1,2,3,4],1,3))

试试这个,希望它能按预期工作。


推荐阅读