ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 名课 - Power BI数据分析与可视化实战 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
Python自动化办公应用大全 Excel 2021函数公式学习大典 Kutools for Office 套件发布 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
楼主: yjfwin

[已解决] 怎么从没有规律的文本中,过滤出现部分相同字符的行,谢谢!

[复制链接]

TA的精华主题

TA的得分主题

发表于 2022-7-4 21:27 | 显示全部楼层
本帖最后由 henry6 于 2022-7-4 21:29 编辑

用PQ试了试,能解决

2022-07-04_212131.png
2022-07-04_212250.png

评分

1

查看全部评分

TA的精华主题

TA的得分主题

 楼主| 发表于 2022-7-4 22:02 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
henry6 发表于 2022-7-4 21:27
用PQ试了试,能解决

感谢回复,PQ还真没用过。。。 实际是只在A列对比的,L和M列都没有的,也可以吗?

TA的精华主题

TA的得分主题

发表于 2022-7-4 22:20 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
yjfwin 发表于 2022-7-4 22:02
感谢回复,PQ还真没用过。。。 实际是只在A列对比的,L和M列都没有的,也可以吗?

不知道你说的LM列指那些,
就是把A列的每一行与其他行比较有没有相同城市,有就提出来是那个城市,在哪一行
然后把重复出现城市的行删除重复项,只留第一次出现的

用PQ就是把A列按空格拆分成单个城市合成一列,与每一行对比。。。。。

评分

1

查看全部评分

TA的精华主题

TA的得分主题

 楼主| 发表于 2022-7-4 22:25 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
henry6 发表于 2022-7-4 22:20
不知道你说的LM列指那些,
就是把A列的每一行与其他行比较有没有相同城市,有就提出来是那个城市,在哪 ...

嗯,就是需要这样的效果,可否把附件传上来? 谢谢!

TA的精华主题

TA的得分主题

发表于 2022-7-5 00:56 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
import pandas as pd
df = pd.read_excel('部分相同.xlsx', sheet_name=1).reset_index()
df1 = df['地区'].str.split(' ', expand=True).reset_index()
df1 = df1.melt(id_vars='index', var_name='行号', value_name='地名')
df2 = df1.groupby('地名').filter(lambda x: len(x) > 1)
df2=df2[['index','地名']]
df=pd.merge(df,df2,on='index',how='left')
df.to_excel('部分相同A.xlsx',index=False)
1.png
2.png
QQ截图20220705004241.png
QQ截图20220705004332.png

部分相同A.rar

7.22 KB, 下载次数: 4

评分

1

查看全部评分

TA的精华主题

TA的得分主题

 楼主| 发表于 2022-7-5 08:51 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
evluan 发表于 2022-7-5 00:56
import pandas as pd
df = pd.read_excel('部分相同.xlsx', sheet_name=1).reset_index()
df1 = df['地区 ...

非常感谢大神的回复,本人python小白,完全看不懂这个。。下载您的附件里面看了,把相同部分的城市给列出来了,麻烦您,能不能把过滤后的数据按原来的顺序,排序出来?最终的目的就是,新排序的每行里都是唯一的没有重复的城市, 非常感谢!

TA的精华主题

TA的得分主题

发表于 2022-7-5 09:12 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
yjfwin 发表于 2022-7-5 08:51
非常感谢大神的回复,本人python小白,完全看不懂这个。。下载您的附件里面看了,把相同部分的城市给列出 ...

排序出来了呀,有个index就是行序号,出来的是新表,vlookup到原表上面取,依据就是index号一样的。

TA的精华主题

TA的得分主题

发表于 2022-7-5 09:16 | 显示全部楼层
evluan 发表于 2022-7-5 09:12
排序出来了呀,有个index就是行序号,出来的是新表,vlookup到原表上面取,依据就是index号一样的。

倒数第二个图里就是结果,index是原表行的序号,行号就是原表列的序号,原表提一个index出来,然后按原表连接就可以merge回去了(vlookup)

TA的精华主题

TA的得分主题

发表于 2022-7-5 09:27 | 显示全部楼层
evluan 发表于 2022-7-5 00:56
import pandas as pd
df = pd.read_excel('部分相同.xlsx', sheet_name=1).reset_index()
df1 = df['地区 ...

按照图片顺序,Excel里分步操作,加一个行序号和列序列号,二维转一维,一维里按地名分组,筛选组内个数大于1的,应该也可以完成。最后合并公式。

TA的精华主题

TA的得分主题

发表于 2022-7-5 09:31 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
yjfwin 发表于 2022-7-5 08:51
非常感谢大神的回复,本人python小白,完全看不懂这个。。下载您的附件里面看了,把相同部分的城市给列出 ...

倒数第二张图filter就是筛选出来的结果,按地名分组,如果重复了,组里地名个数肯定大于1,index就是原表里的行序号,行号是原表拆分单元格对应的列号,按行号和结果就可以vlookup回原表了。

评分

1

查看全部评分

您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2025-12-22 12:25 , Processed in 0.035834 second(s), 8 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表