欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

Python庫Pandas《Pandas Cookbook》第03章 數據

系統 2023 0

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

文章目錄

  • 1.規劃數據分析路線
  • 2.改變數據類型,降低內存消耗
  • 3.從最大中選擇最小
  • 4.通過排序選取每組的最大值
  • 5.用sort_values復現nlargest方法
  • 6.計算跟蹤止損價格

1.規劃數據分析路線

這一部分主要是用describe()結合它的include參數,顯示導入數據的一些基本信息,顯示所用的函數不是常用的print(),而是IPython庫的display()

            
              import pandas as pd
import numpy as np
from IPython.display import display
pd.options.display.max_columns = 50

            
          

Python庫Pandas《Pandas Cookbook》第03章 數據分析入門_第1張圖片

2.改變數據類型,降低內存消耗

這段主要用到了一個函數——memory_usage(deep=True),用來計算導入數據所占的內存,而如果某個column的數據類型可以修改為占內存更小的數據類型,那就能進一步降低內存消耗

            
              #選取五列
college = pd.read_csv('data/college.csv')
different_cols = ['RELAFFIL','SATMTMID','CURROPER','INSTNM','STABBR']
col2 = college.loc[:,different_cols]
col2.head()

#查看數據類型
col2.dtypes

# 用memory_usage方法查看每列的內存消耗
original_mem = col2.memory_usage(deep=True)
original_mem

            
          

Python庫Pandas《Pandas Cookbook》第03章 數據分析入門_第2張圖片

我們可以通過astype()對column的數據類型進行轉換,當然不能隨便轉換,要先確定是否占內存更小的數據類型可以表示其整列值——比如RELAFFIL原來是int64,但是它整列值都是0/1,所以完全可以用int8來表示;再看STABBR,是object類型,但是它的值只有59個是不同的,那么就可以用category來表示,category類似于tensorflow的one_hot編碼,在這里就相當于將STABBR59分類了,這樣就比原來少占很多內存了。category的具體講解,可以看下面這篇博客 https://blog.csdn.net/FrankieHello/article/details/81220116
Python庫Pandas《Pandas Cookbook》第03章 數據分析入門_第3張圖片

修改完數據類型后內存占比
Python庫Pandas《Pandas Cookbook》第03章 數據分析入門_第4張圖片

pandas中規定,只要數值類型列,有缺失值,那么這一列的數據類型就是浮點型,所以不能強制轉換為整型,不然會報錯——ValueError: Cannot convert non-finite values (NA or inf) to integer
Python庫Pandas《Pandas Cookbook》第03章 數據分析入門_第5張圖片
Python庫Pandas《Pandas Cookbook》第03章 數據分析入門_第6張圖片

3.從最大中選擇最小

這段用到了兩個函數nlargest(n,column_name)和nsmallest(n,column_name),顧名思義,主要是獲取導入數據某一列值最大的前n個,某一列值最小的前n個,不需要排序
Python庫Pandas《Pandas Cookbook》第03章 數據分析入門_第7張圖片

4.通過排序選取每組的最大值

這段主要用了兩函數sort_values(columns_name,ascending)和drop_duplicates(columns_name),
sort_values主要用來排序,第一個參數是要排序的列名,如果有多列,需要傳入list類型,依次排序每一列;而第二個參數是決定使用降序還是升序的bool變量;
drop_duplicates()用來去除,第一個參數的含義和sort_values一樣。

Python庫Pandas《Pandas Cookbook》第03章 數據分析入門_第8張圖片

5.用sort_values復現nlargest方法

nlargest(n,)函數就是選取最大的前n個,而通過sort_values()降序排列,再通過head(n),我們能達到和nlargest()函數一樣的效果,但是可能選取的rows會有差異,因為最大值個數如果大于n的話,head(n)和nlargest(n)選取出來n個可能會有差別了,因為如何選擇n個的機制不一樣
Python庫Pandas《Pandas Cookbook》第03章 數據分析入門_第9張圖片

6.計算跟蹤止損價格

這里用到了一個新module——pandas_datareader
這個module是用來遠程獲取金融數據的,主要是從yahoo獲取(用google的源沒有獲取成功),用DataReader(公司,數據源,開始時間),對應的官方文檔
https://pandas-datareader.readthedocs.io/en/latest/

            
              import pandas_datareader as pdr

#查詢特斯拉在2017年第一天的股價
tsla = pdr.DataReader('tsla',data_source='yahoo',start='2017-1-1')
tsla.head(8)

#只關注每天的收盤價,使用cummax得到迄今為止的收盤價最大值
tsla_close = tsla['Close']
tsla_cummax = tsla_close.cummax()
tsla_cummax.head(8)

#將下行區間限制到10%,將tsla_cummax乘以0.9
tsla_trailing_stop = tsla_cummax * .9
tsla_trailing_stop.head(8)

#將上述功能包裝成一個函數
def set_trailing_loss(symbol,purchase_date,perc):
    close = pdr.DataReader(symbol,'yahoo',start=purchase_date)['Close']
    return close.cummax() * perc
tsla_close = set_trailing_loss('tsla','2017-6-2',.18)
tsla_cummax = tsla_close.cummax()
tsla_cummax.head(8)

            
          

Python庫Pandas《Pandas Cookbook》第03章 數據分析入門_第10張圖片


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

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

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

【本文對您有幫助就好】

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

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 男女激情爱爱 | 日韩在线操 | 午夜午夜精品一区二区三区文 | 亚色中文| 色婷婷久久久亚洲一区二区三区 | 水野朝阳128部合集在线 | 另类亚洲视频 | 26uuu.mobi| xxx 日本韩国| 精品国产一二三区 | 天天天天射 | 精品欧美一区二区在线观看欧美熟 | 色爱综合区五月小说 | 中文字幕人成乱码在线观看 | 日韩激情视频在线 | 亚洲毛片无码专区亚洲A片 日本高清www午色夜黄 | 国产成人精品永久免费视频 | 免费中文视频 | 九月色婷婷 | 国产成人一区二区三区 | 天天操天天射天天爽 | 黄色的视频免费观看 | 亚洲婷婷综合网 | 亚洲午夜精品A片久久不卡蜜桃 | 加勒比精品久久一区二区三区 | 91免费在线视频 | 亚洲h| 日韩三级在线播放 | 久久99国产精一区二区三区 | 国产人妻精品无码AV在线浪潮 | 国内精品免费视频 | 欧美激情视频一区二区三区在线播放 | 欧美日韩在线一区 | 久久亚洲这里只有精品18 | 免费国产一区 | 成人在线精品视频 | 国产一区二区三区久久久久久久久 | 114美女做爰视频在线 | 日本亚洲精品色婷婷在线影院 | 欧美狠狠操 | 一区在线视频 |