**
from pandas import dataframe
df = dataframe()
print(df)
key1 key2 key3
# 0 a one 1
# 1 a two 2
# 2 b one 3
# 3 b two 2
# 4 a one 1
# 5 a one 1
# 6 b two 2
# 7 b two 3
#重複項
print(df[df.duplicated()]) #找出全部列的重複項
# key1 key2 key3
# 4 a one 1
# 5 a one 1
# 6 b two 2
df[df.duplicated(['key1','key2'])] #只找出key1,key2相同的重複項
# key1 key2 key3
# 4 a one 1
# 5 a one 1
# 6 b two 2
# 7 b two 3
column_names = ['key1', 'key2']
df[df.duplicated(column_names)] #只找出key1,key2相同的重複項
# key1 key2 key3
# 4 a one 1
# 5 a one 1
# 6 b two 2
# 7 b two 3
# 統計重複值
dup=df[df.duplicated()].count()
print(dup)
# key1 3
# key2 3
# key3 3
# dtype: int64
# 去除重複項
nodup=df[-df.duplicated()]
print(nodup)
# key1 key2 key3
#0 a one 1
#1 a two 2
#2 b one 3
#3 b two 2
#7 b two 3
# 去除重複項,#去除只有key1,key2相同的重複項
nodup=df[-df.duplicated(['key1','key2'])]
print(nodup)
key1 key2 key3
# 0 a one 1
# 1 a two 2
# 2 b one 3
# 3 b two 2
column_names = ['adrequest_id', 'adrequest_time', 'adposition_id', 'user_id', 'exad_id', 'exad_materialsize', 'exad_bid', 'pctr', 'quality_ecpm', 'totalecpm']
#去重所有列標籤,以下兩種篩選出來的結果是一樣的
#exposurelog[exposurelog.duplicated()] #預設去除所有列一樣的
# exposurelog[exposurelog.duplicated(column_names)] #878919行
# exposurelog[exposurelog.duplicated(['adrequest_id', 'adposition_id', 'exad_id'])]
#去除重複項
exposurelog_nodup = exposurelog[-exposurelog.duplicated(column_names)]
print(len(exposurelog_nodup)) #101507776=102386695(total) - 878919(dup)
#儲存到檔案totalexposurelog_nodup.csv中
exposurelog_nodup.to_csv("./data/totalexposurelog_nodup.csv", index=false)
pandas統計csv中相同資料出現次數
在處理csv資料的過程中可能會遇到統計重複資料的情況,筆者以自己遇到的問題為例,給出乙個可以解決此問題的方法。進行操作的csv檔案中含有1700多條資料,其中區域性如下圖所示 目的是計算其中每條資料出現的次數,如下 import pandas as pd csv pd.read csv data a...
統計每個元素重複次數及重複元素
僅統計列表中重複的元素 獲取單個元素的出現次數,使用list中的count方法,count方法,可以返回該元素出現的次數 l 10 11,12 13,15 14,10 10,10 12,12 13 re 獲取單個元素的出現次數,使用list中的count方法 for i in l if l.coun...
pandas 帶有重複值的軸索引
之前的所有範例都有著唯一的軸標籤 索引值 下面就看看帶有重複索引值的series 1 obj series range 5 index a a b b c 23obj 4 out 33 5a 0 6 a 1 7 b 2 8 b 3 9 c 4 10 dtype int64 索引的is unique屬...