首页 > 其他分享 >查询col1列重复值所在行

查询col1列重复值所在行

时间:2023-08-29 17:03:37浏览次数:45  
标签:ser 重复 查询 df bool test query col1

df_test = pd.DataFrame({'col1': ['A']*2+['B'], 'col2': range(3)})  # 查询col1列重复值所在行
df_test.col1.duplicated()  # 首次出现不算重复
df_test.query("col1.duplicated()")  # 只能筛选出非首次出现的重复值所在行
# 方法一
df_test.duplicated(subset=['col1'], keep=False)  # keep=False 参数表示保留所有重复值所在的行
df_test[df_test.duplicated(subset=['col1'], keep=False)]
# 方法二
df_test.query('''col1 in @df_test.query("col1.duplicated()").col1''')
# 方法三
ser_bool = (df_test.col1.value_counts() > 1)
ser_bool[ser_bool]
df_test.query('''col1 in @ser_bool[@ser_bool].index''')
# 方法四
df_bool = (df_test.col1.value_counts() > 1).reset_index()
df_test.merge(df_bool, left_on='col1', right_on='index', suffixes=('', '_y')).query("col1_y")[df_test.columns]

pandas.DataFrame.duplicated

Determines which duplicates (if any) to mark.

  • first : Mark duplicates as True except for the first occurrence.
  • last : Mark duplicates as True except for the last occurrence.
  • False : Mark all duplicates as True.

标签:ser,重复,查询,df,bool,test,query,col1
From: https://blog.51cto.com/u_16055028/7278011

相关文章

  • 查询lob对象的表和字段
    colownerformata20colobject_idformat99999999colobject_nameformata30colobject_typeformata30colcolumn_nameformata30coltable_nameformata30setlinesize170selecto.owner,o.object_id,o.object_name,o.object_type,l.table_name,l.colum......
  • SqlServer中查询数据库所有表及其数据总条数和占用空间
    1、查询某数据库中的所有数据表SELECTname数据表FROMsysobjectsWHERExtype='u'ORDERBYname2、查询某数据库中的所有数据表及其数据总条数SELECTa.name数据表,b.rows数据总条数FROMsysobjectsASaINNERJOINsysindexesASbONa.id=......
  • 【lc】459. 重复的子字符串
    链接:https://leetcode.cn/problems/repeated-substring-pattern/description/思路:这题其实挺有意思的,我一开始寻思按照字符读到一个dict里统计各个字符的个数,讲道理每个字符的个数是相同的才对。(我承认我傻了,忽略了aab这种情况)然后我就开始想,如果能行,那原串肯定是子串的n倍。......
  • Mysql查询性能优化相关
    慢查询基本原因访问的数据太多分析是否检索了过多的数据。mysql服务器是否在分析大量超过需要的数据。注意事项尽量不用select*分页查询(mysql从设计上让连接和断开连接都是很轻量级的。运行多个小查询不是大问题)缓存效率高减少锁竞争查询的执行基础查询执行......
  • redis高级用法:慢查询、pipline与事务、发布订阅、bitmap位图、HyperLogLog、GEO地理位
    目录一高级用法之慢查询1.1生命周期1.2两个配置1.2.1slowlog-max-len1.2.2slowlog-max-len1.3设置慢查询1.5作用二pipline与事务2.1什么是pipeline(管道)2.2python客户端实现pipline2.3与原生操作对比2.4使用建议2.5原生redis操作操作事务三发布订阅3.1角色3.2模......
  • vue3响应式数据重复
    记一次bug。。由于【甲方负责人】的表单是响应式的,然后直接添加到另一个响应式的数组里了,就会造成【更改表单内容,也会使数组里的值发生变化】解决方法1//添加到列表,做临时显示2constaddresponsible=()=>{3constnewResform={...resform};//添加数组之前创......
  • SQL Server 根据表名查询包含的列名、类型、长度等
      select c.nameas'列名', casewhenc.is_identity=1then'√'else'×'endas'自增', ty.nameas'数据类型', c.max_lengthas'长度', casewhenc.is_nullable=1then'√'else'×&......
  • 百亿数据查询秒级响应,观测体系之日志中心该如何玩转?
    日志是处理生产故障、性能优化、业务分析的重要参考依据,是系统稳定运行不可或缺的一部分。随着业务系统规模急剧膨胀增大,尤其是是微服务架构逐渐普及,一个系统可能涉及多个应用模块与服务实例,传统模式下运维人员去定位问题显得异常困难,效率低下。当服务器资源增加时,各种类型的系统日......
  • Oracle 字符串相似度查询
    Oracle函数: SYS.UTL_MATCH.EDIT_DISTANCE_SIMILARITY(str,patternStr)--Oracle查询字符串相似度函数SELECTDISTINCTe.EQP_GROUP,SYS.UTL_MATCH.EDIT_DISTANCE_SIMILARITY(e.EQP_GROUP,'LARF')xsdFROMIMP_AREA_EQPGROUP_MAPPINGeORDERBYXSDDESC查询结果: ......
  • MySq之一条mysql语句来更新(插入)查询结果
    想起之前没问人家自己那213的做法,想起来都想怎么笑(记录之前困惑的问题解决了的)非常的简单要插入teble1表中的id>100的字段name,address 到table2表insertintotable2(name,address)(selectname,addressfromtable1whereid>100)要查询teble1表中的name=阿呜......