(self, sample_indices=None, num_samples=1)
return(samples)
returns samples according to the KDE
		
			Parameters
			----------
				sample_inices: list of ints
					Indices into the training data used as centers for the samples
				
				num_samples: int
					if samples_indices is None, this specifies how many samples
					are drawn.
returns samples according to the KDE
		
			Parameters
			----------
				sample_inices: list of ints
					Indices into the training data used as centers for the samples
				
				num_samples: int
					if samples_indices is None, this specifies how many samples
					are drawn.
returns samples according to the KDE Parameters ---------- sample_inices : list of ints Indices into the training data used as centers for the samples num_samples : int if samples_indices is None this specifies how many samples are drawn .
def sample(self, sample_indices=None, num_samples=1):
		""" returns samples according to the KDE
		
			Parameters
			----------
				sample_inices: list of ints
					Indices into the training data used as centers for the samples
				
				num_samples: int
					if samples_indices is None, this specifies how many samples
					are drawn.
				
		"""
		if sample_indices is None:
			sample_indices = np.random.choice(self.data.shape[0], size=num_samples)
		samples = self.data[sample_indices]

		samples = samples.squeeze()
		
		if self.num_values == 1:
			# handle cases where there is only one value!
			return(samples)
		
		probs = self.bw * np.ones(self.num_values)/(self.num_values-1)
		probs[0] = 1-self.bw
		
		delta = np.random.choice(self.num_values, size=num_samples, p = probs)
		samples = np.mod(samples + delta, self.num_values)	

		return(samples)
def sample ( self , sample_indices = None , num_samples = 1 ) : if sample_indices is None : sample_indices = np . random . choice ( self . data . shape [ 0 ] , size = num_samples ) samples = self . data [ sample_indices ] samples = samples . squeeze ( ) if self . num_values == 1 : # handle cases where there is only one value! return ( samples ) probs = self . bw * np . ones ( self . num_values ) / ( self . num_values - 1 ) probs [ 0 ] = 1 - self . bw delta = np . random . choice ( self . num_values , size = num_samples , p = probs ) samples = np . mod ( samples + delta , self . num_values ) return ( samples )