pyspark.sql.Window.rowsBetween

靜態 窗口。 rowsBetween ( 開始:int,結束:int )→pyspark.sql.window.WindowSpec

創建一個WindowSpec與幀邊界定義,開始(包容)結束(包容)。

這兩個開始結束從當前行相對位置。例如,“0”意味著“當前行”,而“1”是指行當前行之前,“5”是指第五行後當前行。

我們建議用戶使用Window.unboundedPreceding,Window.unboundedFollowing,Window.currentRow指定特殊的邊界值,而不是直接使用積分值。

基於連續邊界的位置排在分區。一個偏移量顯示的行數高於或低於當前行,框架為當前行開始或結束。例如,給出一個基於行滑動框架綁定抵消較低的1 + 2的上界抵消。連續的幀索引5將從指數4指數7。

參數
開始 int

邊界開始,包容。如果這是框架是無界的Window.unboundedPreceding,或任何值小於或等於-9223372036854775808。

結束 int

邊界,包容性。如果這是框架是無界的Window.unboundedFollowing,或任何價值大於或等於9223372036854775807。

例子

> > >pyspark.sql進口窗口> > >pyspark.sql進口功能作為函數> > >pyspark.sql進口SQLContext> > >sc=SparkContextgetOrCreate()> > >sqlContext=SQLContext(sc)> > >錘頭=((1,“一個”),(1,“一個”),(2,“一個”),(1,“b”),(2,“b”),(3,“b”)]> > >df=sqlContextcreateDataFrame(錘頭,(“id”,“類別”])> > >窗口=窗口partitionBy(“類別”)orderBy(“id”)rowsBetween(窗口currentRow,1)> > >dfwithColumn(“和”,函數總和(“id”)(窗口))排序(“id”,“類別”,“和”)顯示()+ - - - + - - - - - - - - - - + - - - +| |和| |類別id+ - - - + - - - - - - - - - - + - - - +| 1 | | 2 || 1 | | 3 || 1 | 2 | 3 || 2 | | 2 || 2 | b | 5 || 3 | b | 3 |+ - - - + - - - - - - - - - - + - - - +