Pandas基礎

Helianthus Lee發表於2020-12-19

一、檔案的讀取和寫入

1.檔案讀取

pd.read_csv(’ ‘)
pd.read_excel(’ ‘)
pd.read_table(’ ')
注:header=None表示第一行不作為列名,index_col表示把某一列或幾列作為索引,索引的內容將會在第三章進行詳述,usecols表示讀取列的集合,預設讀取所有的列,parse_dates表示需要轉化為時間的列,關於時間序列的有關內容將在第十章講解,nrows表示讀取的資料行數。上面這些引數在上述的三個函式裡都可以使用。

2.資料寫入

df_csv.to_csv(’…/data/my_csv_saved.csv’, index=False)
df_excel.to_excel(’…/data/my_excel_saved.xlsx’, index=False)
df_txt.to_csv(’…/data/my_txt_saved.txt’, sep=’\t’, index=False)

二、基本資料結構

Series

Series一般由四個部分組成,分別是序列的值data、索引index、儲存型別dtype、序列的名字name。其中,索引也可以指定它的名字,預設為空。

DataFrame

DataFrame在Series的基礎上增加了列索引,一個資料框可以由二維的data與行列索引來構造

三、常用基本函式

1. 彙總函式

head, tail函式分別表示返回表或者序列的前n行和後n行,其中n預設為5
info, describe分別返回表的資訊概況和表中數值列對應的主要統計量

2.特徵統計函式

在Series和DataFrame上定義了許多統計函式,最常見的是sum, mean, median, var, std, max, min

3.唯一值函式

對序列使用unique和nunique可以分別得到其唯一值組成的列表和唯一值的個數
value_counts可以得到唯一值和其對應出現的頻數
如果想要觀察多個列組合的唯一值,可以使用drop_duplicates。其中的關鍵引數是keep,預設值first表示每個組合保留第一次出現的所在行,last表示保留最後一次出現的所在行,False表示把所有重複組合所在的行剔除。此外,duplicated和drop_duplicates的功能類似,但前者返回了是否為唯一值的布林列表,其keep引數與後者一致。其返回的序列,把重複元素設為True,否則為False。 drop_duplicates等價於把duplicated為True的對應行剔除。

4.替換函式

pandas中的替換函式可以歸納為三類:對映替換、邏輯替換、數值替換。在replace中,可以通過字典構造,或者傳入兩個列表來進行替換。另外,replace還有一種特殊的方向替換,指定method引數為ffill則為用前面一個最近的未被替換的值進行替換,bfill則使用後面最近的未被替換的值進行替換。

5.排序函式

排序共有兩種方式,其一為值排序,其二為索引排序,對應的函式是sort_values和sort_index。

6.apply方法

apply方法常用於DataFrame的行迭代或者列迭代,它的axis含義與第2小節中的統計聚合函式一致,apply的引數往往是一個以序列為輸入的函式

四、視窗物件

pandas中有3類視窗,分別是滑動視窗rolling、擴張視窗expanding以及指數加權視窗ewm
1.滑窗物件
2.擴張視窗

練習

相關文章