class_docstr: Multivariate copula distribution
  
  Parameters
  ----------
  copula : :class:`Copula` instance
      An instance of :class:`Copula`, e.g. :class:`GaussianCopula`,
      :class:`FrankCopula`, etc.
  marginals : list of distribution instances
      Marginal distributions.
  copargs : tuple
      Parameters for copula
  
  Notes
  -----
  Status: experimental, argument handling may still change
class_docstr_tok: ["Multivariate","copula","distribution","Parameters","--","--","--","--","--","copula",":",":","class",":","`","Copula","`","instance","An","instance","of",":","class",":","`","Copula","`",",","e.g",".",":","class",":","`","GaussianCopula","`",",",":","class",":","`","FrankCopula","`",",","etc",".","marginals",":","list","of","distribution","instances","Marginal","distributions",".","copargs",":","tuple","Parameters","for","copula","Notes","--","--","-","Status",":","experimental",",","argument","handling","may","still","change"]
code: def __init__(self, copula, marginals, cop_args=()):
      self.copula = copula
  
      # no checking done on marginals
      self.marginals = marginals
      self.cop_args = cop_args
      self.k_vars = len(marginals)
  
imports: from abc import ABC, abstractmethod
  import numpy
  from scipy import stats
  from statsmodels.graphics import utils
label_desc: Use image node_id 1 to create a new CopulaDistribution object  with example: obj = CopulaDistribution(copula, marginals, cop_args)