class_docstr: Shifts an array of values by a specified number of periods.
  
  Args:
      periods (int): The number of periods by which to shift the input.
          Default is 1. Periods correspond to rows.
  
      fill_value (int, float, optional): The value to use to fill in
          the gaps left after shifting the input. Default is None.
  
  Examples:
      >>> lag = NumericLag()
      >>> lag(pd.Series(pd.date_range(start="2020-01-01", periods=5, freq='D')), [1, 2, 3, 4, 5]).tolist()
      [nan, 1.0, 2.0, 3.0, 4.0]
  
      You can specify the number of periods to shift the values
  
      >>> lag_periods = NumericLag(periods=3)
      >>> lag_periods(pd.Series(pd.date_range(start="2020-01-01", periods=5, freq='D')), [1, 2, 3, 4, 5]).tolist()
      [nan, nan, nan, 1.0, 2.0]
  
      You can specify the fill value to use
  
      >>> lag_fill_value = NumericLag(fill_value=100)
      >>> lag_fill_value(pd.Series(pd.date_range(start="2020-01-01", periods=4, freq='D')), [1, 2, 3, 4]).tolist()
      [100, 1, 2, 3]
code: def get_function(self):
      def lag(time_index, numeric):
          x = pd.Series(numeric.values, index=time_index.values)
          return x.shift(
              periods=self.periods, fill_value=self.fill_value
          ).values
  
      return lag
  
file_path: featuretools/featuretools/primitives/standard/transform/time_series/numeric_lag.py
imports: import warnings
  import pandas
  from woodwork.column_schema import ColumnSchema
  from featuretools.primitives.base import TransformPrimitive
label_desc: Use image node_id 2 for calling the NumericLag obj's underlying member method code with example usage: obj.get_function() and returns: lag, x