微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

SciPy 曲线拟合 Pandas 数据帧

如何解决SciPy 曲线拟合 Pandas 数据帧

我设置了一个包含许多独立列的数据框,其中最后一列是因变量。我正在尝试使用自变量为因变量生成线性方程。然而 scipy curve_fit 似乎实际上并没有做任何事情,只是返回初始猜测函数。相关代码

def linear(independent_variables,*params):
    paramstack = np.hstack(params)

    expected_value = 0
    for index in range(len(independent_variables)):
        try:
            add_value = independent_variables[index] * paramstack[index]
            if type(add_value) == float: #This was just to validate the add_value makes sense
                expected_value += add_value
        except:
            continue
    return expected_value 

df = pd.DataFrame(all_data)

independent_variables = df.drop('dependent_variable',axis=1) # Gets all the independent variables
initial_guess = np.random.randn(independent_variables.shape[1])

c,cov = curve_fit(linear,independent_variables,df['dependent_variable'],p0=initial_guess)

print(initial_guess)
print(c)

initial_guess 和 c 的打印值是相同的。 我是否设置错误,或者不能在太大的数据集上使用 curve_fit 。或者只是我的自变量之间的相关性太低,我分析了pandas.corr数据:

df.corr()['dependent_variable']

并且大多数列的相关强度都在 ~0.4 区域内。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。