python - 多元回归 Python
问题描述
我真的不明白我的(简单)代码有什么问题......
我只想测试一个多元线性回归(....!)。
import pandas as pd
import numpy as np
import scipy.stats as st
import sklearn
n = 1000
X1 = linspace(2, 8.5, n)
X2 = linspace(-4, 2.9, n)
X3 = linspace(-1, 16, n)
X = np.transpose( [X1, X2, X3] )
Y = 2*X1 + 3.2*X2 -1.2*X3 + 4 + st.norm.rvs(size = n, loc = 0, scale = 0.6)
X = pd.DataFrame( X , columns = ["X1", "X2", "X3"])
Y = pd.DataFrame(Y, columns = ["Y"])
#Create linear regression object:
my_reg = sklearn.linear_model.LinearRegression()
#Train:
my_reg.fit(X, Y)
print('Coefficients: \n', my_reg.coef_)
print('Constant: \n', my_reg.intercept_)
我得到了一些愚蠢的结果,比如系数是 [ 0.25127347 0.26673645 0.65717676] ...
我也尝试过 OLS 方式,但我仍然得到无意义的 coef(略有不同但仍然很愚蠢)
(它适用于单变量线性回归,例如 Y = 2*X + 5,我会得到 coef 和截距非常接近真实的)
解决方案
谢谢大家!
我有一段时间没有执行线性回归,当然这是因为 X 不可逆(在 R 中,它给了我“nan”)。
所以这不是一个聪明的问题......
再次感谢!
推荐阅读
- django - 使用 where 子句在 Django 上进行内部连接?
- json - Eclipse Ditto - 创建 MQTT 连接 - 因无效 json 400 响应而失败
- c# - 为什么 Resharper 告诉我可能存在 NullReferenceException?
- c - 如何实现分页,并在知道虚拟地址的情况下找到物理内存地址
- powershell - Powershell - 导出证书信息
- c# - 由于对象的当前状态(System.Text.Json),操作无效
- sql - 如何确保在雪花中使用 mode() 的查询的确定性结果
- mysql - MySQL:如何执行包括计算总和的多表查询?
- swift - 如何从文本中提取href并让它可点击到网站?
- python - CMake:custom_target 参数转发到特定命令