code: def _create_matrix(self, sentences, threshold, tf_metrics, idf_metrics):
          
          # create matrix |sentences|×|sentences| filled with zeroes
          sentences_count = len(sentences)
          matrix = numpy.zeros((sentences_count, sentences_count))
          degrees = numpy.zeros((sentences_count, ))
  
          for row, (sentence1, tf1) in enumerate(zip(sentences, tf_metrics)):
              for col, (sentence2, tf2) in enumerate(zip(sentences, tf_metrics)):
                  matrix[row, col] = self.cosine_similarity(sentence1, sentence2, tf1, tf2, idf_metrics)
  
                  if matrix[row, col] > threshold:
                      matrix[row, col] = 1.0
                      degrees[row] += 1
                  else:
                      matrix[row, col] = 0
  
          for row in range(sentences_count):
              for col in range(sentences_count):
                  if degrees[row] == 0:
                      degrees[row] = 1
  
                  matrix[row][col] = matrix[row][col] / degrees[row]
  
          return matrix
docs: Creates matrix of shape |sentences|×|sentences|.