print("shape of target{}format(iris_dataset['target'shape)out[ ]shape of target( ,the species are encoded as integers from to in[ ]print("target:\ {}format(iris_dataset['target'])out[ ]target[ the meanings of the numbers are given by the iris['target_names'array means setosa means versicolorand means virginica measuring successtraining and testing data we want to build machine learning model from this data that can predict the species of iris for new set of measurements but before we can apply our model to new measurementswe need to know whether it actually works--that iswhether we should trust its predictions unfortunatelywe cannot use the data we used to build the model to evaluate it this is because our model can always simply remember the whole training setand will therefore always predict the correct label for any point in the training set this "rememberingdoes not indicate to us whether our model will generalize well (in other wordswhether it will also perform well on new datato assess the model' performancewe show it new data (data that it hasn' seen beforefor which we have labels this is usually done by splitting the labeled data we have collected (hereour flower measurementsinto two parts one part of the data is used to build our machine learning modeland is called the training data or training set the rest of the data will be used to assess how well the model worksthis is called the test datatest setor hold-out set scikit-learn contains function that shuffles the dataset and splits it for youthe train_test_split function this function extracts of the rows in the data as the training settogether with the corresponding labels for this data the remaining of the datatogether with the remaining labelsis declared as the test set deciding first applicationclassifying iris species