code: def _block_shape(values, ndim=1, shape=None):
      
      if values.ndim < ndim:
          if shape is None:
              shape = values.shape
          if not is_extension_array_dtype(values):
              # TODO: https://github.com/pandas-dev/pandas/issues/23023
              # block.shape is incorrect for "2D" ExtensionArrays
              # We can't, and don't need to, reshape.
              values = values.reshape(tuple((1, ) + shape))
      return values
docs: guarantee the shape of the values to be at least 1 d