iloc使用scikit学习随机森林分类器

时间:2020-06-04 20:25:31

标签: pandas scikit-learn

我正在尝试构建一个随机森林分类器,以基于不同的属性确定对象的“类型”。我在理解iloc并从分类中分离出预测变量时遇到了麻烦。如果第50列是'type'列,我想知道为什么iloc(注释掉)行不起作用,而y = dataset["type"]行却起作用。我已附上以下代码。谢谢!

X = dataset.iloc[:, 0:50].values
y = dataset["type"]
#y = dataset.iloc[:,50].values

1 个答案:

答案 0 :(得分:0)

让我们假设数据框中的第一列被命名为“ 0”,随后的列也因此被命名。像下面几行的结果一样

last_col=50
tab=pd.DataFrame([[x for x in range(last_col)] for c in range(10)])

现在,请尝试tab.iloc[:,0:50]-它将起作用,因为您使用了切片来选择列索引。 但是,如果您尝试使用tab.iloc[:,50]-它将不起作用,因为没有索引为50的列。

通过索引对其进行切片和选择只是有些不同。从熊猫文档中: .iloc []主要是基于整数位置(从0到轴的长度1)

我希望有帮助。