作者razer (都快20年了)
看板Python
标题[问题] 在pandas series中找出数个相同排列
时间Fri Mar 19 08:11:50 2021
各位好
想要请教在假设为
[a,a,b,a,b,c,b,a,b,c,d,b,c,d]
的数列(目前是做成pandas series)中,
想要找出[a,b,c]的所有排列位置时,
有什麽函数可以取用吗?
写了一个比较两个数列的流程,
结果上司说要比较的pattern 不是只有一个
而且会很类似(例如还要找[a,b,a,c]之类的),
所以想要找有没有比较好的方法
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 126.200.117.71 (日本)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Python/M.1616112712.A.115.html
1F:推 melancholy07: 一般的方法好像都是找特定的element,但如果你要找 03/19 09:28
2F:→ melancholy07: 的是连续几个特定元素组成的pattern,我想可以尝试 03/19 09:28
3F:→ melancholy07: 把list转成字串再做搜寻 03/19 09:28
4F:→ razer: 好的,我再来试试看 03/19 13:57
5F:→ razer: 可惜,我的element是不定长度的字串,再拼成总和字串就找 03/19 15:40
6F:→ razer: 不到位置了 03/19 15:40
7F:推 melancholy07: 利用.join(),并让你的字串保持分隔试试?这样同个 03/19 17:21
8F:→ melancholy07: 字串间的元素仍可以用特定字元作分隔,不会混在一 03/19 17:21
9F:→ melancholy07: 起 03/19 17:21
10F:→ razer: 当然join是个好方法,不过假定我用逗号分隔,代表我後面要 03/20 06:53
11F:→ razer: 反算出现在是在哪个逗号後面,然後他是第几个逗号是吗? 03/20 06:53
12F:推 melancholy07: 顺着这个思路,就可以用find找出pattern的index, 03/20 10:56
13F:→ melancholy07: 或利用re套件作更方便的检索了 03/20 10:56