使用python查找方差(x,y)

时间:2017-08-24 00:19:13

标签: python variance

这就是问题,

def square(x):
    return x * x

def mean(x, y):
    return (x + y) / 2

def variance(x, y):

我需要提出一个代码,方差(1,5)给出4.

我正在考虑使用variance = e(x ^ 2) - [e(x)] ^ 2但我继续在python中得到消息,说缺少位置参数:y。

Traceback (most recent call last):
  File "<pyshell#7>", line 1, in <module>
variance(1,5)
  File "<pyshell#6>", line 2, in variance
    return (mean(square (x,y)) - square(mean(x,y)))
TypeError: square() takes 1 positional argument but 2 were given

任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

return (mean(square (x,y)) - square(mean(x,y)))中,您将两个参数(xy)传递给square,但如果您查看square的定义:

def square(x):
    return x * x

你可以看到它只需要一个参数,因此错误square() takes 1 positional argument but 2 were given。请注意,一旦您解决了这个问题,您就会反过来遇到同样的错误:mean有两个参数,但您只提供一个参数。

由于这看起来像家庭作业,我不会提供方差的代码,但希望这可以解决技术问题(你似乎已经知道要实现的正确公式)。