Pandas 是強大的資料科學分析工具,結合前幾天所學的NumPy特性
提供方便讀取及使用的資料結構
來處理關聯式數據和有標籤的數據
首先簡介Pandas使用的常見資料結構
今天看的課程是Coursera上的 Introduction to Data Science in Python
Coursera | Online Courses & Credentials From Top Educators. Join for Free | Coursera
下面的練習是利用上課教的還有以前在學校教過的
重新整理有關Series的筆記
為了使用pandas首先要用import
引入
import pandas as pd
接下來創建一個Series
可以先創建一個listy再用pd.Series( )
singers = ["Justin", "Tom", "Lewis", "Kelly"]
pd.Series(singers)
'''
0 Justin
1 Tom
2 Lewis
3 Kelly
dtype: object
'''
可以看到左邊是由0到3組成的索引值(index)
右邊則是每個索引值對應到的值
接下來看缺失值
singers = ["Justin", None , "Lewis", "Kelly"]
pd.Series(singers)
'''
0 Kelly
1 None
2 Jason
dtype: object
'''
pandas會將缺失值儲存為None, 型態為“object"
若是要處理數字字串(integers, numbers, float)的缺失值
numbers =[3,4,None]
pd.Series(numbers)
'''
0 3.0
1 4.0
2 NaN
dtype: float64
'''
pandas會自動將缺失值變成型態為浮點數的NaN(not a number)
可以看到從上面的int64變成float64,也從原本的 None變成 NaN
因為pandas內建將 NaN視為浮點數
雖然 None跟 NaN都是在處理缺失值
但是兩者在pandas的系統內並不相同
但物件型態一個是object一個是float64的型態
如果使用dictionary匯入Series
music_chart = {"Ed Sheeran":"Bad habits", "Justin Biber": "STAY","Cardie B":"Rumors","Anne-Maire":"Kiss My"}
m_c = pd.Series(music_chart)
m_c
'''
Ed Sheeran Bad habits
Justin Biber STAY
Cardie B Rumors
Anne-Maire Kiss My
dtype: object
'''
keys會自動變成 Series 的index
除了原先的default索引值外,也可以自己指定
m_c = pd.Series(["Bad habits","STAY","Rumors","Kiss My"], index = ["Ed Sheeran","Justin Biber","Cardie B","Anne-Maire" ])
m_c
'''
Ed Sheeran Bad habits
Justin Biber STAY
Cardie B Rumors
Anne-Maire Kiss My
dtype: object
'''
假設現在輸入的index無法和data一一對應
music_chart = {"Ed Sheeran":"Bad habits", "Justin Biber": "STAY","Cardie B":"Rumors"}
m_c = pd.Series(music_chart, index =["Maroon5","Cardie B","Ed Sheeran"])
m_c
'''
Maroon5 NaN
Cardie B Rumors
Ed Sheeran Bad habits
dtype: object
'''
pandas會遵照指定的index,忽略 dictionary裡 index指定沒有提到的key,而指定的index值如果沒有對應的value,則是會自動補上NaN或是 None
今天的pandas基礎練習學會了操作Series
明天會進入到更多的操作方式
建立起處理pandas的觀念