code: def lag(col, offset=1, default=None):
      
      sc = SparkContext._active_spark_context
      return Column(sc._jvm.functions.lag(_to_java_column(col), offset, default))
docs: Window function: returns the value that is `offset` rows before the current row, and
      `defaultValue` if there is less than `offset` rows before the current row. For example,
      an `offset` of one will return the previous row at any given point in the window partition.
  
      This is equivalent to the LAG function in SQL.
  
      :param col: name of column or expression
      :param offset: number of row to extend
      :param default: default value