python - 使用线性回归估计价格

标签 python linear-regression

我在这里发帖是因为我在其他地方找不到解决我的问题的方法。基本上我们在学校使用 python 学习线性回归,教授希望我们根据 csv 表估计三明治中每种成分的价格以及每个三明治的固定利润。到目前为止,我们只弄乱了一个 X 变量和一个 Y 变量,所以我很困惑我应该在这里做什么?谢谢。这是表格:

tomato,lettuce,cheese,pickles,palmetto,burger,corn,ham,price
0.05,1,0.05,0,0.05,0.2,0.05,0,18.4
0.05,0,0.05,0.05,0,0.2,0.05,0.05,16.15
0.05,1,0.05,0,0.05,0.4,0,0,22.15
0.05,1,0.05,0,0.05,0.2,0.05,0.05,19.4
0.05,1,0,0,0,0.2,0.05,0.05,18.4
0,0,0.05,0,0,0,0.05,0.05,11.75
0.05,1,0,0,0,0.2,0,0.05,18.15
0.05,1,0.05,0.05,0.05,0.2,0.05,0,18.65
0,0,0.05,0,0,0.2,0.05,0.05,15.75
0.05,1,0.05,0,0.05,0,0.05,0.05,15.4
0.05,1,0,0,0,0.2,0,0,17.15
0.05,1,0,0,0.05,0.2,0.05,0.05,18.9
0,1,0.05,0,0,0.2,0.05,0.05,18.75

最佳答案

您有 9 个独立的回归变量(番茄...价格),每个变量有 13 个样本(13 行)。

因此第一种方法可能是对数据点上的“番茄”进行回归 0.05 0.05 0.05 0.05 0.05 0 0.05 0.05 0 0.05 0.05 0.05 0 然后为“生菜”和其他人做另一件事,直到“价格” 18.4 16.15 22.15 19.4 18.4 11.75 18.15 18.65 15.75 15.4 17.15 18.9 18.75

用于查看 CSV 数据的在线查看器:http://www.convertcsv.com/csv-viewer-editor.htm ,但 Google SpreadSheet、Excel 等也可以很好地显示它。

SciPy 可能(最有可能)也可以在向量上为您完成该任务(因此一起处理 9 个变量),但 13 行中有 13 个样本的部分仍然保留。

编辑:坏消息,我很累,没有回答完整的问题,对此感到抱歉。

虽然您确实可以将前 8 列(番茄...火腿)作为时间序列,并对它们进行单独回归(这可能是本作业的第一部分),但最后一列(价格)预计从前8个开始估算。

使用维基百科中的符号,https://en.wikipedia.org/wiki/Linear_regression#Introduction ,您的 y 向量是最后一列(价格),X 矩阵是数据的前 8 列(番茄...火腿),并用一列进行扩展1-s 某处。 然后选择一种估计方法(该页面中也列出了一些方法, https://en.wikipedia.org/wiki/Linear_regression#Estimation_methods ,但您可能想选择您在类里面学到的一种)。实际的数学就在那里,NumPy 可以进行矩阵/向量计算。如果您选择“普通最小二乘法”,numpy.linalg.lstsq 也会执行相同的操作(https://docs.scipy.org/doc/numpy/reference/generated/numpy.linalg.lstsq.html#numpy.linalg.lstsq - 您可能会发现添加熟悉的 1 列),因此它可以用于验证结果。

关于python - 使用线性回归估计价格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44232046/

相关文章:

python - tensorflow 线性分类器未训练

python - 多元线性回归中没有找到斜率和截距,nan值来了

python - 在 python 中不存在的文件中添加行

python - 来自 python 守护进程的 "sudo"操作

python - 如何从绘图窗口或使用命令在 matplotlib 中打印绘图?

linear-regression - 我们不应该在线性回归的交叉验证中取n个模型的平均值吗?

python - Django Pinax ,扩展捆绑应用程序

python - 用带反斜杠的字符串替换字符串

r - 强制某些参数在 lm() 中具有正系数

machine-learning - 偏差项和系数的线性回归更新