Pandas数据框中两个变量的线性回归

2024-05-28 21:10:48 发布

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

所以,我不是一个真正的程序员,但我需要找出一个关于两个变量的方程的关系,我已经在谷歌上广泛搜索,但我不知道如何将我的数据输入sklearn线性模型。在

我有一个这样定义的数据帧

I = [-2, 0, 5, 10, 15, 20, 25, 30]
d = {27.11 : [9.01,8.555,7.56,6.77,6.14,5.63,5.17,4.74],
     28.91 : [8.89,8.43,7.46,6.69,6.07,5.56,5.12,4.68],
     30.72 : [8.76,8.32,7.36,6.60,6.00,5.50,5.06,4.69],
     32.52 : [8.64,8.20,7.26,6.52,5.93,5.44,5.00,4.58],
     34.33 : [8.52,8.08,7.16,6.44,5.86,5.38,4.95,4.52],
     36.11 : [8.39,7.97,7.07,6.35,5.79,5.31,4.86,4.46]}
oxy = pd.DataFrame(index = I, data = d) # temp, salinity to oxygenation ml/L

指数代表温度,列名代表盐度,我需要想出一种方法来根据温度和盐度来预测氧合(列中的值)。在

我想我的问题主要与语法有关

我试着用

^{pr2}$

伴随着大量的变量试图在index,datatable中的列中获取与每个X相关联的值,我真的不知道该怎么做。在

我发现了很多关于两个变量的指南,但是它们都有扁平的数据集,而且我不知道如何在没有大量和大量的输入的情况下使其扁平化。在

所以,我的问题是,有没有一种方法可以对两个变量进行回归,我的独立变量就是pandas数据表上的索引和列值,或者,有没有一种快速有效的方法将这个数据表展平成48×3的数据表,这样我找到的许多指南中的一个能真正帮助我?在

先谢谢你。在


Tags: 数据方法模型index定义关系指南代表
1条回答
网友
1楼 · 发布于 2024-05-28 21:10:48

您可以使用stack重塑数据的形状,然后重命名列:

oxy2 = oxy.stack().reset_index()
oxy2.columns = ['salinity','temperature','oxygenation']

数据帧输出为48。仅显示前5行:

^{pr2}$

然后可以使用以下代码运行回归:

regr = linear_model.LinearRegression()
regr.fit(oxy2[['salinity','temperature']], oxy2['oxygenation'])

相关问题 更多 >

    热门问题