11.?class pyspark.sql.Window
用于在DataFrame中定義窗口的實(shí)用函數(shù)。
window=Window.partitionBy("country").orderBy("date").rowsBetween(-sys.maxsize,0)
11.1 static orderBy(*cols)
用定義的順序創(chuàng)建一個(gè)WindowSpec丸逸。
11.2 static partitionBy(*cols)
用定義的分區(qū)創(chuàng)建一個(gè)WindowSpec蝗碎。
In [426]: from pyspark.sql.window import Window
In [427]:? w =? Window.partitionBy(df.name).orderBy(df.age)
11.?class pyspark.sql.WindowSpec(jspec)
定義分區(qū),排序和框邊界的窗口規(guī)范剥悟。
使用Window中的靜態(tài)方法創(chuàng)建一個(gè)WindowSpec
11.3 orderBy(*cols)
定義WindowSpec中的排序列灵寺。
參數(shù):●?cols?– 列或表達(dá)式的名稱
11.4 partitionBy(*cols)
定義WindowSpec中的分區(qū)列曼库。
參數(shù):● cols – 列或表達(dá)式的名稱
11.5 rangeBetween(start, end)
定義從開始(包含)到結(jié)束(包含)的框邊界。
start, end都是相對(duì)于當(dāng)前行略板。 例如毁枯,“0”表示“當(dāng)前行”,而“-1”表示在當(dāng)前行之前一次叮称,“5”表示當(dāng)前行之后五次關(guān)閉种玛。
參數(shù):●start?– 開始邊界(包括)。 如果這是-sys.maxsize(或更低)瓤檐,則該框架是無(wú)限的赂韵。
? ? ? ? ? ?●?end?– 結(jié)束邊界(包括)。如果這是sys.maxsize(或更高)挠蛉,則該框架是無(wú)限的祭示。
11.6 rowsBetween(start, end)
定義從開始(包含)到結(jié)束(包含)的框邊界。
start, end都是相對(duì)于當(dāng)前行谴古。 例如质涛,“0”表示“當(dāng)前行”,而“-1”表示在當(dāng)前行之前一次讥电,“5”表示當(dāng)前行之后五次關(guān)閉蹂窖。
參數(shù):●start?– 開始邊界(包括)。 如果這是-sys.maxsize(或更低)恩敌,則該框架是無(wú)限的瞬测。
????????????●?end?– 結(jié)束邊界(包括)。如果這是sys.maxsize(或更高)纠炮,則該框架是無(wú)限的月趟。