pandas統計重復值次數的方法實現

本文主要介紹瞭pandas統計重復值次數的方法實現,分享給大傢,具體如下:

from pandas import DataFrame

df = DataFrame({'key1':['a','a','b','b','a','a'],
        'key2':['one','two','one','two','one','one'],
        'data1':[1,2,3,2,1,1],
        # 'data2':np.random.randn(5)
        })
# 打印數據框
print(df)
#  data1 key1 key2
# 0   1  a one
# 1   2  a two
# 2   3  b one
# 3   2  b two
# 4   1  a one
# 5   1  a one

# 重復項
print(df[df.duplicated()])
#  data1 key1 key2
# 4   1  a one
# 5   1  a one

# 統計重復值
dup=df[df.duplicated()].count()
print(dup) # 最後兩項重復
# data1  2
# key1   2
# key2   2

# 去除重復項
nodup=df[-df.duplicated()]
print(nodup)
#  data1 key1 key2
# 0   1  a one
# 1   2  a two
# 2   3  b one
# 3   2  b two

pandas 中 dataframe 重復元素個數的獲取

方法有二:

1. 在調用duplicated方法後,非重復的元素會被標記為False,而重復的元素會被標記為True

count = 0
for i in users_info['user_id'].duplicated():
  if i == True:
    count = count + 1
count

【註1】users_info為一個dataframe框,user_id為其中一列

【註2】duplicated( )方法隻會把重復的元素標記為True,而不會標記被重復的元素

2.這行代碼的速度更快,drop_duplicates([‘user_id’])方法為刪除user_id列中相同的元素

users_info.shape[0] - users_info.drop_duplicates(['user_id']).shape[0]

【註】shape[0] 為獲取行數

到此這篇關於pandas統計重復值次數的方法實現的文章就介紹到這瞭,更多相關pandas統計重復值次數內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: