class_docstr: Define the variance component structure of a multilevel model.
  
  An instance of the class contains three attributes:
  
  - names : names[k] is the name of variance component k.
  
  - mats : mats[k][i] is the design matrix for group index
    i in variance component k.
  
  - colnames : colnames[k][i] is the list of column names for
    mats[k][i].
  
  The groups in colnames and mats must be in sorted order.
class_docstr_tok: ["Define","the","variance","component","structure","of","a","multilevel","model",".","An","instance","of","the","class","contains","three","attributes",":","-","names",":","names","[","k","]","is","the","name","of","variance","component","k.","-","mats",":","mats","[","k","]","[","i","]","is","the","design","matrix","for","group","index","i","in","variance","component","k.","-","colnames",":","colnames","[","k","]","[","i","]","is","the","list","of","column","names","for","mats","[","k","]","[","i","]",".","The","groups","in","colnames","and","mats","must","be","in","sorted","order","."]
code: def __init__(self, names, colnames, mats):
      self.names = names
      self.colnames = colnames
      self.mats = mats
  
imports: import warnings
  import numpy
  import pandas
  import patsy
  from scipy import sparse
  from scipy.stats.distributions import norm
  from statsmodels.base._penalties import Penalty
  import statsmodels.base.model
  from statsmodels.tools import data
  from statsmodels.tools.decorators import cache_readonly
  from statsmodels.tools.sm_exceptions import ConvergenceWarning
label_desc: Use image node_id 1 to create a new VCSpec object  with example: obj = VCSpec(names, colnames, mats)