我需要删除单元格中的重复数字和重复单元格中的百分号
我有两个输入:
输入1-
- 51%
- 4% %
- (0.9%)
- 53%
- 44%
- 29%
Name: Paid Loss Ratio , dtype: object
要求的输出1:
- 51
- 4
- -0.9
- 53
- 44
- 29
Name: Paid Loss Ratio , dtype: object
以下脚本适用于这种情况:
f1['付费损失率'].str.split('%').apply(set).str.join('').str.rstrip()
尝试删除重复的“% sign in one cell”
输入2 -
- >
88 %
- >
102 %
- 84 84%
- >
( 0.8 %
- >
93 %
名称:Constant Loss Ratio,dtype:object
要求的输出2:
- 88%
- 102%
- 84%
- -0.8%
- 93%
正在尝试以下操作但无法正常工作:
re.sub(r'([0-9])(.*)\1+', r'\1', str(ab))
尝试删除一个单元格中重复的“84”数字
还有办法合并这两个脚本/模式吗?
最佳答案
您对第一个输入的要求与输出不匹配,因为您似乎只想删除双百分号?如果我是对的,我想你可以使用:
(\S+)(?=\s\1)\s
在线查看demo
示例 Python 脚本可以是:
df = df.replace(r'(\S+)(?=\s\1)\s','', regex=True)
打印:
0 51 %
1 4 %
2 9 %
3 53 %
4 44 %
5 29 %
6 88 %
7 102 %
8 84 %
9 Nan
10 93 %
关于python - pandas 从单元格中删除重复项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62952915/