code: def split_train_evaluate(self, X, Y, train_precent, seed=None):
      state = numpy.random.get_state()
  
      training_size = int(train_precent * len(X))
      numpy.random.seed(seed)
      shuffle_indices = numpy.random.permutation(numpy.arange(len(X)))
      X_train = [X[shuffle_indices[i]] for i in range(training_size)]
      Y_train = [Y[shuffle_indices[i]] for i in range(training_size)]
      X_test = [
          X[shuffle_indices[i]] for i in range(training_size, len(X))
      ]
      Y_test = [
          Y[shuffle_indices[i]] for i in range(training_size, len(X))
      ]
  
      self.train(X_train, Y_train, Y)
      numpy.random.set_state(state)
      return self.evaluate(X_test, Y_test)
  
file_path: OpenNE/src/openne/classify.py
imports: from __future__ import print_function
  import numpy
  from sklearn.multiclass import OneVsRestClassifier
  from sklearn.metrics import f1_score
  from sklearn.preprocessing import MultiLabelBinarizer
  from time import time
label_desc: Use image node_id 5 for calling the Classifier obj's underlying member method code with example usage: obj.split_train_evaluate(X, Y, train_precent, seed) and returns: self