在python列表中查找最接近mean的元素

时间:2017-07-02 22:23:31

标签: python list pandas numpy mean

我有一些随机数列表(整数和浮点数)

var scrollArea = this.querySelector(".scroll-area");
scrollArea.addEventListener("wheel", function() {
    var scrollTop = this.scrollTop;
    var maxScroll = this.scrollHeight - this.offsetHeight;
    var deltaY = event.deltaY;
    if ( (scrollTop === maxScroll && deltaY > 0) || (scrollTop === 0 && deltaY < 0) ) {
        event.preventDefault();
    }
});

scrollArea.addEventListener("touchstart", function(event) {
    this.previousClientY = event.touches[0].clientY;
});

scrollArea.addEventListener("touchmove", function(event) {
    var scrollTop = this.scrollTop;
    var maxScroll = this.scrollHeight - this.offsetHeight;
    var currentClientY = event.touches[0].clientY;
    var deltaY = this.previousClientY - currentClientY;
    if ( (scrollTop === maxScroll && deltaY > 0) || (scrollTop === 0 && deltaY < 0) ) {
        event.preventDefault();
    }
    this.previousClientY = currentClientY;
});

我找到了列表的平均值/平均值:

In[]:  list1
Out[]: [8.6, 9, 15, 20, 1]

输出10.72。

现在,我必须从 list1 列表中找到最接近平均的号码。

在上面的例子中,从list1到10.72的关闭数是9。

一种方法是找到列表中 avg 每个元素之间的差异,然后查找最小差异,然后输出产生最小差异的元素,但我正在寻找更加清晰有效的方式,请建议我一个。

1 个答案:

答案 0 :(得分:2)

您可以使用built-in min() function并找到与您的号码的最小距离

min(list1, key=lambda x:abs(x-m))