首页 > 解决方案 > Pandas 中的以下命令有什么作用?

问题描述

我只是在看一些随机森林的代码,遇到了这两行。假设我有一个由 12 列组成的 pandas 数据框“df”。

以下代码将返回什么

X =  df.iloc[:,0:11].values 
Y = df.iloc[:, 12].values

标签: pythonarrayspandasmachine-learning

解决方案


X =  df.iloc[:,0:11].values 

上述行将以数组的形式返回从第 1 列到第 11 列(包括第 11 列)的所有行和列。

Y = df.iloc[:, 12].values

上述行以数据框数组的形式返回第 13列值(不是第 12 列)

例子 :

示例数据框:

df = pd.DataFrame(np.random.randint(0,120,size=(5, 14)), columns=[k+l for k,l in zip(list('ABCDEFGHIJKLMN'), [str(i) for i in range(1,15)])]) #Just tried to name the columns with letters combined with numbers for convenient tracking.
df

在此处输入图像描述

X =  df.iloc[:,0:11]#.values 
X

在此处输入图像描述

Y = df.iloc[:, 12].values
Y

在此处输入图像描述


推荐阅读