Pandas是Python數(shù)據(jù)分析處理的核心第三方庫,它使用二維數(shù)組形式何荚,類似Excel表格囱淋,并封裝了很多實用的函數(shù)方法,讓你可以輕松地對數(shù)據(jù)集進(jìn)行各種操作餐塘。
這里列舉下Pandas中常用的函數(shù)和方法妥衣,方便大家查詢使用。
讀取 寫入
- read_csv:讀取CSV文件
- to_csv:導(dǎo)出CSV文件
- read_excel:讀取Excel文件
- to_excel:導(dǎo)出Excel文件
- read_json:讀取Json文件
- to_json:導(dǎo)出Json文件
- read_html:讀取網(wǎng)頁中HTML表格數(shù)據(jù)
- to_html:導(dǎo)出網(wǎng)頁HTML表格
- read_clipboard:讀取剪切板數(shù)據(jù)
- to_clipboard:導(dǎo)出數(shù)據(jù)到剪切板
- to_latex:導(dǎo)出數(shù)據(jù)為latex格式
- read_sas:讀取sas格式數(shù)據(jù)(一種統(tǒng)計分析軟件數(shù)據(jù)格式)
- read_spss:讀取spss格式數(shù)據(jù)(一種統(tǒng)計分析軟件數(shù)據(jù)格式)
- read_stata:讀取stata格式數(shù)據(jù)(一種統(tǒng)計分析軟件數(shù)據(jù)格式)
- read_sql:讀取sql查詢的數(shù)據(jù)(需要連接數(shù)據(jù)庫)戒傻,輸出dataframe格式
- to_sql:向數(shù)據(jù)庫寫入dataframe格式數(shù)據(jù)
連接 合并 重塑
- merge:根據(jù)指定鍵關(guān)聯(lián)連接多個dataframe税手,類似sql中的join
- concat:合并多個dataframe,類似sql中的union
- pivot:按照指定的行列重塑表格
- pivot_table:數(shù)據(jù)透視表需纳,類似excel中的透視表
- cut:將一組數(shù)據(jù)分割成離散的區(qū)間芦倒,適合將數(shù)值進(jìn)行分類
- qcut:和cut作用一樣,不過它是將數(shù)值等間距分割
- crosstab:創(chuàng)建交叉表不翩,用于計算兩個或多個因子之間的頻率
- join:通過索引合并兩個dataframe
- stack: 將數(shù)據(jù)框的列“堆疊”為一個層次化的Series
- unstack: 將層次化的Series轉(zhuǎn)換回數(shù)據(jù)框形式
- append: 將一行或多行數(shù)據(jù)追加到數(shù)據(jù)框的末尾
分組 聚合 轉(zhuǎn)換 過濾
- groupby:按照指定的列或多個列對數(shù)據(jù)進(jìn)行分組
- agg:對每個分組應(yīng)用自定義的聚合函數(shù)
- transform:對每個分組應(yīng)用轉(zhuǎn)換函數(shù)兵扬,返回與原始數(shù)據(jù)形狀相同的結(jié)果
- rank:計算元素在每個分組中的排名
- filter:根據(jù)分組的某些屬性篩選數(shù)據(jù)
- sum:計算分組的總和
- mean:計算分組的平均值
- median:計算分組的中位數(shù)
- min和 max:計算分組的最小值和最大值
- count:計算分組中非NA值的數(shù)量
- size:計算分組的大小
- std和 var:計算分組的標(biāo)準(zhǔn)差和方差
- describe:生成分組的描述性統(tǒng)計摘要
- first和 last:獲取分組中的第一個和最后一個元素
- nunique:計算分組中唯一值的數(shù)量
- cumsum、cummin口蝠、cummax器钟、cumprod:計算分組的累積和、最小值妙蔗、最大值傲霸、累積乘積
數(shù)據(jù)清洗
- dropna: 丟棄包含缺失值的行或列
- fillna: 填充或替換缺失值
- interpolate: 對缺失值進(jìn)行插值
- duplicated: 標(biāo)記重復(fù)的行
- drop_duplicates: 刪除重復(fù)的行
- str.strip: 去除字符串兩端的空白字符
- str.lower和 str.upper: 將字符串轉(zhuǎn)換為小寫或大寫
- str.replace: 替換字符串中的特定字符
- astype: 將一列的數(shù)據(jù)類型轉(zhuǎn)換為指定類型
- sort_values: 對數(shù)據(jù)框按照指定列進(jìn)行排序
- rename: 對列或行進(jìn)行重命名
- drop: 刪除指定的列或行
數(shù)據(jù)可視化
- pandas.DataFrame.plot.area:繪制堆積圖
- pandas.DataFrame.plot.bar:繪制柱狀圖
- pandas.DataFrame.plot.barh:繪制水平條形圖
- pandas.DataFrame.plot.box:繪制箱線圖
- pandas.DataFrame.plot.density:繪制核密度估計圖
- pandas.DataFrame.plot.hexbin:繪制六邊形分箱圖
- pandas.DataFrame.plot.hist:繪制直方圖
- pandas.DataFrame.plot.line:繪制線型圖
- pandas.DataFrame.plot.pie:繪制餅圖
- pandas.DataFrame.plot.scatter:繪制散點圖
- pandas.plotting.andrews_curves:繪制安德魯曲線,用于可視化多變量數(shù)據(jù)
- pandas.plotting.autocorrelation_plot:繪制時間序列自相關(guān)圖
- pandas.plotting.bootstrap_plot:用于評估統(tǒng)計數(shù)據(jù)的不確定性,例如均值,中位數(shù),中間范圍等
- pandas.plotting.lag_plot:繪制時滯圖,用于檢測時間序列數(shù)據(jù)中的模式昙啄、趨勢和季節(jié)性
- pandas.plotting.parallel_coordinates:繪制平行坐標(biāo)圖穆役,用于展示具有多個特征的數(shù)據(jù)集中各個樣本之間的關(guān)系
- pandas.plotting.scatter_matrix:繪制散點矩陣圖
- pandas.plotting.table:繪制表格形式可視化圖
日期時間
- to_datetime: 將輸入轉(zhuǎn)換為Datetime類型
- date_range: 生成日期范圍
- to_timedelta: 將輸入轉(zhuǎn)換為Timedelta類型
- timedelta_range: 生成時間間隔范圍
- shift: 沿著時間軸將數(shù)據(jù)移動
- resample: 對時間序列進(jìn)行重新采樣
- asfreq: 將時間序列轉(zhuǎn)換為指定的頻率
- cut: 將連續(xù)數(shù)據(jù)劃分為離散的箱
- period_range: 生成周期范圍
- infer_freq: 推斷時間序列的頻率
- tz_localize: 設(shè)置時區(qū)
- tz_convert: 轉(zhuǎn)換時區(qū)
- dt: 用于訪問Datetime中的屬性
- day_name, month_name: 獲取日期的星期幾和月份的名稱
- total_seconds: 計算時間間隔的總秒數(shù)
- rolling: 用于滾動窗口的操作
- expanding: 用于展開窗口的操作
- at_time, between_time: 在特定時間進(jìn)行選擇
- truncate: 截斷時間序列