資料分析系列教程之pandas(一)
之前講了資料分析numpy庫,今天開始講資料分析教程pandas庫,可以說,python在資料分析領域獨樹一幟,離不開pandas的強有力支撐,之前教程中也說過了,numpy主要處理數值型資料,pandas不但能處理數值型,字元型等也能處理,而且相比numpy,pandas會更好用,一般情況下,在工作中如果numpy和pandas的相同功能,我也可能用pandas更多些。
下面簡單截圖了一個拉勾招聘需求,讓大家有所瞭解資料分析工作的基本知識都要會哪些,工資就不必多提了,一般情況下,有2年真正的工作經驗,15K算是比較保底的了,技術要求的話,有numpy、pandas、scipy、sklearn還有一些機器學習演算法等,也都是該系列教程要一步步給大家講的,當然數學好的話,會是很大的加分項,本系列教程只講我覺得重要的,工作會用到的知識點,把方法教給大家
1、pandas資料結構
1.Series一維
2.DataFrame 二維,Series容器
匯入包:習慣給numpy起別名np,pandas起別名pd
import numpy as np
import pandas as pd
簡單感知下兩者區別,Series為一列資料,最左側的01234為標籤,右側為值
DataFrame為多列資料,說白了就是DataFrame由多個Series組成
2、Series建立
之前numpy教程中提到過,學習資料分析庫的通用思路就是瞭解並建立資料結構,取值,修改,計算,這些pandas也不例外,我們依舊按照這些思路來學習
通過傳入列表建立series,如果修改標籤,可以建立後通過df.index修改,也可以在建立的時候加入index引數進行修改
通過字典建立series,預設字典的鍵即標籤
3、Series取值方式一
series具有物件的特點,類似字典,可以通過get方法、中括號方法、點語法進行取值,當然get好處就是假如鍵(索引、標籤)不存在,不會拋異常
注意:索引是字元時候,可以用點語法,如果是數值時候,不能用點語法,如下圖,會拋異常,這點同樣適用於後面所講的DataFrame資料結構
4、Series取值方式二
series不但有字典的特點,也有列表的特點,可以通過切片進行選取
5、Series計算
簡單舉列子,加1、利用numpy中一些數學方法計算平方等
6、Series獲取索引和值
df.index和df.values可以獲取索引和值,列印值的型別,是numpy的ndarray型別
當然區別於上面所講的設定索引,設定索引時候我們是賦值操作df.index = [“zs”,“ls”,“ww”,“zl”],而獲取的時候我們直接df.index即可
7、補充一些數學運算方法(numpy庫、math庫、scipy庫)
exp:以e為底的指數函式
square:平方
sqrt:開平方
numpy庫:
math庫:( 發現沒有square方法,就用了pow方法)
scipy庫:
舉例這些想說明的問題是,python的很多科學計算庫包括但不限於以上3種,內部很多封裝好的數學方法用法差不多,功能重複,我們用的時候根據場景選用任意都可以,當然還有更多的對數函式,開多次方,圓周率π,這些都有對應的方法,希望大家能查閱相關文件,自己去學習,培養自學能力