我似乎找不到任何进行多重回归的python库.我发现的唯一的东西只做简单的回归.我需要对几个自变量(x1,x2,x3等)回归我的因变量(y).
例如,使用此数据:
print 'y x1 x2 x3 x4 x5 x6 x7'
for t in texts:
print "{:>7.1f}{:>10.2f}{:>9.2f}{:>9.2f}{:>10.2f}{:>7.2f}{:>7.2f}{:>9.2f}" /
.format(t.y,t.x1,t.x2,t.x3,t.x4,t.x5,t.x6,t.x7)
Run Code Online (Sandbox Code Playgroud)
(以上输出:)
y x1 x2 x3 x4 x5 x6 x7
-6.0 -4.95 -5.87 -0.76 14.73 4.02 0.20 0.45
-5.0 -4.55 -4.52 -0.71 13.74 4.47 0.16 0.50
-10.0 -10.96 -11.64 -0.98 15.49 4.18 0.19 0.53
-5.0 -1.08 -3.36 0.75 24.72 4.96 0.16 0.60
-8.0 -6.52 -7.45 -0.86 16.59 4.29 0.10 0.48
-3.0 -0.81 -2.36 -0.50 22.44 4.81 0.15 0.53
-6.0 -7.01 -7.33 -0.33 …Run Code Online (Sandbox Code Playgroud) 我有一个pandas数据框,我希望能够从B列和C列中的值预测A列的值.这是一个玩具示例:
import pandas as pd
df = pd.DataFrame({"A": [10,20,30,40,50],
"B": [20, 30, 10, 40, 50],
"C": [32, 234, 23, 23, 42523]})
Run Code Online (Sandbox Code Playgroud)
理想情况下,我会有类似的东西ols(A ~ B + C, data = df),但当我从算法库中查看示例时,scikit-learn它似乎将数据提供给模型,其中包含行而不是列.这将要求我将数据重新格式化为列表中的列表,这似乎首先打败了使用pandas的目的.在pandas数据框中对数据运行OLS回归(或更普遍的机器学习算法)的最pythonic方法是什么?
python ×2
numpy ×1
pandas ×1
regression ×1
scikit-learn ×1
scipy ×1
statistics ×1
statsmodels ×1