我刚刚在查看一些关于随机森林的代码时,遇到了这两行代码。假设我有一个包含12列的pandas数据框’df’。
以下代码会返回什么
X = df.iloc[:,0:11].values Y = df.iloc[:, 12].values
回答:
为了生成一个供考虑的数据框:
>>> df = pd.DataFrame(np.random.randint(10, size=(5, 2)), columns=['Col 1', 'Col 2'])
如果我们打印这个数据框,会得到:
>>> print(df) Col 1 Col 20 8 41 6 42 7 53 9 64 1 5
为了弄清楚:
的作用,我们来考虑一下
>>> print(df.iloc[:,0])0 81 62 73 94 1
这似乎会输出第0列中的每一行。
再来看另一个例子:
>>> print(df.iloc[0:3,0])0 81 62 7
看起来这是返回第0列中从位置0到位置2的行。
通过这些例子可以推断,:
会返回完整的维度。在你的例子中,由于:
在前,所以它返回所有行。0:11
返回从第0列到第10列。12
返回第12列。