code: def _check(self, time, status, strata, entry):
      n1, n2, n3, n4 = len(time), len(status), len(strata), len(entry)
      nv = [n1, n2, n3, n4]
      if max(nv) != min(nv):
          raise ValueError(
              "endog, status, strata, and "
              + "entry must all have the same length"
          )
      if min(time) < 0:
          raise ValueError("endog must be non-negative")
      if min(entry) < 0:
          raise ValueError("entry time must be non-negative")
  
      # In Stata, this is entry >= time, in R it is >.
      if np.any(entry > time):
          raise ValueError(
              "entry times may not occur "
              + "after event or censoring times"
          )
  
imports: import numpy
  from statsmodels.base import model
  import statsmodels.base.model
  from statsmodels.tools.decorators import cache_readonly
  from statsmodels.compat.pandas import Appender
label_desc: Use image node_id 3 for calling the PHSurvivalTime obj's underlying member method code with example usage: obj._check(time, status, strata, entry) without return types