Python中列表的中位数

名爵

我查找了与此类似的帖子,人们发布的示例向我抛出了与我自己的版本相同的错误。我不断收到错误消息“列表索引必须是整数,而不是浮点数”。我相信获得中位数的逻辑很好,但我不知道该如何解决。我知道发生这种情况是因为5/2 = 2.5,这不是有效的索引,但是在这种情况下,我应该如何获得偶数列表的中位数?

我的短代码是:

def median(lst):

    lst.sort()

    a = len(lst)

    if a % 2 == 0:
        b = lst[len(lst)/2]
        c = lst[(len(lst)/2)-1]
        d = (b + c) / 2
        return d

    if a % 2 > 0:
        return lst[len(lst)/2]

myList = [1,8,10,11,5]
myList2 = [10,5,7,2,1,8]

print(median(myList))
print(median(myList2))

我试图这样做来修复它,但仍然出现相同的错误:

def median(list):

    list.sort()

    a = float(len(list))

    if a % 2 == 0:
        b = float(list[len(list)/2])
        c = float(list[(len(list)/2)-1])
        d = (b + c) / 2.0
        return float(d)

    if a % 2 > 0:
        return float(list[len(list)/2])

myList = [1,8,10,11,5]
myList2 = [10,5,7,2,1,8]

print(median(myList))
print(median(myList2))
沉默的

异常是由在Python 3.x/上返回运算符引起的float//计算索引时,请使用整数除法

>>> 2 / 1
2.0
>>> 2 // 1
2

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Python中列表的中位数

来自分类Dev

列表中位数的中位数

来自分类Dev

在python中删除了NaN值的列表的中位数

来自分类Dev

Python 3.4,查找列表的中位数

来自分类Dev

在n个元素列表中的中位数

来自分类Dev

在python中查找中位数时出错

来自分类Dev

在tcl中查找列表的中位数和平均值

来自分类Dev

查找图像列表的中位数

来自分类Dev

从Excel文件中查找Python中的中位数

来自分类Dev

R中的群组中位数

来自分类Dev

组中SQLITE的中位数

来自分类Dev

Javascript中数组的中位数?

来自分类Dev

Haskell:用于计算列表中位数的函数

来自分类Dev

计算时间增量列表的中位数(或均值)

来自分类Dev

如何找到不同大小列表的中位数

来自分类Dev

Haskell:计算列表中位数的函数

来自分类Dev

Python Pandas:按中位数获取行

来自分类Dev

Python- Quickselect函数查找中位数

来自分类Dev

获取每组中列值的中位数

来自分类Dev

如何计算iReport中变量的中位数?

来自分类Dev

在Spark Streaming中查找中位数

来自分类Dev

如何计算AWS Redshift中的中位数?

来自分类Dev

MySQL中按中位数的复杂排序

来自分类Dev

如何计算Postgres中的中位数?

来自分类Dev

在计划中寻找中位数的功能

来自分类Dev

在Spark Streaming中查找中位数

来自分类Dev

中位数替换熊猫中的空值

来自分类Dev

Excel 2010 中的条件聚合/中位数

来自分类Dev

如何从numpy数组中删除两个最小的数字并计算中位数python 3