【发布时间】:2016-10-31 09:40:38
【问题描述】:
我对如何继续实现这一目标有点迷茫。通常使用线性模型,当我执行线性回归时,我只需获取训练数据 (x) 和输出数据 (y) 并使用 matplotlib 绘制它们。现在我有 3 个功能和我的输出/观察 (y)。谁能指导我如何使用 matplotlib 绘制这种模型?我的目标是拟合多项式模型并使用 matplotlib 绘制多项式。
%matplotlib inline
import sframe as frame
import matplotlib.pyplot as plt
import numpy as np
from sklearn import datasets, linear_model
# Initalize SFrame
sales = frame.SFrame('kc_house_data.gl/')
# Separate data into test and training data
train_data,test_data = sales.random_split(.8,seed=0)
# Organize data into training and testing data
train_x = train_data[['sqft_living', 'bedrooms', 'bathrooms']].to_dataframe().values
train_y = train_data[['price']].to_dataframe().values
test_x = test_data[['sqft_living', 'bedrooms', 'bathrooms']].to_dataframe().values
test_y = test_data[['price']].to_dataframe().values
# Create a model using sklearn with multiple features
regr = linear_model.LinearRegression(fit_intercept=True, n_jobs=2)
# test predictions
regr.predict(train_x)
# Prepare to plot the data
注意:
train_x 变量包含我的 3 个特征,我的 train_y 包含输出数据。我使用 SFrame 来包含数据。 SFrame 能够将自身转换为数据框(在 Pandas 中使用)。使用转换我可以获取值。
【问题讨论】:
-
这是否意味着您的函数有 3 个自变量而不是 1 个?如果是这样,那确实很难想象。
-
我明白你的意思了。我想我的目标是将我的特征转化为 3 次多项式,然后绘制它。我在 sklearn 上找到了一些关于多项式特征的文档。我还在研究如何使用它。 stats.stackexchange.com/questions/58739/…
-
@Andras 文档的问题在于,尽管看起来这些示例是使用 matplotlib 绘制的,但从未显示文档作者如何做到这一点的示例。 scikit-learn.org/stable/modules/…
-
我的问题其实很幼稚;我没有机器学习和非线性编程方面的经验。
-
@AndrasDeak 我想我很困惑。当您提到 3 个自变量时,我立即开始四处搜索并找到了 Matlab graph plotting thread about that,我立即开始认为我正在绘制一个类似于我发现的东西。感谢您的澄清。
标签: matplotlib machine-learning scikit-learn