2017-08-04 36 views
1

我通过机器学习的教程的工作的基础上,虹膜数据集:用于填充test_train_split的数组切片符号?

sepal-length sepal-width petal-length petal-width  class 
0   5.1   3.5   1.4   0.2 Iris-setosa 
1   4.9   3.0   1.4   0.2 Iris-setosa 
2   4.7   3.2   1.3   0.2 Iris-setosa 
...(146 more rows) 

数据集最终被雕刻成两个单独的阵列,X和Y,并送入test_train_split

array = dataset.values 
X = array[:,0:4] 
Y = array[:,4] 
validation_size = 0.20 
seed = 7 
X_train, X_validation, Y_train, Y_validation = train_test_split(X, Y, 
    test_size=validation_size, random_state=seed) 

我想了解阵列切片表示法:

X = array[:,0:4] 
Y = array[:,4] 

究竟是生产这些切片命令?

+0

'numpy' [索引文档](https://docs.scipy.org/doc/numpy/reference/arrays.indexing.html),因为存在更多的索引符号,您最终可能会遇到。 –

+0

很好找,谢谢@DanielF –

回答

1
X = array[:,0:4] 

X是包含在array所有行的2D阵列,和1 列ST,2 第二,3 RD和4 列([0:4] -​​,sepal-widthpetal-length,和petal-width)。它的形状将是(len(array), 4)


Y = array[:, 4] 

Y是含有array所有行的2D阵列,并且只有5 柱(class)。它的形状将是(LEN(阵列),1)


X被提取的数值数据作为训练数据(列0-3),而Y只是提取相应的标签(第4栏)。