我遇到一些python代码(简单的东西)有点麻烦。 它已经到了我希望如果我点击运行足够多次可能会有效......
以下是代码:
Data = [1, 2, 3, 4, 5]
Frequency = [1, 2, 3, 3, 1]
def mode(data1, frequency1):
mode = [0]
count = 0
while count != len(frequency1):
if frequency1[count] > mode[0]:
mode = data1[count]
elif frequency1[count] == mode:
mode = [mode, data1[count]]
count +=1
return mode
mode = mode(Data, Frequency)
print(mode)
它返回:
if Frequency[0] > mode[0]:
TypeError: 'int' object is not subscriptable
我看了另一个问题&回答,但它超越了我。 我哪里错了!
编辑:我知道有些模块可以导入以找到平均值,但我想在不导入任何内容的情况下进行。
编辑:现在发布了整个代码。如果我不将模式变量设为列表,则可以使用两种模式。
答案 0 :(得分:5)
查看您的int(mode[0])
。你基本上是在说,得到零的第0个元素。也许你只想丢失下标?或者改变模式的类型?