title: Python unhashable type: 'numpy.ndarray'
body: <p>I worked on making functions for K Nearest Neighbors. I have tested each function separately and they all work well. However whenever I put them together and run <code>KNN_method</code>, it shows <code>unhashable type: 'numpy.ndarray'</code>. 
  Here is my code:</p>
  
  <pre><code>def distance(p,point):
      import numpy as np
      value = np.sqrt(sum(np.power((p-point),2)))
      return(value)
  
  def find_neighbors(p,list_of_points, k = 3):
      import numpy as np
      distances = np.zeros(list_of_points.shape[0])
      for i in range(list_of_points.shape[0]):
          distances[i]= distance(p,list_of_points[i])
      ind = np.argsort(distances)
      return(ind[0:k])
  
  def majority_votes(votes):
      import random
      vote_result = {}
      for key in votes:
          if key in vote_result:
              vote_result[key] += 1
          else:
              vote_result[key] = 1
      final_list = []
      for (number, vote) in vote_result.items():
          if vote == max(vote_result.values()):
              final_list.append(number)
      Winner = random.choice(final_list)
      return(Winner)
  
  
  def KNN_method(p , list_of_points , outcomes , k = 3):
      ind = find_neighbors(p , list_of_points , k) 
      Final = majority_votes(outcomes[ind])
      return(Final)
  </code></pre>