この列があり、すべての文字列にanr12
部分文字列があるかどうかを確認したいと思います。これを確認する方法は?そして、すべての部分文字列が同じである場合、この特定の部分文字列を削除するにはどうすればよいですか?
私はあなたがすべてのsをチェックcontains
するall
ためにチェックバイしたいと思いますTrue
そしてそれからstr.replace
:
df = pd.DataFrame({'A':['123anr12', '345anr12']})
print (df)
A
0 123anr12
1 345anr12
if df['A'].str.contains('anr12').all():
df['A'] = df['A'].str.replace('anr12','')
print (df)
A
0 123
1 345
編集1:dictionary
ルックアップに使用できます:
train_df = pd.DataFrame({'477':['123nbf12', '34nbf12'],
'479':['tt1', '32'],
'482':['anr1234', '345anr12a12']})
obj_features = ['477', '479', '482'] #it's column names
substring = ['nbf', 'tt1', 'anr12'] # get rid of 'nbf', 'tt1', 'anr12' substrings
d = dict(zip(obj_features, substring))
print (d)
{'477': 'nbf', '479': 'tt1', '482': 'anr12'}
for k, v in d.items():
if train_df[k].str.contains(v).all():
train_df[k] = train_df[k].str.replace(v,'')
print (train_df)
477 479 482
0 12312 tt1 34
1 3412 32 345a12
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加