1.去重復:duplicated
import pandas as pd
s = pd.Series([1,1,1,1,2,2,2,3,3,4,4,5,6])
# 通過duplicated判斷是否重復
print(s.duplicated())
# 通過布爾判斷,得到不重復的值
print(s[s.duplicated() == False])
# 移除重復drop_duplicates
s_re = s.drop_duplicates()
print(s_re)
# Dataframe中使用duplicated
df = pd.DataFrame({'key1':['a','a','b','a','b'],
'key2':['a','a','c',5,'c']
})
print('------------df----------------')
print(df)
print('-----------df.duplicated()-----------------') # 第2行與第1行重復了,所以為True,第5行與第3行重復,所以為True
print(df.duplicated())
print('-----------df[\'key1\'].duplicated()-----------------')
print(df['key1'].duplicated())
輸出結果:
2.替換:replace
import pandas as pd
import numpy as np
s = pd.Series(list('aseaasasx'))
print(s.replace('a', np.nan)) # 替換a為np.nan
print(s.replace(['a','s'], np.nan)) # a替換為s,然后再將s替換為np.nan
print(s.replace({'a':'@@@','s':'***'})) # 一次性替換為多個值
輸出結果: