Pandas Cheat Sheet學習筆記
阿新 • • 發佈:2019-01-28
Pandas 作為python的庫,包含易於使用的資料結構,是一個強大資料分析的工具。
Pandas資料結構
Pandas的主要資料結構有Series和DataFrame。Series是一種類似於一維陣列的物件,它由一組資料以及一組與之相關的一組標籤組成。DataFrame是一個表格型資料結構,它含有一組有序的列,每列可以是不同的值型別。
Pandas的I/O操作
1.從csv檔案中讀寫資料。
>>> df = pd.read_csv('file.csv', header=None, nrows=5) >>> df.to_csv('myDataFrame.csv')
2.從Excel檔案中讀寫資料。
>>> pd.read_excel('file.xlsx')
>>> pd.to_excel('dir/myDataFrame.xlsx', sheet_name='Sheet1')
Pandas選擇資料
>>> df.at([0], ['Country'])
1. 獲得資料
>>> s['b'] Get one element
>>> df[1:] Get subset of a DataFrame
2. 通過位置或者標籤獲取資料
df.iloc([0],[0]) 位置
df.iat([0],[0]) 位置
>>> df.loc([0], ['Country']) 標籤
>>> df.at([0], ['Country']) 標籤
3. ix可以自動地通過位置或標籤獲取資料
>>> df.ix[2] Select single row of Country Brazil subset of rows Capital Brasília Population 207847528 >>> df.ix[:,'Capital'] Select a single column of 0 Brussels subset of columns 1 New Delhi 2 Brasília >>> df.ix[1,'Capital'] Select rows and columns 'New Delhi'
4. 布林運算獲取資料
>> s[~(s > 1)] Series s where value is not >1
>>> s[(s < -1) | (s > 2)] s where value is <-1 or >2
>>> df[df['Population']>1200000000] Use filter to adjust DataFrame
5. 資料設定
>>> s['a'] = 6
pandas的Drop操作去除資料
>>> s.drop(['a', 'c']) Drop values from rows (axis=0)
>>> df.drop('Country', axis=1) Drop values from columns(axis=1)
pandas的排序功能
>>> df.sort_index() Sort by labels along an axis
>>> df.sort_values(by='Country') Sort by the values along an axis
>>> df.rank() Assign ranks to entries
獲取pandas中Series和DataFrame 資訊
>>> df.shape (rows,columns)
>>> df.index Describe index
>>> df.columns Describe DataFrame columns
>>> df.info() Info on DataFrame
>>> df.count() Number of non-NA values
pandas中的運算功能
>>> df.sum() Sum of values
>>> df.cumsum() Cummulative sum of values
>>> df.min()/df.max() Minimum/maximum values
>>> df.idxmin()/df.idxmax() Minimum/Maximum index value
>>> df.describe() Summary statistics
>>> df.mean() Mean of values
>>> df.median() Median of values
pandas使用的應用函式
>>> f = lambda x: x*2
>>> df.apply(f) Apply function
>>> df.applymap(f) Apply function element-wise
pandas資料結構之間的運算
>>> s3 = pd.Series([7, -2, 3], index=['a', 'c', 'd'])
>>> s + s3
a 10.0
b NaN
c 5.0
d 7.0
pandas資料結構之間的運算加上填充值
>>> s.add(s3, fill_value=0)
a 10.0
b -5.0
c 5.0
d 7.0
>>> s.sub(s3, fill_value=2)
>>> s.div(s3, fill_value=4)
>>> s.mul(s3, fill_value=3)
參考:http://www.kdnuggets.com/2017/01/pandas-cheat-sheet.html