您好,登錄后才能下訂單哦!
小編給大家分享一下pandas中有哪些不常用的函數功能,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
pandas 是我們常用的一個Python數據分析庫。其中有不少操作是我們平時很少用到的。如下:
數據源:
df
獲取某列的最小值:
df["數量"].min()
獲取最小值所對應的汽車品牌:
df[df["數量"] == df["數量"].min()]["品牌"].values[0]
獲取最大值同理。
然而,我們可以使用.idxmax() 或 idxmin() 函數來更優雅得實現以上功能:
df.loc[df["數量"].idxmin()]["品牌"]
可見,所得結果一致,并且語句顯得更加簡短優雅。
用 .cut() 函數將數據區間 [10,80] 均等地分成10份,等差為 (80 - 10) / 10 = 7.
pd.cut(df["數量"],10)
查看當前數據所屬的劃分區間:
pd.cut(df["數量"],10,labels = False)
比如獲取數量最小的前3條記錄:
df[["國家", "品牌", "數量"]].nsmallest(3, "數量")
再跟常用的方法對比一下,如下:
df.sort_values(by = "數量",ascending = True).head(3)
注意事項:.nsmallest() 或 .nlargest() 參數里的篩選條件一定要包好在所抽取出來的DataFrame里面。
4.1 普通的篩選求和:
df[(df["國家"] == "中國") & (df["品牌"] == "五菱")]["數量"].sum()
4.2 pivot_table
pd.pivot_table(df, values = "數量", index = "品牌", columns = "國家", aggfunc = "sum").fillna(0)
4.2 pivot_table + unstack
pd.pivot_table(df, values = "數量", index = "品牌", columns = "國家", aggfunc = "sum").fillna(0).unstack()
以上是“pandas中有哪些不常用的函數功能”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。