我想了解机器学习,我偶然发现了 youtube Siraj 和他的 Udacity 视频,并想尝试学习一些东西。
他的视频参考:
在他的视频中,他导入并读取了一个txt文件,但是当我尝试重新创建txt文件时,它无法正确读取。相反,我尝试使用相同的数据创建一个 pandas 数据框并对其执行线性回归/预测,但随后出现以下错误。
发现输入变量的样本数量不一致:[1, 16] 以及有关传递一维数组的信息,我需要重新调整它们。
然后当我尝试按照这篇文章重塑它们时:Sklearn:ValueError:发现输入变量的样本数量不一致:[1, 6] https://stackoverflow.com/questions/44181664/sklearn-valueerror-found-input-variables-with-inconsistent-numbers-of-samples
我收到这个错误......
形状 (1,16) 和 (1,1) 未对齐:16 (dim 1) != 1 (dim 0)
这是我的代码在下面。我知道这可能是一个语法错误,我只是还不熟悉这个 scklearn 并且需要一些帮助。
import pandas as pd
import matplotlib.pyplot as plt
import numpy as np
from sklearn import linear_model
#DF = pd.read_fwf('BrainBodyWeight.txt')
DF = pd.DataFrame()
DF['Brain'] = [3.385, .480, 1.350, 465.00,36.330, 27.660, 14.830, 1.040, 4.190, 0.425, 0.101, 0.920, 1.000, 0.005, 0.060, 3.500 ]
DF['Body'] = [44.500, 15.5, 8.1, 423, 119.5, 115, 98.2, 5.5,58, 6.40, 4, 5.7,6.6, .140,1, 10.8]
try:
x = DF['Brain']
y = DF['Body']
x = x.tolist()
y = y.tolist()
x = np.asarray(x)
y = np.asarray(y)
body_reg = linear_model.LinearRegression()
body_reg.fit(x.reshape(-1,1),y.reshape(-1,1))
plt.scatter(x,y)
plt.plot(x,body_reg.predict(x))
plt.show()
except Exception as e:
print(e)
谁能解释一下为什么 sklearn 不喜欢我的输入???