input: 
  def categorize_records(dataset, feature_extractor, model):
      """Categorize a dataset of records using a machine learning algorithm.
      
      >>> dataset = [
      ... {"label": "apple", "features": [1, 1, 0]}, 
      ... {"label": "banana", "features": [0, 1, 1]}, 
      ... {"label": "lemon", "features": [0, 0, 1]}, 
      ... {"label": "orange", "features": [1, 0, 0]}, 
      ... {"label": "pear", "features": [0, 1, 0]}, 
      ... ]
      >>> feature_extractor = lambda data: data['features']
      >>> model = SVC()
      >>> categorize_records(dataset, feature_extractor, model)
      'banana'
      """
      X, y = [], []
      for data in dataset:
          X.append(feature_extractor(data))
          y.append(data['label'])
      
      model.fit(X, y)
      predict_data = [1, 0, 1]
      predicted_label = model.predict([predict_data])
      
      return predicted_label[0]
  
output:     X, y = [], []
      for data in dataset:
          X.append(feature_extractor(data))
          y.append(data['label'])
      
      model.fit(X, y)
      predict_data = [1, 0, 1]
      predicted_label = model.predict([predict_data])
      
      return predicted_label[0]