● 选择题
以下关于DataFrame.duplicated()函数说法错误的是:
A 该函数用于标记dataframe中内容重复的行
B 该函数返回值是一个序列,True表示重复
C 行内容被判定重复时,该行各列的值一定都重复
D keep参数默认取值为"first"
● 问题解析
1.DataFrame.duplicated(subset = None,keep ='first')函数用于找出dataframe的重复行。返回可以正确表示是否为重复行的布尔序列(即非重复项标记为False,重复项标记为True)。则A,B正确。
2.subset参数:列标签(可以是一列,也可以是多列,默认是所有列),可选,仅考虑某些列来标识重复项,默认情况下考虑所有列来标记重复项。C错误,既可以考虑所有列来判断是否重复,也可以只考虑某些列来判断是否重复。
3.keep参数:参数取值包括{'first','last',False},默认为'first'。若取值为first,表示若有重复项,将第一个出现的重复项标记为False,并将其余相同的项标记为True。若取值为last,表示若有重复项,将最后一个出现的重复项标记为False,并将其余相同的项标记为True。若取值为False,表示若有重复项,将所有重复项标记为True。D正确。
● 附图
图1 DataFrame.duplicated()函数不同参数取值对比(1)
图2 DataFrame.duplicated()函数不同参数取值对比(2)
图3 DataFrame.duplicated()函数不同参数取值对比(3)
● 附图代码
import pandas as pd
from pandas import DataFrame
df = pd.DataFrame({'col1': ['一', '一', '二', '二', '三', '四','四'],
'col2': [ 1 , 2 , 1 , 1 , 1 , 1 ,1],
'col3':['AA','BB','CC','DD','EE','FF','FF']})
df
df.duplicated()#取默认参数,基于所有列,keep取first
df.duplicated('col1') #基于col1,keep取first
df.duplicated('col1',keep='last') #基于col1,keep取last
df.duplicated('col1',False) #基于col1,keep取False
df.duplicated(['col1','col2'])#基于col1,col2,keep取first
● 正确答案
C
————————————————
版权声明:本文为CSDN博主「刘经纬老师」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/liujingwei8610/article/details/122795570