class_docstr: In its most common representation, a multivariate Gaussian distribution
  over X1, X2, ..., Xn is characterized by an n-dimensional mean vector μ,
  and a symmetric n x n covariance matrix Σ.
  
  This is the base class for its representation.
docstr: Return a copy of the distribution.
  
  Returns
  -------
  GaussianDistribution: copy of the distribution
  
  Examples
  --------
  >>> import numpy as np
  >>> from pgmpy.factors.distributions import GaussianDistribution as GD
  >>> gauss_dis = GD(variables=['x1', 'x2', 'x3'],
  ...                mean=[1, -3, 4],
  ...                cov=[[4, 2, -2],
  ...                     [2, 5, -5],
  ...                     [-2, -5, 8]])
  >>> copy_dis = gauss_dis.copy()
  >>> copy_dis.variables
  ['x1', 'x2', 'x3']
  >>> copy_dis.mean
  array([[ 1],
          [-3],
          [ 4]])
  >>> copy_dis.covariance
  array([[ 4,  2, -2],
          [ 2,  5, -5],
          [-2, -5,  8]])
  >>> copy_dis.precision_matrix
  array([[ 0.3125    , -0.125     ,  0.        ],
          [-0.125     ,  0.58333333,  0.33333333],
          [ 0.        ,  0.33333333,  0.33333333]])
docstr_tok: ["Return","a","copy","of","the","distribution",".","Returns","--","--","--","-","GaussianDistribution",":","copy","of","the","distribution","Examples","--","--","--","--",">",">",">","import","numpy","as","np",">",">",">","from","pgmpy.factors.distributions","import","GaussianDistribution","as","GD",">",">",">","gauss_dis","=","GD","(","variables=","[","'x1","'",",","'x2","'",",","'x3","'","]",",","...","mean=","[","1",",","-3",",","4","]",",","...","cov=","[","[","4",",","2",",","-2","]",",","...","[","2",",","5",",","-5","]",",","...","[","-2",",","-5",",","8","]","]",")",">",">",">","copy_dis","=","gauss_dis.copy","(",")",">",">",">","copy_dis.variables","[","'x1","'",",","'x2","'",",","'x3","'","]",">",">",">","copy_dis.mean","array","(","[","[","1","]",",","[","-3","]",",","[","4","]","]",")",">",">",">","copy_dis.covariance","array","(","[","[","4",",","2",",","-2","]",",","[","2",",","5",",","-5","]",",","[","-2",",","-5",",","8","]","]",")",">",">",">","copy_dis.precision_matrix","array","(","[","[","0.3125",",","-0.125",",","0",".","]",",","[","-0.125",",","0.58333333",",","0.33333333","]",",","[","0.",",","0.33333333",",","0.33333333","]","]",")"]
code: def copy(self):
      """
      Return a copy of the distribution.
  
      Returns
      -------
      GaussianDistribution: copy of the distribution
  
      Examples
      --------
      >>> import numpy as np
      >>> from pgmpy.factors.distributions import GaussianDistribution as GD
      >>> gauss_dis = GD(variables=['x1', 'x2', 'x3'],
      ...                mean=[1, -3, 4],
      ...                cov=[[4, 2, -2],
      ...                     [2, 5, -5],
      ...                     [-2, -5, 8]])
      >>> copy_dis = gauss_dis.copy()
      >>> copy_dis.variables
      ['x1', 'x2', 'x3']
      >>> copy_dis.mean
      array([[ 1],
              [-3],
              [ 4]])
      >>> copy_dis.covariance
      array([[ 4,  2, -2],
              [ 2,  5, -5],
              [-2, -5,  8]])
      >>> copy_dis.precision_matrix
      array([[ 0.3125    , -0.125     ,  0.        ],
              [-0.125     ,  0.58333333,  0.33333333],
              [ 0.        ,  0.33333333,  0.33333333]])
      """
      copy_distribution = GaussianDistribution(
          variables=self.variables,
          mean=self.mean.copy(),
          cov=self.covariance.copy(),
      )
      if self._precision_matrix is not None:
          copy_distribution._precision_matrix = (
              self._precision_matrix.copy()
          )
  
      return copy_distribution
  
imports: import numpy
  from scipy.stats import multivariate_normal
  from pgmpy.factors.distributions import BaseDistribution
label_desc: Use image node_id 8 for calling the GaussianDistribution obj's underlying member method code with example usage: obj.copy() and returns: copy_distribution