が含まれている場合、私は下図のように12桁の数字が含まれている大量のデータ列を解析しようとしている数を返すために正規表現を使用して:パンダ重複桁
0 802112134267
1 300949934377
2 300999934377
3 222589009836
4 950279219923
Name: number, dtype: object
私は3またはを持つ任意の数をつかむしたいですより多くの繰り返し文字。行2は4 '9を含み、行3は3' 2を含む。返信したいと思います:
0 None
1 None
2 300999934377
3 222589009836
4 None
Name: number, dtype: object
または切り捨てられた/フィルタリングされたデータフレーム/シリーズで十分です。私はこれは解くを考える
正規表現:「(\ d)は\ 1 {2、}」
はしかし、私は正常シリーズに、この正規表現を適用することができていません。
regex = re.compile('(\d)\1{2,}')
s.apply(lambda x: np.nan if regex.search(x) == None else x)
はすべてNaNを返します。
s.str.extract('(\d)\1{2,}', expand=True)
すべてのNaNを返します。
s.str.contains('(\d)\1{2,}')
はすべて偽を返します。
ご協力いただければ幸いです。私はフォーラムを検索しようとしましたが、うまくいかない例は見つかりませんでした。
WiktorStribiżewの正規表現@おかげ
'r '(\ d)\ 1 {2、}''。 –