>>> from snowflake.snowpark.window import Window
>>> df = session.create_dataframe(
... [
... [1, 2, 1],
... [1, 2, 3],
... [2, 1, 10],
... [2, 2, 1],
... [2, 2, 3],
... ],
... schema=["x", "y", "z"]
... )
>>> df.select(lead("Z").over(Window.partition_by(col("X")).order_by(col("Y"))).alias("result")).collect()
[Row(RESULT=1), Row(RESULT=3), Row(RESULT=None), Row(RESULT=3), Row(RESULT=None)]