【发布时间】:2018-05-20 09:46:00
【问题描述】:
import numpy as np
import matplotlib.pyplot as plt
import pandas as pd
dataset = pd.read_csv('Position_Salaries.csv')
X = dataset.iloc[:, 1:2].values
y = dataset.iloc[:, 2].values
from sklearn.preprocessing import StandardScaler
sc_X = StandardScaler()
sc_y = StandardScaler()
X = sc_X.fit_transform(X)
y = sc_y.fit_transform(y)
好的,这就是问题所在。 X 和 y 都是单一特征并且只有一列。如您所见,X 是一个矩阵。并且 y 是一个向量 X = dataset.iloc[:, 1:2].values y = dataset.iloc[:, 2].values
现在,当我运行 y = sc_y.fit_transform(y) 时,我收到错误消息,它是一维数组。如果我更改y = dataset.iloc[:, 2:3].values 使其成为二维数组。
但我希望它保持为一维数组,因为它是因变量,并希望它保持这种状态。我还解决了之前必须重新调整相似数据的不同示例,但它没有给我这种错误。不知道为什么它现在给我。此外,我在编码时正在观看视频,视频中的一切都是一样的,但他没有收到任何错误。
【问题讨论】:
标签: python arrays machine-learning scikit-learn sklearn-pandas