docstr: Convert a numpy array to a TF placeholder.
  
  Args:
    ndarray: any object convertible to a numpy array via `np.asarray()`.
  
  Returns:
    placeholder: a TensorFlow `placeholder` with default value given by the
    provided `ndarray`, dtype given by `self.dtype`, and shape specified
    statically only if `self.use_static_shape` is `True`.
docstr_tok: ["Convert","a","numpy","array","to","a","TF","placeholder",".","Args",":","ndarray",":","any","object","convertible","to","a","numpy","array","via","`","np.asarray","(",")","`",".","Returns",":","placeholder",":","a","TensorFlow","`","placeholder","`","with","default","value","given","by","the","provided","`","ndarray","`",",","dtype","given","by","`","self.dtype","`",",","and","shape","specified","statically","only","if","`","self.use_static_shape","`","is","`","True","`","."]
code: def _build_placeholder(self, ndarray):
      """Convert a numpy array to a TF placeholder.
  
      Args:
        ndarray: any object convertible to a numpy array via `np.asarray()`.
  
      Returns:
        placeholder: a TensorFlow `placeholder` with default value given by the
        provided `ndarray`, dtype given by `self.dtype`, and shape specified
        statically only if `self.use_static_shape` is `True`.
      """
  
      ndarray = np.asarray(ndarray).astype(self.dtype)
      return tf1.placeholder_with_default(
          ndarray,
          shape=ndarray.shape if self.use_static_shape else None,
      )
  
imports: import math
  from absl.testing import parameterized
  import numpy
  import tensorflow.compat.v1
  import tensorflow.compat.v2
  from tensorflow_probability.python.bijectors import identity
  from tensorflow_probability.python.bijectors import invert
  from tensorflow_probability.python.bijectors import square
  from tensorflow_probability.python.distributions import categorical
  from tensorflow_probability.python.distributions import inverse_gamma
  from tensorflow_probability.python.distributions import linear_gaussian_ssm
  from tensorflow_probability.python.distributions import lognormal
  from tensorflow_probability.python.distributions import mixture_same_family
  from tensorflow_probability.python.distributions import mvn_diag
  from tensorflow_probability.python.distributions import normal
  from tensorflow_probability.python.distributions import transformed_distribution
  from tensorflow_probability.python.internal import prefer_static
  from tensorflow_probability.python.internal import test_util
  from tensorflow_probability.python.sts.components.seasonal import ConstrainedSeasonalStateSpaceModel
  from tensorflow_probability.python.sts.components.seasonal import Seasonal
  from tensorflow_probability.python.sts.components.seasonal import SeasonalStateSpaceModel
label_desc: Use image node_id 2 for calling the _ConstrainedSeasonalStateSpaceModelTest obj's underlying member method code with example usage: obj._build_placeholder(ndarray) and returns: tf1