iT邦幫忙

2024 iThome 鐵人賽

DAY 11
0
Python

讓Python不拍勝-實用套件實作與介紹系列 第 11

[DAY11]使用Python進行資料處理-Pandas(三)

  • 分享至 

  • xImage
  •  

前兩篇已經將 Sereis 這個資料型態簡單介紹完了,接下來要介紹的是 DataFrame 這個物件,這個是一個用來記錄二維資料的物件,在資料處理上也是相當常用喔!

建立 DataFrame 物件

DataFrame 一樣可以用串列(List)和字典(Dictionary)來建立

用串列建立

lst = [[10, 20, 30],[40, 50, 60]] #二維的串列
data = pd.DataFrame(lst)
print(data)

輸出結果

    0   1   2
0  10  20  30
1  40  50  60

用字典建立

dict_ = {'guitar': [2, 3, 4], 'bass': [5, 6, 7], 'keyboard': [8, 9, 10]}
instrument = pd.DataFrame(dict_) 
print(instrument)

輸出結果

   guitar  bass  keyboard
0       2     5         8
1       3     6         9
2       4     7        10

修改列(row)和欄(column)的索引

更改列索引

instrument.index = ['A', 'B', 'C']
print(instrument)

輸出結果

   guitar  bass  keyboard #可以看到列索引被成功改成A,B,C了
A       2     5         8
B       3     6         9
C       4     7        10

更改欄索引

instrument.columns = ['guitar', 'bass', 'cajon']
print(instrument)

輸出結果

   guitar  bass  cajon #可以看到欄索引被成功改成guitar,bass,cajon了
A       2     5      8
B       3     6      9
C       4     7     10

查詢 DataFrame 物件的資料類型

這裡要特別注意和 Series 不一樣的是,DataFrame 的 dtype 函數要記得加 s,變成 dtypes

print(instrument.dtypes)

輸出結果

guitar      int64 #可以看到類別為object,每個資料的類別是int
bass        int64
cajon       int64
dtype: object

提取 DataFrame 物件的索引

列(row)索引

print(instrument.index)

輸出結果

Index(['A', 'B', 'C'], dtype='object')

欄(column)索引

print(instrument.columns)

輸出結果

Index(['guitar', 'bass', 'cajon'], dtype='object')

提取 DataFrame 的前 n 筆資料

print(instrument.head(2))

輸出結果

   guitar  bass  cajon #可以看到原本有3筆資料,被提取了前2筆A,B
A       2     5      8
B       3     6      9

提取 DataFrame 的後 n 筆資料

print(instrument.tail(1))

輸出結果

   guitar  bass  cajon #可以看到原本有3筆資料,被提取了後1筆C
C       4     7     10

DataFrame 的轉置(列欄互換)

print(instrument.T)

輸出結果

        A  B   C
guitar  2  3   4
bass    5  6   7
cajon   8  9  10

Series 和 DataFrame 很多函數都是通用的,所以各位讀者也可以試試看前面 Series 教過的函數,把它用在 DataFrame 上喔!

下一篇將教大家如何在 Series 和 DataFrame 利用函數做更多操作!


上一篇
[DAY10]使用Python進行資料處理-Pandas(二)
下一篇
[DAY12]使用Python進行資料處理-Pandas(四)
系列文
讓Python不拍勝-實用套件實作與介紹30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言