pyspark.pandas.DataFrame.nsmallest

DataFrame。 nsmallest ( n:int,:聯盟(任何元組(,…),列表(聯盟[任何元組[,…]]]],保持:str=“第一” )→pyspark.pandas.frame.DataFrame

返回第一個n行命令以升序排序。

返回第一個n行中最小的值以升序排序。指定的列不返回,但不是用於排序。

這個方法是等價的df.sort_values(列,提升= True) .head (n),但更多的性能。在pandas-on-Spark,多虧了火花的延遲執行和查詢優化器,兩個相同的性能。

參數
n int

要檢索條目的數量。

列表或str

列名稱或名稱的順序。

保持 {“第一”,“去年”},默認的“第一次”。“所有”還沒有實現。

確定哪些副本(如果有的話)。- - - - - -第一個:第一次出現。- - - - - -去年:保持最後發生。

返回
DataFrame

另請參閱

DataFrame.nlargest

返回第一個n行命令在降序排列。

DataFrame.sort_values

DataFrame排序的值。

DataFrame.head

返回第一個n行沒有重建創造條件。

例子

> > >df=psDataFrame({“X”:(1,2,3,5,6,7,np),“Y”:(6,7,8,9,10,11,12]})> > >dfX Y0 1.0 61 2.0 72 3.0 83 5.0 94 6.0 105 7.0 116南12

在接下來的例子中,我們將使用nsmallest選擇三排有最小的值列“X”。

> > >dfnsmallest(n=3,=“X”)X Y0 1.0 61 2.0 72 3.0 8

訂單的最小值列“Y”然後“X”,我們在下一個示例中可以指定多個列。

> > >dfnsmallest(n=3,=(“Y”,“X”])X Y0 1.0 61 2.0 72 3.0 8

下麵的例子展示如何解決的關係,這是決定保持

> > >tied_df=psDataFrame({“X”:(1,1,2,2,3)},指數=(“一個”,“b”,“c”,' d ',“e”])> > >tied_dfX一個1b 1c 2d 2e 3

當使用保持= '第一次'(默認情況下),關係是為了解決:

> > >tied_dfnsmallest(3,“X”)X一個1b 1c 2
> > >tied_dfnsmallest(3,“X”,保持=“第一”)X一個1b 1c 2

當使用保持= '最後',關係是解決在相反的順序:

> > >tied_dfnsmallest(3,“X”,保持=“最後一次”)Xb 1一個1d 2