Pandas 經常使用函數彙總

s : 指 Pandas 中的序列 , DataFrame/Series對象app

s.min()      若爲DataFrame 則返回每一列的最小值,若爲Series則返回最小值函數

s.max()    求最大spa

s.sum()     求和對象

s.mean()   求平均排序

s.count()    計數,非缺失元素索引

s.size()    計數,全部元素ip

s.median()   中位數字符串

s.var()      計算方差it

s.std()     計算標準差ast

s.quantile()  計算任意分位數,可傳入 0到1 的小數,計算方式相似中位數,但結果可能不在序列中 (幾等分 )

s.cov()  計算協方差     (協方差表示的是兩個變量整體偏差的指望。)

s1.corr(s2)   計算相關係數     (反映兩個序列的數據是否存在線性相關的,並不能排除其餘相關)

s.skew   計算偏度  (暫時未理解)

s.kurt()  計算峯度  (暫時未理解)

s.mode()  計算衆數   返回出現次數最多的一個或者多個數字的序列

s.describe()   描述性統計  一次性返回多個統計結果

s.aggregate(k)   能夠自定義統計函數 , 聚合運算, 自定一個函數 或者lambda  來實現統計

s.groupby()   分組   ( 暫時未理解如何使用)

s.argmin()   返回序列最小值的所在位置  , 只適用於 Series  不適合DataFrame

s.argmax()                最大值 

s.any()   邏輯或   有真則真   Series 對象適用

s.all()   邏輯與   有假則假

s.value_counts()   頻次統計 ,  統計每一個值出現的次數

s.cumsum()     運算累計和  ,累計求和  ,適用  Series對象

s.cumprod()   運算累計積, 

s.pct_change()  運算比率  ,  後一個 - 當前  獲得的  差值 / 當前值 

s.duplicated()     用於判斷序列元素是否重複,  當前 的元素,在當前索引以前出現則爲真,不然爲假,返回一列布爾值

s.drop_duplicates()   將重複元素刪除,序列長度將可能縮短

s.hasnans()  判斷序列是否存在缺失,僅返回True 或者False

s.isnull()     判斷序列是否爲缺失,返回與序列長度同樣的布爾值的序列

s.notnull()   判斷序列是否爲不缺失,返回與上面相反

s.dropna()  刪除缺失值

s.fillna()     填充缺失值  

s.ffill()        前向填充缺失值    填充缺失值元素的前一個元素

s.bfill()     後向填充缺失值      填充缺失值元素的後一個元素

s.dtypes   檢查數據類型,只返回一個

s.astype(np.int64)  強制類型轉換

pd.to_datetime()   轉日期時間型

s.factorize()   因子化轉換  (  包含索引的列表 ,       全部不重複的列表)

s.sample(number)  返回隨機抽樣 number 個 ,隨機抽樣

s.where(s>4,9)     基於條件判斷進行值替換  , 不符合某個條件 則修改成後面的值

s.replace()    按值替換  不可以使用正則

s.str.replace()  按值替換 ,可以使用正則

s.str.split.str()    字符分割      house = pd.Series(['大寧金茂府 | 3室2廳 | 158.32平米 | 南 | 精裝',
                   '昌裏花園 | 2室2廳 | 104.73平米 | 南 | 精裝',
                   '紡大小區 | 3室1廳 | 68.38平米 | 南 | 簡裝'])
# 取出二手房的面積,並轉換爲浮點型
house.str.split('|').str[2].str.strip().str[:-2].astype(float)

s.isin([2,3,])   成員關係判斷   若是值在給定列表中則爲真, 返回一系列bool值

s.between(1,2)   區間判斷  ,既包含頭也包含尾

s.loc[s>1]        條件判斷並取值   適用於序列和數據框

s.iloc[ ]    索引判斷,

  s 爲序列時  ,  傳入整數,則取指定位置,    1:5:2    隔2取,1開始5結束 

  當處理數據框對象時 , 提取符合條件的行   df.iloc[lambda x: x.index%2==1]      df.iloc[0,1]  則取一個值

  使用切片     df.iloc[1:3, 0,3]   

   提取指定行指定列  df.iloc[ [1 , 2] , [0,3] ]   

s.compress(s>3)   條件判斷     和loc 相似,可是傳參以小括號形式

s.nlargest(2)    搜尋最大的 n個元素 ,且結果已經排好序

s.nsmallest()   搜尋最小的n個元素

s.str.findall()    子串查詢  ,可以使用正則    只適用字符串

  y = pd.Series(['ID:1 name:張三 age:24 income:13500',
               'ID:2 name:李四 age:27 income:25000',
               'ID:3 name:王二 age:21 income:8000'])
  # 取出年齡,並轉換爲整數
  print(y.str.findall('age:(d+)').str[0].astype(int))

 

s.hist()  快速繪製直方圖

s.plot(kind='box')     可基於kind參數繪製  餅圖     箱線圖 box ,條形圖 bar 

s.map(lambda x : x*2 )   元素映射 

s.apply( 函數  )   使用方式和map 相似,結果相似,暫未找到其餘不一樣點

   

s.dt.date    抽取日期  年月日       s 必須爲datetime 類型 ,能夠先轉類型      返回序列或者數據框

s.dt.time    抽取時間   時分秒     

s.dt.year   抽取年

s.dt.month  月

s.dt.day    日

s.dt.hour   時

s.dt.minute  分

s.dt.second  秒 

s.dt.quarter   季度

s.dt.weekday   周幾     數值類型

s.dt.weekday_name  周幾    字符型

s.dt.week   日期爲這一年的第幾周 

s.dt.dayofyear    日期爲這一年的第幾天

s.dt.daysinmonth   日期爲月對應的最大天數

s.dt.is_month_start    判斷日期是否爲當月第一天

s.dt.is_month_end  判斷日期是否爲當月的最後一天

s.dt.is_quarter_start  判斷日期是否爲當季度的第一天

                       _end                                         最後

s.dt.is_year_start               當年第一天

      end    

s.dt.is_leap_year     判斷日期是否爲閏年

 

s.append( s2)  在一個序列後添加另外一個序列

 s.diff()      一階差分   ,  當前一個減去前一個    ,第一個 爲  Nan

s.round()    元素四捨五入

s.sort_values()     按值排序

s.sort_index()   按索引排序

s.to_dict()   轉爲字典    

s.tolist()   轉爲列表

s.unique()  元素排重    去重顯示,長度縮短 

相關文章
相關標籤/搜索