original_docstring: 
      Build a discrete distribution in form of { point : probability }
      :param data: numpy.array, (data points, dimension)
      :return: dict of distribution
      
docstring: Build a discrete distribution in form of { point : probability }
docstring_tokens: Build a discrete distribution in form of { point : probability }
code: def discrete_distribution(data):
      """
      Build a discrete distribution in form of { point : probability }
      :param data: numpy.array, (data points, dimension)
      :return: dict of distribution
      """
      distr = { }
      n = data.shape[0]
      for point in data:
          if tuple(point) in distr:
              distr[tuple(point)] += 1. / n
          else:
              distr[tuple(point)] = 1. / n
      return distr
code_tokens: def discrete_distribution ( data ) : distr = { } n = data . shape [ 0 ] for point in data : if tuple ( point ) in distr : distr [ tuple ( point ) ] += 1. / n else : distr [ tuple ( point ) ] = 1. / n return distr
short_docstring: Build a discrete distribution in form of { point : probability }
short_docstring_tokens: Build a discrete distribution in form of { point : probability }
comment: """
      Build a discrete distribution in form of { point : probability }
      :param data: numpy.array, (data points, dimension)
      :return: dict of distribution
      """