我尝试预测 Dataframe 中特定数据的结果。请给我解决这个问题的方法。
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
from sklearn.linear_model import LinearRegression
df = pd.read_csv(r'C:\Users\USER\Downloads\homeprices.csv')
reg = LinearRegression()
reg.fit(df[['area']], df.price)
reg.predict(3300)
这个返回
ValueError: Expected 2D array, got 1D array instead:
array=[3300].
2条答案
按热度按时间c0vxltue1#
reg. predict()在与www.example.com()相同的维度上等待X。如果检查
df[['area']].shape
,您可以看到类似于(n,1)的内容。reg.fit所以解决方案是:或
或
所有这些结构都是具有1列和1行的二维结构
km0tfn4u2#
LinearRegression
类需要一个2D数组作为predict方法的输入。因此,直接传递一个二维数组,如reg.predict([[3300]])
,或者使用如下所示的整形函数对数组进行整形