開眼界!Python的pandas輕鬆做出Excel能手動篩選透視表的效果



但是這遠遠不夠,想看不同年份或不同 Top N 的結果,都需要修改代碼。

我們稍微加工一下這個過程,定義一個函數:

開眼界!Python的pandas輕鬆做出Excel能手動篩選透視表的效果

  • 現在好一些,但是改變條件仍然需要修改代碼

簡單加上一個裝飾器即可:

開眼界!Python的pandas輕鬆做出Excel能手動篩選透視表的效果

  • 行1:@wg.interact 是一個裝飾器,打到我們的自定義函數上
  • 其中每個命名參數為自定義函數上的參數
  • x_df=wg.fixed(df) ,表示 x_df 參數使用變量 df,並且這個參數是不需要改變的。因此界面上就沒有這個變量的選項
  • year=[2015,2016,2017,2018] ,年份有4種選擇,此時界面上看到一個 year 的下拉框供用戶點選
  • topn=range(1,11) ,topn 有10種選擇,界面同樣可以看到下拉框
  • 現在,我們只需要簡單從下拉框選擇條件值,下方的結果會馬上刷新,這與 Excel 中的透視表一模一樣

不過,大家都知道 Excel 中還能根據透視表製作透視圖,這裡我們同樣可以製作出動態變化的圖表

開眼界!Python的pandas輕鬆做出Excel能手動篩選透視表的效果

開眼界!Python的pandas輕鬆做出Excel能手動篩選透視表的效果

  • 行13,14:使用 display 方法,輸出內容即可


開眼界!Python的pandas輕鬆做出Excel能手動篩選透視表的效果


總結

接下來,我將會講解關於小組件的應用系列,他在 Python 數據探索和數據可視化方面,能做出很多有趣的事情,敬請關注!

需要源碼的小夥伴請轉發本文並私信我"python"


如果希望從零開始學習 pandas ,那麼可以看看我的 pandas 專欄。


分享到:


相關文章: