亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

Python庫Pandas《Pandas Cookbook》第05章 BOOL

系統 2250 0

這是書籍《Pandas Cookbook》書籍第05章的代碼復現,所有代碼運行在Jupyter Notebook上,原講解地址是:
https://www.jianshu.com/p/d67080f59b06
我上傳代碼的github地址是:
https://github.com/Asunqingwen/PandasCookbook.git
github上有該書中用到的data,里面代碼會不定期更新(因為工作原因,時間不定),直到本書學習完成!
相比原講解,會穿插一些自己的理解,水平有限,請各路大神指正。

文章目錄

  • 1.計算BOOL值統計信息
  • 2.構建多個BOOL條件
  • 3.用BOOL索引過濾
  • 4.用標簽索引代替BOOL索引
  • 5.用唯一和有序索引選取
  • 6.觀察股價
  • 7.翻譯SQL的WHERE語句
  • 8.確定股票收益的正態值
  • 9.使用查詢方法提高BOOL索引的可讀性
  • 10.用where方法保留Series
  • 11.對DataFrame的行做mask
  • 12.使用BOOL值、整數、標簽進行提取

1.計算BOOL值統計信息

這段主要是先通過比較運算,將DataFrame和Series內的元素轉為BOOL類型,然后再進行響應的運算,得注意一下value_counts(normalize=True)這個函數,本來是統計個數的,加上normalize參數后,就變為統計頻率了,之前第01章也有用到
Python庫Pandas《Pandas Cookbook》第05章 BOOL索引_第1張圖片

2.構建多個BOOL條件

這段主要是多個條件比較,對應多個基于BOOL變量的數據結構,而多個BOOL條件也可以用位運算符組合
Python庫Pandas《Pandas Cookbook》第05章 BOOL索引_第2張圖片

3.用BOOL索引過濾

結合BOOL條件,DataFrame之類的數據結構可以進行過濾,將符合BOOL條件的數據過濾出來
Python庫Pandas《Pandas Cookbook》第05章 BOOL索引_第3張圖片

BOOL條件也可以結合loc來進行過濾
Python庫Pandas《Pandas Cookbook》第05章 BOOL索引_第4張圖片

4.用標簽索引代替BOOL索引

這段先是設置索引,然后通過loc來對相應的索引進行選擇,對比運行時間,雖然設置索引會很費時間,但是索引只用設置一次,后面用loc來操作就快了
Python庫Pandas《Pandas Cookbook》第05章 BOOL索引_第5張圖片

5.用唯一和有序索引選取

對比四種索引方式的運行時間——BOOL索引、無序行索引、有序行索引、唯一行索引,如果不算前期處理操作,四種索引方式的消耗時間依次減少
Python庫Pandas《Pandas Cookbook》第05章 BOOL索引_第6張圖片
Python庫Pandas《Pandas Cookbook》第05章 BOOL索引_第7張圖片
在這里插入圖片描述

6.觀察股價

選取股票收盤價最高和最低的10%
Python庫Pandas《Pandas Cookbook》第05章 BOOL索引_第8張圖片

用了matplotlib中的plot()和hlines()函數——先用plot()將所有的收盤價在坐標軸中用黑色曲線繪制,然后用plot()單獨將收盤價最高和最低的10%部分用灰色繪制,最后通過hlines()繪制水平直線,區分最高和最低的%10同其他區域
Python庫Pandas《Pandas Cookbook》第05章 BOOL索引_第9張圖片

這里不同于上面用曲線顏色來區分,主要是區域填充不同顏色來區分——fill_between()可以在指定區域內用不同的顏色來區分,先將所以區域用黑色填充,然后將最高和最低的10%區域用灰色填充
Python庫Pandas《Pandas Cookbook》第05章 BOOL索引_第10張圖片

7.翻譯SQL的WHERE語句

這段沒啥特殊,主要是看下導入數據的基本信息,有一個地方需要注意的是:列名也可以作為導入數據的屬性,調用對應的屬性名,可以獲取對應列數據
Python庫Pandas《Pandas Cookbook》第05章 BOOL索引_第11張圖片

主要是解釋下sql語句——先從EMPLOYEE表中選取薪水80000-120000的人住的DEPARTMENT(這里應該還少了WHERE條件,即過濾出80000-120000的人),然后將DEPARTMENT分組,并降序排列,選出前5條數據;之后將這5條數據的DEPARTMENT屬性提取出來,然后從EMPLOYEE表中選取不屬于這5個DEPARTMENT的數據
Python庫Pandas《Pandas Cookbook》第05章 BOOL索引_第12張圖片

8.確定股票收益的正態值

這里主要涉及到了pct_change()函數——計算當前元素與先前元素相差的百分比,axis參數可以調整按行還是按列計算
Python庫Pandas《Pandas Cookbook》第05章 BOOL索引_第13張圖片

經過z-score處理后,數據其實進行了標準化,使得數據整體分布符合標準正態分布
Python庫Pandas《Pandas Cookbook》第05章 BOOL索引_第14張圖片

9.使用查詢方法提高BOOL索引的可讀性

查詢語句邏輯上有點類似于人腦的查詢邏輯,都是很直白的表述,只是如果要用到變量,就需要@符號來獲取變量的值
Python庫Pandas《Pandas Cookbook》第05章 BOOL索引_第15張圖片

10.用where方法保留Series

當我們用BOOL條件作為索引時,如果是[]運算符索引,索引出的數據會去掉符合False條件的數據,size可能比原數據小;如果用where()函數索引,索引除的數據會將符合False條件的數據用缺失值NaN代替,size和原數據一樣大,如果不想用NaN代替,可以設置other參數,用指定的數據代替
Python庫Pandas《Pandas Cookbook》第05章 BOOL索引_第16張圖片

clip()函數效果等同于上面BOOL條件索引和where()的結合
Python庫Pandas《Pandas Cookbook》第05章 BOOL索引_第17張圖片

11.對DataFrame的行做mask

mask()函數會得到BOOL條件中符合False的結果,注意看BOOL條件,以及輸出結果中title_year的數值
Python庫Pandas《Pandas Cookbook》第05章 BOOL索引_第18張圖片

通過BOOL條件,選出和mask一樣的結果,但是兩者結果不等,shape一樣,因為mask方法會產生許多缺失值NaN,而NaN是不等于本身的,且數值類型的NaN統一變為浮點型
Python庫Pandas《Pandas Cookbook》第05章 BOOL索引_第19張圖片

利用pandas對象專有比較函數,就能判斷mask和BOOL條件得出的兩個對象是相等的
通過運行時間對比,利用BOOL條件索引的速度遠遠快于利用mask()函數的索引速度

Python庫Pandas《Pandas Cookbook》第05章 BOOL索引_第20張圖片

12.使用BOOL值、整數、標簽進行提取

loc是可以直接使用BOOL條件的,但是iloc是不能直接使用的
Python庫Pandas《Pandas Cookbook》第05章 BOOL索引_第21張圖片

但是iloc可以使用BOOL條件的array模式
Python庫Pandas《Pandas Cookbook》第05章 BOOL索引_第22張圖片

BOOL條件的values屬性就是其對應的array模式了
Python庫Pandas《Pandas Cookbook》第05章 BOOL索引_第23張圖片


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦?。。?/p>

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 精品久久香蕉国产线看观看亚洲 | 亚洲国产精品yw在线观看 | 99热久久国产精品这里有99 | 久久久久免费 | 久久精品大片 | 逼毛片 | 天天干天天干天天色 | 中文字幕第一页亚洲 | 日日狠狠的日日日日 | 香港aa三级久久三级老师 | 成人久久久久久 | 日本毛片免费看 | 亚洲网站在线看 | 91精品久久久久亚洲国产 | 80岁老妇xxxxx高清 | 欧美性猛交xxx嘿人猛交 | 成人午夜久久精品 | 午夜影网 | 中国欧美一级毛片免费 | 三级成人做爰视频 | 日韩欧美国产卡通动漫 | 中文字幕久久综合伊人 | jizz成熟丰满老女人 | 亚洲青草视频 | 今天的恋爱未删减在线观看 | 成人午夜精品网站在线观看 | 色婷婷综合在线 | 亚洲精品国产第一区二区尤物 | 成人免费视频在线观看 | 五月开心六月伊人色婷婷 | 久久福利青草精品免费 | 久久久日本精品一区二区三区 | 国产精品成人一区二区三区 | 思99re久久这里只有精品首页 | 伊人久久99亚洲精品久久频 | 奇米777视频二区中文字幕 | 波多野结衣久久精品免费播放 | 婷婷色综合久久 | 天天操操操操操操 | 久久93精品国产91久久综合 | 狠狠色噜噜狠狠狠狠97不卡 |