docs: def append_arrays(many, single):
      """Append an array to another padding with NaNs for constant length.
  
      Parameters
      ----------
      many : array_like of rank (j, k)
          values appended to a copy of this array. This may be a 1-D or 2-D
          array.
      single : array_like of rank l
          values to append. This should be a 1-D array.
  
      Returns
      -------
      append : :class:`numpy.ndarray`
          2-D array with rank (j + 1, max(k, l)) with missing values padded
          with :class:`numpy.nan`
      """
      assert np.ndim(single) == 1
  
      # Check if the values need to be padded to for equal length
      diff = single.shape[0] - many.shape[0]
      if diff < 0:
          single = np.pad(single, (0, -diff), 'constant', constant_values=np.nan)
      elif diff > 0:
          many = np.pad(many, ((0, diff), ), 'constant', constant_values=np.nan)
      else:
          # No padding needed
          pass
      return np.c_[many, single]