我正在尝试运行以下代码,它在标题中显示错误。有人知道发生了什么事吗?
import numpy as np
import matplotlib.pyplot as plt
import pandas as pd
dataset = pd.read_csv('Data.csv')
X = dataset.iloc[:, :-1].values
Y = dataset.iloc[:, 3].values
from sklearn.preprocessing import Imputer
imputer = Imputer(missing_values = 'NaN', strategy = 'mean', axis = 0)
imputer = imputer.fit(X[:, 1:3])
X[:, 1:3] = imputer.transform(X[:, 1:3])
X = pd.DataFrame(X)
Y = pd.DataFrame(Y)
from sklearn.preprocessing import LabelEncoder
labelencoder_X = LabelEncoder()
X[:, 0] = labelencoder_X.fit_transform(X[:, 0])
答案 0 :(得分:2)
X
是代码最后一行中的数据帧,因此除非您使用array
或{{,否则您不能使用基于数组的索引(就像使用numpy .loc
一样)) 1}}。在这种情况下,因为位置(.iloc
)与列名(0
)相同,所以您可以使用其中之一来访问第一列:
0