熊猫介绍
在本教程中,我將對熊貓進行基本介紹。 哦,我不是說動物熊貓,而是一個Python庫!
正如熊貓網站上所述:
pandas是BSD許可的開源庫,為Python編程語言提供了高性能,易于使用的數據結構和數據分析工具。因此, pandas是一個數據分析庫,其中包含我們需要的數據結構,以將原始數據清除為適合分析的形式(即表格)。 在此需要特別注意的是,由于pandas執行了重要的任務,例如對齊數據以進行比較和合并數據集,處理丟失的數據等,因此它已成為Python中高級數據處理的事實庫(即統計信息) )。 好吧, pandas最初是設計用來處理財務數據的,前提是常用的替代方法是使用電子表格(例如Microsoft Excel)。
pandas的基本數據結構稱為DataFrame ,它是具有名稱和類型的列的有序集合,因此看起來像一個數據庫表,其中單行代表一個案例(示例),而列代表特定的屬性。 在此應注意,各個列中的元素可以是不同的類型。
因此,最重要的是pandas庫為我們提供了數據分析所需的數據結構和功能。
安裝熊貓
現在讓我們看看如何在機器上安裝pandas并將其用于數據分析。 安裝pandas并避免任何依賴關系問題的最簡單方法是使用pandas隨附的Anaconda 。 如Anaconda下載頁面所述 :
Anaconda是一個完全免費的Python發行版(包括用于商業用途和重新發行)。 它包含超過400種最流行的Python軟件包,用于科學,數學,工程和數據分析Anaconda發行版是跨平臺的,這意味著它可以安裝在OS X , Windows和Linux機器上。 由于要在Mac OS X El Capitan機器上工作,因此我將使用OS X安裝程序,但是您當然可以為您的操作系統選擇合適的安裝程序。 我將使用圖形安裝程序(請注意,它是339 MB)。
Anaconda Mac OS X圖形安裝程序 下載安裝程序后,只需簡單地完成簡單的安裝向導步驟即可,一切就緒!
現在,要使用pandas我們需要做的就是導入軟件包,如下所示:
import pandas as pd熊貓數據結構
我已經提到了以上三個pandas數據結構之一,即DataFrame 。 除了其他pandas數據結構Series之外,我還將在本節中描述此數據結構。 還有另一個名為Panel數據結構,但是由于本文檔中提到的使用頻率不高,因此在本教程中將不對其進行描述。 DataFrame是2D數據結構, Series是1D數據結構, Panel是3D和更高版本的數據結構。
數據框
DataFrame是一種表格數據結構,由有序的列和行組成。 為了使事情更清楚,讓我們看一個從list 字典創建DataFrame (表)的示例。 以下示例顯示了一個字典,該字典由兩個鍵Name和Age以及它們對應的值列表組成。
import pandas as pd import numpy as npname_age = {'Name' : ['Ali', 'Bill', 'David', 'Hany', 'Ibtisam'], 'Age' : [32, 55, 20, 43, 30]} data_frame = pd.DataFrame(name_age) print data_frame如果運行上面的腳本,則應該獲得類似于以下內容的輸出:
請注意, DataFrame構造函數按字母順序對列進行排序。 如果要更改列的順序,可以在上面的data_frame下鍵入以下內容:
data_frame_2 = pd.DataFrame(name_age, columns = ['Name', 'Age'])要查看結果,只需鍵入: print data_frame_2 。
假設您不想使用默認標簽0、1、2,...,而是要使用a,b,c,...。 在這種情況下,您可以在上面的腳本中使用index ,如下所示:
data_frame_2 = pd.DataFrame(name_age, columns = ['Name', 'Age'], index = ['a', 'b', 'c', 'd', 'e'])很好,不是嗎? 使用DataFrame ,我們可以看到表格形式的數據。
系列
Series是我要討論的第二個pandas數據結構。 Series是類似于表中列的一維(1D)對象。 如果要為名稱列表創建Series ,則可以執行以下操作:
series = pd.Series(['Ali', 'Bill', 'David', 'Hany', 'Ibtisam'], index = [1, 2, 3, 4, 5]) print series該腳本的輸出如下:
注意,我們使用index來標記數據。 否則,默認標簽將從0,1,2開始...
熊貓功能
在本節中,我將向您展示一些我們可以與DataFrame和Series一起使用的函數的示例。
首尾
函數head()和tail()使我們能夠查看數據樣本,尤其是當我們有大量條目時。 默認顯示的元素數為5,但是您可以返回所需的自定義數字。
假設我們有一個由20,000個隨機項目(數字)組成的Series :
import pandas as pd import numpy as np series = pd.Series(np.random.randn(20000))使用head()和tail()方法分別觀察前五個項和最后五個項,我們可以執行以下操作:
print series.head() print series.tail()該腳本的輸出應類似于以下內容(注意,由于我們正在生成隨機值,因此您可能具有不同的值):
加
讓我們以add()函數為例,我們將嘗試如下添加兩個數據幀 :
import pandas as pddictionary_1 = {'A' : [5, 8, 10, 3, 9], 'B' : [6, 1, 4, 8, 7]} dictionary_2 = {'A' : [4, 3, 7, 6, 1], 'B' : [9, 10, 10, 1, 2]} data_frame_1 = pd.DataFrame(dictionary_1) data_frame_2 = pd.DataFrame(dictionary_2) data_frame_3 = data_frame_1.add(data_frame_2) print data_frame_1 print data_frame_2 print data_frame_3上面腳本的輸出是:
您也可以只使用+運算符執行此加法過程: data_frame_3 = data_frame_1 + data_frame_2 。
描述
一個非常好的pandas函數是describe() ,它為我們的數據生成各種匯總統計信息。 對于上一節中的示例,讓我們執行以下操作:
print data_frame_3.describe()該操作的輸出將是:
更多資源
這只是Python pandas表面的一小部分。 有關更多詳細信息,您可以查看pandas 文檔 ,也可以查看一些書籍,例如Learning Pandas和Mastering Pandas 。
結論
科學家有時需要進行一些統計運算,并顯示一些整齊的圖,要求他們使用編程語言。 但是,與此同時,他們并不想在執行此類任務時花費過多的時間或面臨嚴重的學習困難。
正如我們在本教程中所看到的, pandas使我們能夠以表格形式表示數據并以非常簡單的方式對這些表執行一些操作。 通過將pandas與其他Python庫相結合,科學家甚至可以執行更高級的任務,例如為數據繪制專門的圖形。
因此, pandas對于科學家,經濟學家,統計學家以及愿意執行某些數據分析任務的任何人來說都是一個非常有用的庫和起點。
翻譯自: https://code.tutsplus.com/tutorials/introducing-pandas--cms-26514
總結
- 上一篇: db2的驱动程序为db2jcc4-1.6
- 下一篇: 数据结构——错误一览(概念类)