這幾天在閱讀python的pandas庫。現在還在閱讀第二章的內容,在第二章中又乙個例項,有乙個關於電影資料的資料集,然後,我們對它做一些簡單的分析,做個今天學習的總結。
part 1讀取資料
首先使用的是pandas的read_table函式,函式主要又以下幾個引數:
filepath_or_buffer:該引數主要是要讀取資料集的路徑
sep : 該引數主要是用來在讀取檔案時候,遇到分隔符時讀取不同的資料。
headers:在pandas的文件中的定義如下:
一般使用的時候都是將這個引數設為none,如果把它設為0的時候,它就會從第二個資料開始讀入。所以傳入乙個整數n的時候,我一般是理解成它是都從n+2開始讀取資料(這裡沒有考慮資料集剛開始有無關元素的情況)。傳入乙個list的時候沒有試過,這裡就不敢亂說。
names: 這個引數主要是乙個list用來儲存列對應的名字。
engine : 這個引數書中是沒有設定的,但是編譯的過程老是有個warning。用於設定使用那個解析器引擎。
讀取檔案的使用使用到的主要是這樣幾個引數。
part 2兩個data frame進行merge操作
關於兩項資料的合併操作感覺和資料庫中的概念差不多,如果直接使用pandas.merge(dataframe1,dataframe2)就會自動把根據兩項資料中含有相同的列名字來進行合併。還可以通過on引數來指明根據某一列或者某幾列來進行合併。經過這一步,它就可以把來自不同的幾個資料集進行合併操作。
part 3對資料進行分析
根據不同性別來統計各個電影的評分
這裡主要使用的乙個函式是pivot_table() 這裡需要說明的是原書中這裡有乙個錯誤,引數使用錯誤。參閱文件我們可以知道pivot_table函式的原型如下
這裡主要說一下我對這個函式各個引數的理解。
data: 主要指的是使用的哪乙個資料。
values: 指需要對哪一列的值進行聚合,在書中的問題,由於要統計各個電影的評分,所以需要聚合的資料是『rating』列
index: 這個引數主要用於對它進行分組,在書中使用的」title」引數,什麼意思呢?我們需要對電影的評分進行乙個統計,這裡針對的某一部電影的統計,所以這裡需要按電影的名字分組。
columns: 指生成的新的資料**的列的名字是什麼。在書中需要對不同的性別對電影評分的統計,那麼它就需要根據原資料中的『』gender」來對它進行分類。
aggfunc: 指使用的何種函式對資料進行統計。
對於這個函式,就可以這樣理解嘛!首先你要說明你對哪個dataframe進行操作,也就是對第乙個引數data的賦值。之後呢,你就需要選擇對哪乙個元素進行統計,最後的值是要成為新的dataframe內的值的,這個值就是value引數指定使用哪一列計算的。下一步呢,你需要指定說明你這個新的dataframe的行和列是什麼,對於不同的情況,你就要考慮你最後需要產生的行和列是什麼。這樣就可以把該dataframe的資料進行某些統計和分析。
part 4進一步分析
到上面為止,我們就對資料進行了一些簡單的分析,統計不同性別對電影的評分。為了把我們做的更加科學一點,我們會在統計的時候,設定一些條件,例如,對於某個電影的評價的人太少了,那它最後的評分可能就沒有什麼意義了。這裡就又使用到了groupby()這個函式,以及index的東西,但是後面的自己沒有進行多少實踐,也沒什麼特別的感受,所以這裡就不繼續分享了。
總結:今天呢主要是開始看python的pandas庫,主要就學到了read_table()、merge()、pivot_table()這幾個函式的用法,雖然是一些相對簡單的函式,但是,就這幾個函式還是可以對資料進行一些比較簡單的分析的。(ง •_•)ง後面還有很多知識!要繼續學習。
Pandas學習筆記(1)
1 pandas簡介 pandas 是基於numpy 的一種工具,該工具是為了解決資料分析任務而建立的。pandas 納入了大量庫和一些標準的資料模型,提供了高效地操作大型資料集所需的工具。pandas提供了大量能使我們快速便捷地處理資料的函式和方法。你很快就會發現,它是使python成為強大而高效...
Effective C 閱讀筆記(1)
關鍵字 explicit 用於告知編譯器,該建構函式可以用於完成隱式型別轉換 implicit type conversation 建議 除非有乙個很好的理由,否則將建構函式申明為 explicit!c 是乙個由多個次語言組成的語言聯邦 c 風格 物件導向的c 泛型c stl c 不同的次語言尤其各...
《effective c 》閱讀筆記 1
之前閱讀一部分 effective c 作為一本被眾多讀者所推薦的書自然有它的獨特的魅力所在。在 過一部分該書的一部分內容之後,不由的覺得該書確實是集c 精華於一身,同時還加以科普了很多相對來說在一般老式課本難以見到的語法和語句,如智慧型指標等用法,並舉出例項將該其與其他語法相對而言的優點凸顯出來。...