si = pd.Series([1, 2, 3, 4])
np.arange()
建立si = pd.Series(np.arange(8))
si = pd.Series({'a': 1, 'b': 2, 'c': 3})
si.values # array([1, 2, 3])
si.index # Index(['1', '2', '3'], dtype='object')
si = pd.Series([1, 2, 3], index=['A', 'B', 'C']) si['A'] # 1 si[0] # 1
si = pd.Series([1, 2, 3], index=['A', 'B', 'C']) si[si > 1] # B 2 # C 3
Series默認編號爲int類型的數字,咱們能夠重置Series的編號python
si = pd.Series([1, 2, 3], index=['A', 'B', 'C']) # A 1 # B 2 # C 3
reindex()
方法重置reindex()
方法接收一個新的 index
列表,用於替換原來的 index
,若是新的 index
包含原來的 index
沒有的元素則新增的index元素默認填充爲 NaN
,能夠經過指定參數 fill_value
改變默認的值。code
si = pd.Series([1, 2, 3]) si.reindex(index=['A', 'B', 'C', 'D', 'E']) # A NaN # B NaN # C NaN # D NaN # E NaN # dtype: float64
s1 = pd.Series([1, 2, 3]) s1.reindex(index=['A', 2, 'C', 'D', 'E'], fill_value=0) # A 0 # B 3 # C 0 # D 0 # E 0 # dtype: int64
內插或填充 method
對象
obj1=pd.Series(range(3), index=['a', 'c', 'e']) print(obj1.reindex(['a', 'b', 'c', 'd', 'e'], method='pad')) # a 0 # b 0 # c 1 # d 1 # e 2 # dtype: int64
ffill
或 pad
: 前向(或進位)填充 bfill
或 backfill
: 後向(或進位)填充class
Series能夠經過 to_dict()
轉換爲一個Python字典:object
si = pd.Series([1, 2, 3], index=['A', 'B', 'C']) si.to_dict()
判斷NaN,Series判斷NaN有兩個方法 isna()
和 notna()
:float
isna()
會對Series的每一個元素的值進行判斷,若是是NaN則爲 True
,不然爲False
。notna()
會對Series的每一個元素的值進行判斷,若是是NaN則爲 False
,不然爲True
si = pd.Series([1, 2, 3, np.nan], index=['A', 'B', 'C', 'D']) si.isna() # A False # B False # C False # D True # dtype: bool
si.dropna()
si.fillna(value)