十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
前两天处理数据的时候,需要得到两个数据的交集数据,所以要去除数据中非重复部分,只保留数据中的重复部分。
蓬莱ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为成都创新互联公司的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:13518219792(备注:SSL证书合作)期待与您的合作!
网上看了一下大家的教程,大部分都是教去除重复行,很少有说到仅保留重复行的。所以在这里用drop_duplicates这个去重函数来实现这个功能。
drop_duplicates函数介绍 :
data.drop_duplicates(subset=[‘A’,‘B’],keep=‘first’,inplace=True)
#subset对应的值是列名,表示只考虑这两列,将这两列对应值相同的行进行去重。
默认值为subset=None表示考虑所有列。
keep='first’表示保留第一次出现的重复行,是默认值。
keep另外两个取值为"last"和False,分别表示保留最后一次出现的重复行和去除所有重复行。
inplace=True表示直接在原来的DataFrame上删除重复项,而默认值False表示生成一个副本。
要用函数取得数据集data中的重复列,分三个步骤 :
(提前导入pandas模块)
data0_1 = data.drop_duplicates() #保留第一个重复行
data0_2 = data.drop_duplicates(keep=False) #去除所有重复行
data0_3=pd.concat([data0_1,data0_2]).drop_duplicates(keep=False)
#合并起来再去重,只剩下真的重复行。
举例:data中wangwu行和tony行重复,需要把它们两行取出。
第一步:#保留第一个重复行
第二步:#去除所有重复行
第三步:#合并起来再去重
通过以上步骤实现取出数据中的重复行。
DataFrame.drop( labels=None , axis=0 , index=None , columns=None , level=None , inplace=False , errors='raise' )
labels:指定行(或列) 的标签名
axis:'0'删除行,'1'删除列
inplace:是否替换原来的dataframe,默认为'False'。'False':返回一个副本;'True':原dataframe直接被替换(内存值修改)。
参考:
python进行数据处理——pandas的drop函数
pandas.Dataframe.drop-pandas 1.3.5 documentation
题主你好,
你在新建DataFrame的时候已经指定了行索引用a,b,c,d来表示,
所以你在删除的时候,如果要使用index来指定要删除的行,则要使用a,b,c,d其中一个, 如
df.drop('a',axis=0,inplace=True)
或者使用df.tail(1).index来表示倒数第1行:
df.drop(df.tail(1).index,axis=0,inplace=True)
-----
希望可以帮到题主, 欢迎追问.
drop()删除行列的操作,drop函数的axis参数0和1分别代表列和行。
直接采用drop函数即可,设置参数axis=0. 参数axis为0表示在0轴(列)上搜索名字为C的对象,然后删除对象C对应的行。
用drop函数设置参数axis=1. 参数axis为1表示在1轴(行)上搜索名字为col2的对象,然后删除对象col2对应的列。