pandas帶有重復索引操作方法
更新時間:2018年06月08日 08:53:56 作者:修煉之路
今天小編就為大家分享一篇pandas帶有重復索引操作方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
有的時候,可能會遇到表格中出現重復的索引,在操作重復索引的時候可能要注意一些問題。
一、判斷索引是否重復
a、Series索引重復判斷
s = Series([1,2,3,4,5],index=["a","a","b","b","c"]) print(s.index.is_unique) #False
Series.index.is_unique為False表示索引重復。
b、DataFrame索引重復判斷
a = np.arange(9).reshape(3,3) data = DataFrame(a,index=["a","b","c"],columns=["one","two","one"]) #判斷行索引是否重復 print(data.index.is_unique) #True #判斷列索引是否重復 print(data.columns.is_unique) #False
二、索引取值
如果一個索引對應多個值,Series返回的是一個Series。如果一個索引對應一個值的時候,Series返回的是一個標量,DataFrame返回的是始終是一個DataFrame。
a、Series的索引取值
s = Series([1, 2, 3, 4, 5], index=["a", "a", "b", "b", "c"]) print(type(s["a"])) #<class 'pandas.core.series.Series'> print(s["a"]) ''' a 1 a 2 ''' #選取第一個a print(s[:1]) #a 1 print(s[[0]]) #a 1
b、DataFrame的索引取值
a = np.arange(9).reshape(3,3)
data = DataFrame(a,index=["a","b","b"],columns=["one","two","one"])
#對行進行選取
print(type(data.ix["b"]))
#<class 'pandas.core.frame.DataFrame'>
print(data.ix["b"])#與data.xs("b")等價
'''
one two one
b 3 4 5
b 6 7 8
'''
#選取第二行
print(type(data.ix[1:2]))#與data[1:2]等價
#<class 'pandas.core.frame.DataFrame'>
print(data.ix[1:2])
#b 3 4 5
print(data.ix[[1]])
#b 3 4 5
#對列進行選取
print(data["one"])#等價于data.one 或 data.xs("one",axis=1)
'''
one one
a 0 2
b 3 5
b 6 8
'''
#選取第一列
print(data.ix[:,0])
'''
a 0
b 3
b 6
'''
print(data.ix[:,:1])
'''
one
a 0
b 3
b 6
'''
以上這篇pandas帶有重復索引操作方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
Python 實現opencv所使用的圖片格式與 base64 轉換
今天小編就為大家分享一篇Python 實現opencv所使用的圖片格式與 base64 轉換,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-01-01

