Python 如何从公式中近似值

Python 如何从公式中近似值,python,math,Python,Math,所以我有一个α向量,一个β向量,我试图找到一个θ,当所有估计值之和(对于α的1到N和β的1到N)等于60时: def CalcTheta(grensscore, alpha, beta): theta = 0.0001 estimate = [grensscore-1] while(sum(estimate) < grensscore): theta += 0.00001 for x in range(len(beta)):

所以我有一个α向量,一个β向量,我试图找到一个θ,当所有估计值之和(对于α的
1到N
和β的
1到N
)等于60时:

def CalcTheta(grensscore, alpha, beta):
    theta = 0.0001
    estimate = [grensscore-1]
    while(sum(estimate) < grensscore):
        theta += 0.00001
        for x in range(len(beta)):
            if x == 0:
                estimate = []
            estimate.append(math.exp(alpha[x] * (theta - beta[x])) /
                            (1 + math.exp(alpha[x] * (theta - beta[x]))))
    return(theta)

def CalcTheta(Grenscore、alpha、beta):
θ=0.0001
估计值=[grensscore-1]
而(总和(估计值)
基本上,我做的是从θ=0.0001开始,迭代,计算所有这些和,当它小于60时,继续每次加0.0001,而大于60意味着我们找到θ

我通过这种方式找到了值
theta
。问题是,我使用Python花了大约60秒,才找到0.456的θ


找到θ的更快方法是什么(因为我想将其应用于其他数据)?

如果你知道θ的上下限,并且函数在这两者之间是单调的,那么你可以使用a来轻松快速地找到所需的值。

这些估计是从哪里来的?α、β和θ中的哪一个是估计值?什么是
x
?像
alpha[x]
这样的表达式意味着什么(您是否使用
x
索引,乘以
x
,基于参数
x
,…)构建估计值)?这跟你有什么关系?(顺便提一下,这个问题——以稍微抽象一点的形式——似乎在问“我如何有效地找到一元函数的根。”它本身可能被认为是离题的,但如果你能提供一个更清晰的统计背景,我们可能能够保持开放。)x代表第x项。Alpha是一个值列表,beta是一个值列表。它是在给定边界值的情况下查找需要传递的能力。假设我们有80个问题,需要60个正确答案,估计通过考试所需的θ(能力)是多少?在这种情况下,给出了问题的难度和坡度。我希望这能澄清问题,抱歉造成混淆。如果您愿意,我也在R中写下了这个函数。现在的问题显然是关于在Python中查找[可微]单变量函数(of$\theta$)的零的算法,所以我将把它迁移到一个可能比这里得到更广泛解决方案的地方。是的,我意识到这就是我最后所做的!