帶你一起盤點,Pandas1.0的主要功能

2021-01-08 讀芯術

全文共2252字,預計學習時長7分鐘

來源:Pexels

注意:Pandas 1.0.0rc已於1月9日發布,先前的版本為0.25。

Pandas首個全新主要發行版本包含許多重要功能:更完善的數據框自動匯總、更全面的輸出格式、全新的數據類型以及文檔站點。

在全新的文檔站點上,可以找到完整的發行說明,但小芯認為,技術含量較低的概述也會有所幫助。

用戶可以使用 pip升級Pandas,以便使用其新版本。在撰寫本文時,Pandas1.0仍然是候選版本,這意味著要安裝Pandas1.0需要明確指定其版本。

pip install --upgradepandas==1.0.0rc0

當然,更新可能會破壞某些代碼,因為這是主要版本的發布,因此請務必小心!

此版本的Pandas不再支持Python 2。運行Pandas 1.0+至少需要Python 3.6+,因此請確保使用合適版本的pip 和python。

$ pip --versionpip 19.3.1 from /usr/local/lib/python3.7/site-packages/pip (python 3.7)$ python--versionPython 3.7.5

用戶可以確認一切正常,並且Pandas使用的是正確版本。

>>> import pandas as pd>>> pd.__version__1.0.0rc0

使用DataFrame.info更好的自動匯總

來源:Pexels

筆者最喜歡的新功能是優化之後的DataFrame.info法。現在,它使用了更具可讀性的格式,從而使數據探索過程更加容易。

>>> df = pd.DataFrame({...: 'A': [1,2,3],...: 'B': ["goodbye","cruel", "world"],...: 'C': [False, True, False]...:})>>> df.info()<class 'pandas.core.frame.DataFrame'>RangeIndex: 3 entries, 0 to 2Data columns (total 3 columns):# Column Non-Null Count Dtype--- - ---- 0 A 3 non-null int641 B 3 non-null object2 C 3 non-null objectdtypes: int64(1), object(2)memory usage: 200.0+ bytes

Markdown表的輸出格式

其次,筆者最喜歡的功能是使用新的 DataFrame.to_markdown 法將數據幀導出到Markdown表中。

>>> df.to_markdown()| | A | B | C ||---:|----:|:---|:-|| 0 | 1 | goodbye | False || 1 | 2 | cruel | True || 2 | 3 | world | False |

這樣一來,通過github gists在Medium等地方顯示表格更加便捷。

booleans and strings的新數據類型

來源:Pexels

Pandas1.0還為booleans and strings引入了實驗數據類型。

由於這些更改是實驗性的,數據類型的API可能會稍有更改,因此應謹慎使用。但是Pandas建議在合理的地方使用這些數據類型,將來的版本將完善諸如regex匹配之類的特定於類型的操作性能。

默認情況下,Pandas不會自動將數據強制轉換為這些類型。但是,如果明確指示Pandas,仍然可以使用它們。

>>> B =pd.Series(["goodbye", "cruel", "world"],dtype="string")>>> C = pd.Series([False, True, False], dtype="bool")>>> df.B = B, df.C = C>>> df.info()<class 'pandas.core.frame.DataFrame'>RangeIndex: 3 entries, 0 to 2Data columns (total 3 columns):# Column Non-Null Count Dtype--- - ---- 0 A 3 non-null int641 B 3 non-null string2 C 3 non-null booldtypes: int64(1), object(1), string(1)memory usage: 200.0+ bytes

注意Dtype列現在如何反應新類型的string和bool。

新字符串dtype最實用的優勢在於,可以從DataFrame中選擇string列。這樣可以更快地僅對數據集的文本成分進行分析。

df.select_dtypes("string")

以前,只能通過顯式使用其名稱來選擇string類型列。

從今天開始,掌握Pandas 1.0的主要功能,全新優化開啟使用吧~

留言點讚關注

我們一起分享AI學習與發展的乾貨

如轉載,請後臺留言,遵守轉載規範

相關焦點

  • 玩轉Pandas,讓數據處理更easy系列5
    系列回顧玩轉Pandas系列已經連續推送4篇,儘量貼近Pandas的本質原理,結合工作實踐,按照使用Pandas的邏輯步驟,系統地並結合實例推送Pandas的主要常用功能
  • Pandas時間序列詳解 | 輕鬆玩轉Pandas(6)
    教你學會 Pandas 不是我的目的,教你輕鬆玩轉 Pandas 才是我的目的。我會通過一系列實例來帶入 Pandas 的知識點,讓你在學習 Pandas 的路上不再枯燥。聲明:我所寫的輕鬆玩轉 Pandas 教程都是免費的,如果對你有幫助,你可以持續關注我。
  • 十分鐘學習pandas!pandas常用操作總結!
    學習Python, 當然少不了pandas,pandas是python數據科學中的必備工具,熟練使用pandas是從sql boy/girl 跨越到一名優秀的數據分析師傅的必備技能。這篇pandas常用操作總結幫大家回顧下pandas的常用語法,尤其是我們分析數據時常用的方法。
  • Pandas的介紹與基本使用
    2、Pandas能幹什麼Pandas的主要功能:具備對應其功能的數據結構DataFrame,Series集成時間序列功能提供豐富的數學運算和操作靈活處理缺失數據.....因為在pandas當中使用整數索引取值是優先以標籤解釋的,而不是下標sr1[1]解決方法:loc屬性 # 以標籤解釋iloc屬性 # 以下標解釋sr1.iloc[1] # 以下標解釋sr1.loc[3] # 以標籤解釋3.1.6、Series數據對齊pandas
  • Pandas萬花筒:讓繪圖變得更美觀
    筆者常用 Pandas 的繪圖功能快速地執行一些可視的數據探索,但在介紹數據洞察時,我會使用「更美觀」的繪圖庫(如 Plotly 或 Bokeh )來重做可視化。自最新的 Pandas 版本0.25.3發布後,無需這樣做了,現在我們可以使用第三方可視化庫作為 Pandas 繪圖功能的後端。
  • 一張圖就能徹底搞定Pandas
    昨天在面向GitHub編程時,無意發現了Pandas官方竟提供了同款小抄,項目地址如下https://github.com/pandas-dev/pandas/blob/master/doc/cheatsheet/Pandas_Cheat_Sheet.pdf
  • Pandas文本數據處理 | 輕鬆玩轉Pandas(4)
    前文回顧:Pandas缺失值處理 | 輕鬆玩轉Pandas(3)Pandas基本功能詳解 | 輕鬆玩轉Pandas(2)Pandas數據結構詳解 | 輕鬆玩轉Pandas(1)內容目錄1. 為什麼要用str屬性2.
  • 如何通過一頓飯來說明NumPy與pandas的功用
    縱然NumPy與pandas風靡於數據分析任務,人們對其的不足也多有指出,其中最主要的便是由於Python自身的動態語言特性而帶來的運行速度方面的損失,其次便是Python在大數據處理方面(數G甚至幾十上百G)的捉襟見肘。對於前者,NumPy已經做了相當程度的優化,可以對大數組的數據進行高效處理。
  • 精通Pandas,從零基礎到中級運用,看這一篇就夠了
    Pandas它是一個核心包,裡面有很多其他包的附加功能。它的好處在於你可以只用pandas語法,但是卻擁有好幾人的功力,就跟天龍八部的慕容復一樣。pandas就像Python中的Excel:它使用表格(即DataFrame)並對數據進行轉換操作。但它能做的事情其實還有很多。如果你已經熟悉Python,你可以直接進入第3段。
  • Pandas數據清洗系列:DataFrame.sample方法方法詳解
    從今天開始,我們開始更新pandas數據清洗系列。今天我們來學習pandas中的DataFrame.sample方法。pandas數據清洗系列開篇先介紹這個方法並沒有什麼特殊含義,主要是因為今天工作中剛好用到了這個方法。現在只不過是趁熱打鐵,將其整理成文而已。
  • PandaSQL:一個讓你能夠通過SQL語句進行pandas的操作的python包
    如果你熟練的使用SQL,那麼這篇文章將介紹一種更直接、簡單的使用Pandas處理大多數數據操作案例。假設你對SQL非常的熟悉,或者你想有更可讀的代碼。或者您只是想在dataframe上運行一個特殊的SQL查詢。或者,也許你來自R,想要一個sqldf的替代品。
  • Pandas官方文檔中文版PDF下載
    Pandas是一個強大的分析結構化數據的工具集;它的使用基礎是Numpy(提供高性能的矩陣運算);用於數據挖掘和數據分析,同時也提供數據清洗功能
  • 127、使用pandas讀取文本文件
    pandas提供了一些用於將表格型數據讀取為DataFrame對象的函數,其中常用read_csv和read_table讀取文件。0.png下面出現的例子中需要讀取的文件都存放在我自己的電腦 D:Pytho\notebookpydata-book-masterch06 中。
  • 快速介紹Python數據分析庫pandas的基礎知識和代碼示例
    為了能夠快速查找和使用功能,使我們在進行機器學習模型時能夠達到一定流程化。我創建了這個pandas函數的備忘單。這不是一個全面的列表,但包含了我在構建機器學習模型中最常用的函數。讓我們開始吧!生成的軸將被標記為編號series0,1,…, n-1,當連接的數據使用自動索引信息時,這很有用。append() 方法的作用是:返回包含新添加行的DataFrame。
  • Pandas GUI:如何輕鬆獲取Pandas數據幀?
    這些庫本質上是在hood中運行Pandas的功能,如SweetViz和Pandas profiling庫。· 基於GUI的Pandas替代品,如Bamboolib。最近,筆者發現了另一個基於GUI的Pandas替代,叫做PandasGUI。它具有繪製數據幀以及重新構建數據幀的功能,用戶也可以進行任意自定義操作。
  • pandas數據可視化原來也這麼厲害
    比如這個圖,就非常厲害:畫圖神器pyecharts-旭日圖Pandas:而今天要講的是Pandas的可視化,Pandas主要作為數據分析的庫,雖然沒有上述三個庫那個強大,但是勝在方便,在數據分析的過程中,只要一行代碼就能實現。並且圖形也非常漂亮。
  • 太強了,1行python代碼幹了妹子一天的工作
    於是我馬上想到了pandas,想著這麼強大的函數肯定有這個功能,於是我開始翻閱資料,沒想到還真找到了,而且僅用三行代碼就搞定了,驚的朋友直呼python牛批下面個大家詳細介紹一下整個過程1.正確讀取表格首先按照傳統的方式讀表格:import pandas as pddata1 = pd.read_excel('高中生數量.xlsx')data1
  • Pandas進階Excel【六】——排序
    import pandas as pddf = pd.read_excel(r"C:\Users\Administrator\Desktop\火影忍者\pandas庫\火影忍者.xlsx",sheet_name = 1)df2 = df.sort_values(by = ["體術"],ascending = True)print
  • 1 行 Python 代碼幹了妹子一天的工作
    於是我馬上想到了pandas,想著這麼強大的函數肯定有這個功能,於是我開始翻閱資料,沒想到還真找到了,而且僅用三行代碼就搞定了,驚的朋友直呼python牛批下面個大家詳細介紹一下整個過程1.正確讀取表格首先按照傳統的方式讀表格:import pandas as pddata1 = pd.read_excel('高中生數量.xlsx')data1
  • Python基礎 | pandas.dataframe 專題使用指南
    6.選擇不連續的某幾行或某幾列1.concat,concat([df1,df2,...],axis=0)axis= 0 按行檢查缺失;1 按列檢查缺失。了解更多panel的操作可參考:http://pandas.pydata.org/pandas-docs/stable/api.html#panel2.panel類型數據分解成dataframe方法