我有一个数据行,其行名为:
rp021047.tot
rp021048.tot
rp021048.L00
rp021048.L01
rp021048.tot
rp021049.tot
rp021050.tot
rp022047.tot
rp022048.tot
rp022049.tot
rp022050.tot
主要兴趣点是以下几行:
rp021048.L00
rp021048.L01
rp021048.tot
这些行的名称完全相同,除了该点之后。对于这样的重复项,我希望仅保留以
.L*
结尾的文件,删除.tot
行。我正在努力想办法做到这一点。我真的很感激人们可能有的任何想法。谢谢
最佳答案
分割您的文件名,然后检查duplicated
有条件
u = s.str.rsplit('.', 1, expand=True)
m = u.duplicated(0) & u[1].eq('tot')
s[~m]
0 rp021047.tot
1 rp021048.tot
2 rp021048.L00
3 rp021048.L01
5 rp021049.tot
6 rp021050.tot
7 rp022047.tot
8 rp022048.tot
9 rp022049.tot
10 rp022050.tot
dtype: object
在这里,行
4
被删除,因为它是重复的文件名,但是具有tot
扩展名。关于python - 如何根据数据框中的相似行(字符串)删除数据框的某些行,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/56739069/