带矩阵的Python回归

2024-05-21 05:20:58 发布

您现在位置:Python中文网/ 问答频道 /正文

我有大约100个7x7的因变量矩阵(因此有49个因变量)。我的自变量是时间。我正在做一个物理项目,在这个项目中,我要通过解一个ODE得到一个矩阵函数(矩阵的每个元素都是时间的函数)。我用了纽比的ODE解算器,它给了我矩阵函数在不同时间计算的数值解。现在有了这些矩阵和时间,我想为每个元素矩阵找到一个与时间相关的表达式,从而得到时间相关的矩阵。我听说我应该做的是找到一个帽子矩阵,我猜预测值或拟合值将是我的7x7矩阵,响应值将是时间数组。那么如何在Python中找到这个hat矩阵呢?在

我最初想在scikit learn中使用他们的线性回归模型进行多项式回归。这样行吗?在StatsModel中有没有可能的方法,或者更好的,scipy或numpy?在

基本上我想从:

enter image description here

收件人:

enter image description here

显然,我将使用更多的测试用例,但这是总体思想。所以我会有单变量X(X是一个不同时间的数组)和多元Y(Y是在不同时间计算的矩阵)

在上面的例子中,t=1将包含在X数组中,而Y数组将具有第一个矩阵


Tags: 项目函数元素表达式时间物理矩阵数组
1条回答
网友
1楼 · 发布于 2024-05-21 05:20:58

假设您要执行的任务是经典线性回归:

使用numpy中的矩阵表示法(必须通过向X添加一行1来手动说明截获):

import numpy as np
a = np.linalg.inv(np.dot(X.T,X))
c = np.dot(X.T,Y)
b = np.dot(a,c)

使用numpy

^{pr2}$

使用scipy:

scipy.linalg.solve(X,Y)

scipy.stats.linregr(X,Y)

还有更多

相关问题 更多 >