整理了100個Pandas常用的函數,分別分為6類:統計匯總函數、數據清洗函數、數據篩選、繪圖與元素級運算函數、時間序列函數和其他函數。
統計匯總函數
| 函數 |
含義 |
| min() |
計算最小值 |
| max() |
計算最大值 |
| sum() |
求和 |
| mean() |
計算平均值 |
| count() |
計數(統計非缺失元素的個數) |
| size() |
計數(統計所有元素的個數) |
| median() |
計算中位數 |
| var() |
計算方差 |
| std() |
計算標准差 |
| quantile() |
計算任意分位數 |
| cov() |
計算協方差 |
| corr() |
計算相關系數 |
| skew() |
計算偏度 |
| kurt() |
計算峰度 |
| mode() |
計算眾數 |
| describe() |
描述性統計(一次性返回多個統計結果) |
| groupby() |
分組 |
| aggregate() |
聚合運算(可以自定義統計函數) |
| argmin() |
尋找最小值所在位置 |
| argmax() |
尋找最大值所在位置 |
| any() |
等價於邏輯“或” |
| all() |
等價於邏輯“與” |
| value_counts() |
頻次統計 |
| cumsum() |
運算累計和 |
| cumprod() |
運算累計積 |
| pct_change() |
運算比率(后一個元素與前一個元素的比率) |
數據清洗函數
| 函數 |
含義 |
| duplicated() |
判斷序列元素是否重復 |
| drop_duplicates() |
刪除重復值 |
| hasnans() |
判斷序列是否存在缺失(返回TRUE或FALSE) |
| isnull() |
判斷序列元素是否為缺失(返回與序列長度一樣的bool值) |
| notnull() |
判斷序列元素是否不為缺失(返回與序列長度一樣的bool值) |
| dropna() |
刪除缺失值 |
| fillna() |
缺失值填充 |
| ffill() |
前向后填充缺失值(使用缺失值的前一個元素填充) |
| bfill() |
后向填充缺失值(使用缺失值的后一個元素填充) |
| dtypes() |
檢查數據類型 |
| astype() |
類型強制轉換 |
| pd.to_datetime |
轉日期時間型 |
| factorize() |
因子化轉換 |
| sample() |
抽樣 |
| where() |
基於條件判斷的值替換 |
| replace() |
按值替換(不可使用正則) |
| str.replace() |
按值替換(可使用正則) |
| str.split.str() |
字符分隔 |
數據篩選函數
| 函數 |
含義 |
| isin() |
成員關系判斷 |
| between() |
區間判斷 |
| loc() |
條件判斷(可使用在數據框中) |
| iloc() |
索引判斷(可使用在數據框中) |
| compress() |
條件判斷 |
| nlargest() |
搜尋最大的n個元素 |
| nsmallest() |
搜尋最小的n個元素 |
| str.findall() |
子串查詢(可使用正則) |
繪圖與元素級運算函數
| 函數 |
含義 |
| hist() |
繪制直方圖 |
| plot() |
可基於kind參數繪制更多圖形(餅圖,折線圖,箱線圖等) |
| map() |
元素映射 |
| apply() |
基於自定義函數的元素級操作 |
時間序列函數
| 函數 |
含義 |
| dt.date() |
抽取出日期值 |
| dt.time() |
抽取出時間(時分秒) |
| dt.year() |
抽取出年 |
| dt.mouth() |
抽取出月 |
| dt.day() |
抽取出日 |
| dt.hour() |
抽取出時 |
| dt.minute() |
抽取出分鍾 |
| dt.second() |
抽取出秒 |
| dt.quarter() |
抽取出季度 |
| dt.weekday() |
抽取出星期幾(返回數值型) |
| dt.weekday_name() |
抽取出星期幾(返回字符型) |
| dt.week() |
抽取出年中的第幾周 |
| dt.dayofyear() |
抽取出年中的第幾天 |
| dt.daysinmonth() |
抽取出月對應的最大天數 |
| dt.is_month_start() |
判斷日期是否為當月的第一天 |
| dt.is_month_end() |
判斷日期是否為當月的最后一天 |
| dt.is_quarter_start() |
判斷日期是否為當季度的第一天 |
| dt.is_quarter_end() |
判斷日期是否為當季度的最后一天 |
| dt.is_year_start() |
判斷日期是否為當年的第一天 |
| dt.is_year_end() |
判斷日期是否為當年的最后一天 |
| dt.is_leap_year() |
判斷日期是否為閏年 |
其它函數
| 函數 |
含義 |
| append() |
序列元素的追加(需指定其他序列) |
| diff() |
一階差分 |
| round() |
元素的四舍五入 |
| sort_values() |
按值排序 |
| sort_index() |
按索引排序 |
| to_dict() |
轉為字典 |
| tolist() |
轉為列表 |
| unique() |
元素排重
|
