pandas帶有重復(fù)索引操作方法
有的時候,可能會遇到表格中出現(xiàn)重復(fù)的索引,在操作重復(fù)索引的時候可能要注意一些問題。
一、判斷索引是否重復(fù)
a、Series索引重復(fù)判斷
s = Series([1,2,3,4,5],index=["a","a","b","b","c"]) print(s.index.is_unique) #False
Series.index.is_unique為False表示索引重復(fù)。
b、DataFrame索引重復(fù)判斷
a = np.arange(9).reshape(3,3) data = DataFrame(a,index=["a","b","c"],columns=["one","two","one"]) #判斷行索引是否重復(fù) print(data.index.is_unique) #True #判斷列索引是否重復(fù) print(data.columns.is_unique) #False
二、索引取值
如果一個索引對應(yīng)多個值,Series返回的是一個Series。如果一個索引對應(yīng)一個值的時候,Series返回的是一個標(biāo)量,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帶有重復(fù)索引操作方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Pandas之?dāng)?shù)據(jù)追加df.append方式
這篇文章主要介紹了Pandas之?dāng)?shù)據(jù)追加df.append方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-08-08
Python實現(xiàn)讀取Excel表數(shù)據(jù)并轉(zhuǎn)為JSON格式文件
這篇文章主要為大家詳細介紹了Python如何使用pandas庫讀取Excel表并將其轉(zhuǎn)為JSON格式文件,文中的示例代碼講解詳細,感興趣的小伙伴可以參考下2025-04-04
Python 實現(xiàn)opencv所使用的圖片格式與 base64 轉(zhuǎn)換
今天小編就為大家分享一篇Python 實現(xiàn)opencv所使用的圖片格式與 base64 轉(zhuǎn)換,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-01-01
Python中內(nèi)置的日志模塊logging用法詳解
Python的logging模塊提供了記錄程序運行情況的日志功能,類似于Apache的log4j,很好很強大,這里我們就來看一下Python中內(nèi)置的日志模塊logging用法詳解2016-07-07

