obj = series(range(3),index=['a','b','c'])
index = obj.index
index
index[1:]
index[1] = 'd' # index物件是不能被修改的 index does not support mutable operations
index = pd.index(np.arange(3))
obj2 = series([1.5,-2.5,0],index=index)
obj2.index is index # 索引是否為索引?
pop =,
'ohio':} #這是乙個巢狀字典
frame3 = dataframe(pop)# 巢狀字典轉成dataframe的時候外層的鍵作為列內層的鍵作為索引
frame3
'ohio' in frame3.columns # 類似於陣列的固定大小的集合方法
2003 in frame3.index
#重新索引
obj = series([4.5,7.2,-5.3,3.6,],index=['d','b','a','c'])
objobj2 = obj.reindex(['a','b','c','d','e'])
obj2
obj.reindex(['a','b','c','d','e'],fill_value=0) #把空值設定成0
obj3 = series(['blue','purple','yellow'],index=[0,2,4])
obj3.reindex(range(6),method='ffill')#重新索引時候需要做一些插值處理 method引數可以達到這個目的
frame = dataframe(np.arange(9).reshape((3,3)),index=['a','c','d'],
columns=['ohio','teaxs','carlifornia'])
frame
frame2 = frame.reindex(['a','b','c','d']) #如果只傳入乙個序列就只重新索引行
frame2
states = ['teaxs','utah','carlifornia'] # 使用columns關鍵字進行列的重新索引
frame.reindex(columns=states)
frame.reindex(index=['a','b','c','d'],method='ffill',
columns=states) #對行列進行重新索引但是插值只適用與行
frame.ix[['a','b','c','d'],states] #用ix同樣可以做到重新索引
obj = series(np.arange(5.),index=['a','b','c','d','e']) # 建立乙個series
new_obj = obj.drop('c') # 丟棄掉索引c上的元素
new_obj
obj.drop(['d','c'])
data = dataframe(np.arange(16).reshape((4,4)),
index=['ohio','colorado','utah','new york'],
columns=['one','two','three','four']) # 建立乙個 dataframe
data.drop(['colorado','ohio']) # 丟棄掉索引為這兩個的行
data.drop('two',axis=1) # 丟棄列
data.drop(['two','four'],axis=1) # 在丟棄列的時候需要指定丟棄的軸
# 索引的選取和過濾
#series的索引是obj[...]
obj = series(np.arange(4.),index=['a','b','c','d']) # 建立乙個series
obj['b']
obj[1] # 這裡和上面是等效的series預設是從0~n-1的索引
obj[2:4] # 這裡使用的是python的普通的切片 不包含末端也就是開區間
obj[['b','a','d']] # 指定順序
obj[[1,3]]
obj[obj<2] # 布林型的方式進行處理
obj['b':'c'] # 利用標籤進行切片這裡同普通的python切片不同之處在於它是乙個閉區間
obj['b':'c'] = 5 # 進行賦值操作
objdata = dataframe(np.arange(16).reshape((4,4)),
index=['ohio','colorado','utah','new york'],
columns=['one','two','three','four']) # 建立乙個 dataframe
data
data['two'] # 選取『two這一列』
data[['three','one']] # 選取兩列 同series 一樣的用法
data[:2] # 使用切片選取前兩行
data[data['three']>5] # 內層是乙個布林陣列 第三列<5的行剔除
data<5
data[data<5] = 0
data # 這段**的意義在於讓dataframe更像ndarray
# 使用ix 的索引欄位來選取行列子集
data.ix['colorado',['two','three']] # colorado 這一行的『two』和'three'這兩列
data.ix[['colorado','utah'],[3,0,1]] # 和上面的相似,只不過這裡用數字的方法進行選取
data.ix[2] # 選取的是axis = 0軸上的也就是第二行utah的
data.ix[:'utah','two'] # 喵?
data.ix[data.three>5,:3] # 布林型陣列進行選取而後進行切片
# 算術運算和資料對齊
利用python做資料分析
3.2 資料分析的目的 主要就是為了在複雜 龐大的資料庫中提取對我們有用的資訊。讓這些資料產生一定的價值,幫助人們在日常生活中做一些決策時做一些參考。比如,在 中買東西,我們會首先看到物品的銷量 排行 以及顧客對物品的評價。這些都是經過資料分析得出來的。可見,資料分析在其中扮演著多麼重要的角色。3....
利用python進行資料分析
目錄 10 minutes to pandas 翻譯 pandas中loc iloc ix的區別 pandas dropna函式 pandas中dataframe的stack unstack 和pivot 方法的對比 pandas中關於set index和reset index的用法 python匿...
利用python進行資料分析
利用python進行資料分析,需要了解一些基本的方法,比如掌握回歸分析的方法,通過線性回歸和邏輯回歸,其實你就可以對大多數的資料進行回歸分析,並得出相對精確地結論。這部分需要掌握的知識點如下 回歸分析 線性回歸 邏輯回歸 基本的分類演算法 決策樹 隨機森林 樸素貝葉斯 基本的聚類演算法 k mean...