【发布时间】:2019-09-27 12:04:51
【问题描述】:
我对 Python 非常陌生,我正在尝试了解一个相当简单的线性回归模型。
当我尝试运行这行代码时,我收到错误“系列”对象没有属性“扁平化”
df4= pd.DataFrame({'Actual': y_test.flatten(), 'Predicted': y_pred.flatten()})
由于我的值是回归的输出,我相当肯定它是一个数组,并且在我的代码中没有任何地方创建一个系列。有没有办法把它变成一个数组,这样我就可以使用 flatten 函数了?
我尝试使用 .values 引发此错误:“numpy.ndarray”对象没有属性“values”
df4= pd.DataFrame({'Actual': y_test.values.flatten(), 'Predicted': y_pred.values.flatten()})
Y_test 定义
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=0)
X & Y 定义 X = df2[["MonthYear"]] y = df2["HC"]
数据都是数字,看起来像: HC 月年 567 1 597 2 652 3
【问题讨论】:
-
你能把定义y_test的代码sn-ps贴出来
-
也许您没有将
y_test转换为数组。只对ypred使用flatten,大概是regressor的输出 -
@mathewgunther X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=0)
-
在较新版本的
sklearn中,train_test_split返回与输入相同类型的对象。 -
你能对 X 和 y 做同样的事情吗?
标签: python arrays linear-regression series