【发布时间】:2019-11-17 10:00:15
【问题描述】:
如果我将 pandas dataframe 与 dataset.iloc[:, 1:2].values 切片,它会给我一个 2 dimensional(matrix) 结构化数据,而 dataset.iloc[:, 1].values 给我 1 dimensional 数据。所以,我怀疑iloc[:,1:2] & iloc[:,1] 不要做同样的事情?
这里是示例代码:
>>> df1 = df.iloc[:, 1:2].values
>>> print(df1.shape,df1.ndim)
(9578, 1) 2
>>> df2 = df.iloc[:, 1].values
>>> print(df2.shape,df2.ndim)
(9578,) 1
>>>
【问题讨论】:
-
由于您得到不同的结果,因此可以肯定地说他们没有做同样的事情。
-
.iloc[:,1]返回系列,而.iloc[:,1:2]返回数据帧。与df['A']返回系列而df[['A']]返回数据帧相同
标签: python python-3.x pandas numpy numpy-ndarray